diff --git a/app/main.bda9be8e4a8b7262835e.css b/app/main.7c2e53863584b575d629.css similarity index 99% rename from app/main.bda9be8e4a8b7262835e.css rename to app/main.7c2e53863584b575d629.css index 5b07a4fe..4199b4c7 100644 --- a/app/main.bda9be8e4a8b7262835e.css +++ b/app/main.7c2e53863584b575d629.css @@ -9742,4 +9742,4 @@ img.logo { .overflow-hidden { overflow: hidden; } -/*# sourceMappingURL=main.bda9be8e4a8b7262835e.css.map*/ \ No newline at end of file +/*# sourceMappingURL=main.7c2e53863584b575d629.css.map*/ \ No newline at end of file diff --git a/app/main.bda9be8e4a8b7262835e.css.map b/app/main.7c2e53863584b575d629.css.map similarity index 58% rename from app/main.bda9be8e4a8b7262835e.css.map rename to app/main.7c2e53863584b575d629.css.map index aec586ec..f817341a 100644 --- a/app/main.bda9be8e4a8b7262835e.css.map +++ b/app/main.7c2e53863584b575d629.css.map @@ -1 +1 @@ -{"version":3,"sources":[],"names":[],"mappings":"","file":"app/main.bda9be8e4a8b7262835e.css","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":[],"names":[],"mappings":"","file":"app/main.7c2e53863584b575d629.css","sourceRoot":""} \ No newline at end of file diff --git a/app/main.bda9be8e4a8b7262835e.js b/app/main.7c2e53863584b575d629.js similarity index 99% rename from app/main.bda9be8e4a8b7262835e.js rename to app/main.7c2e53863584b575d629.js index 72089cd9..ce03fb81 100644 --- a/app/main.bda9be8e4a8b7262835e.js +++ b/app/main.7c2e53863584b575d629.js @@ -1,2 +1,2 @@ -!function(n){function l(l){for(var t,r,i=l[0],a=l[1],s=l[2],c=0,p=[];c-1&&l.indexOf("]")>-1){var u=l.lastIndexOf(".");t=l.substr(0,u>-1?u:l.length)+": "}e.push(t+n)})};for(var u in n.validationErrors)t(u)}return 1===e.length?this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),e[0]):e.length>1&&this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),e,{timeout:5e3*e.length}),e},n}();l.ValidationService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(18);var t=function(){function n(n,l){this.el=n,this.validationService=l}return n.prototype.ngOnChanges=function(n){var l=this;null!=this.appApiAction&&null!=this.appApiAction.then&&(this.el.nativeElement.loading=!0,this.appApiAction.then(function(n){l.el.nativeElement.loading=!1},function(n){l.el.nativeElement.loading=!1,l.validationService.showError(n)}))},n}();l.ApiActionDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.MessagingService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CryptoService=t},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CipherService=t},,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3);var t=function(){function n(n){this.i18nService=n,this.type="info"}return n.prototype.ngOnInit=function(){this.calloutStyle=this.type,"warning"===this.type||"danger"===this.type?("danger"===this.type&&(this.calloutStyle="danger"),void 0===this.title&&(this.title=this.i18nService.t("warning")),void 0===this.icon&&(this.icon="fa-warning")):"error"===this.type?(this.calloutStyle="danger",void 0===this.title&&(this.title=this.i18nService.t("error")),void 0===this.icon&&(this.icon="fa-bolt")):"tip"===this.type&&(this.calloutStyle="success",void 0===this.title&&(this.title=this.i18nService.t("tip")),void 0===this.icon&&(this.icon="fa-lightbulb-o"))},n}();l.CalloutComponent=t},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StateService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(28),r=e(3),i=t.ɵcrt({encapsulation:2,styles:[],data:{}});function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"fa ",e.icon,""))})}function s(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"h3",[["class","callout-heading"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,a)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(4,null,["\n ","\n "]))],function(n,l){n(l,3,0,l.component.icon)},function(n,l){n(l,4,0,l.component.title)})}function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"div",[["role","alert"]],[[8,"className",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,s)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),t.ɵncd(null,0),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,l.component.title)},function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"callout callout-",e.calloutStyle,""))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-callout",[],null,null,null,d,i)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CalloutComponent=i,l.View_CalloutComponent_0=d,l.View_CalloutComponent_Host_0=c;var p=t.ɵccf("app-callout",o.CalloutComponent,c,{type:"type",icon:"icon",title:"title"},{},["*"]);l.CalloutComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(628),u=e(126),o=e(139),r=e(223),i=e(38),a=e(184),s=e(138),d=e(158),c=e(93),p=e(39),f=e(183),v=e(111),h=function(){function n(){this.organization=!1,this.newLineRegex=/(?:\r\n|\r|\n)/,this.passwordFieldNames=["password","pass word","passphrase","pass phrase","pass","code","code word","codeword","secret","secret word","personpwd","key","keyword","key word","keyphrase","key phrase","form_pw","wppassword","pin","pwd","pw","pword","passwd","p","serial","serial#","license key","reg #","passwort"],this.usernameFieldNames=["user","name","user name","username","login name","email","e-mail","id","userid","user id","login","form_loginname","wpname","mail","loginid","login id","log","personlogin","first name","last name","card#","account #","member","member #","nom","benutzername"],this.notesFieldNames=["note","notes","comment","comments","memo","description","free form","freeform","free text","freetext","free","kommentar"],this.uriFieldNames=["url","hyper link","hyperlink","link","host","hostname","host name","server","address","hyper ref","href","web","website","web site","site","web-site","uri","ort","adresse"]}return n.prototype.parseXml=function(n){var l=(new DOMParser).parseFromString(n,"application/xml");return null!=l&&null==l.querySelector("parsererror")?l:null},n.prototype.parseCsv=function(n,l){n=this.splitNewLine(n).join("\n").trim();var e=t.parse(n,{header:l,encoding:"UTF-8",skipEmptyLines:!1});return null!=e.errors&&e.errors.length>0&&e.errors.forEach(function(n){null!=n.row&&console.warn("Error parsing row "+n.row+": "+n.message)}),e.data&&e.data.length>0?e.data:null},n.prototype.parseSingleRowCsv=function(n){if(this.isNullOrWhitespace(n))return null;var l=this.parseCsv(n,!1);return null!=l&&l.length>0&&l[0].length>0?l[0]:null},n.prototype.makeUriArray=function(n){var l=this;if(null==n)return null;if("string"==typeof n){var e=new r.LoginUriView;return e.uri=this.fixUri(n),this.isNullOrWhitespace(e.uri)?null:(e.match=null,[e])}if(n.length>0){var t=[];return n.forEach(function(n){var e=new r.LoginUriView;e.uri=l.fixUri(n),l.isNullOrWhitespace(e.uri)||(e.match=null,t.push(e))}),0===t.length?null:t}return null},n.prototype.fixUri=function(n){return null==n?null:(-1===(n=n.toLowerCase().trim()).indexOf("://")&&n.indexOf(".")>=0&&(n="http://"+n),n.length>1e3?n.substring(0,1e3):n)},n.prototype.nameFromUrl=function(n){var l=i.Utils.getHostname(n);return this.isNullOrWhitespace(l)?null:l.startsWith("www.")?l.replace("www.",""):l},n.prototype.isNullOrWhitespace=function(n){return null==n||"string"!=typeof n||""===n.trim()},n.prototype.getValueOrDefault=function(n,l){return void 0===l&&(l=null),this.isNullOrWhitespace(n)?l:n},n.prototype.splitNewLine=function(n){return n.split(this.newLineRegex)},n.prototype.getCardBrand=function(n){if(this.isNullOrWhitespace(n))return null;var l=new RegExp("^4");return null!=n.match(l)?"Visa":/^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$/.test(n)?"Mastercard":(l=new RegExp("^3[47]"),null!=n.match(l)?"Amex":(l=new RegExp("^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)"),null!=n.match(l)?"Discover":(l=new RegExp("^36"),null!=n.match(l)?"Diners Club":(l=new RegExp("^30[0-5]"),null!=n.match(l)?"Diners Club":(l=new RegExp("^35(2[89]|[3-8][0-9])"),null!=n.match(l)?"JCB":(l=new RegExp("^(4026|417500|4508|4844|491(3|7))"),null!=n.match(l)?"Visa":null))))))},n.prototype.moveFoldersToCollections=function(n){n.folderRelationships.forEach(function(l){return n.collectionRelationships.push(l)}),n.collections=n.folders.map(function(n){var l=new o.CollectionView;return l.name=n.name,l}),n.folderRelationships=[],n.folders=[]},n.prototype.querySelectorDirectChild=function(n,l){var e=this.querySelectorAllDirectChild(n,l);return 0===e.length?null:e[0]},n.prototype.querySelectorAllDirectChild=function(n,l){return Array.from(n.querySelectorAll(l)).filter(function(l){return l.parentNode===n})},n.prototype.initLoginCipher=function(){var n=new u.CipherView;return n.favorite=!1,n.notes="",n.fields=[],n.login=new d.LoginView,n.type=p.CipherType.Login,n},n.prototype.cleanupCipher=function(n){null!=n&&(n.type!==p.CipherType.Login&&(n.login=null),this.isNullOrWhitespace(n.name)&&(n.name="--"),this.isNullOrWhitespace(n.notes)?n.notes=null:n.notes=n.notes.trim(),null!=n.fields&&0===n.fields.length&&(n.fields=null))},n.prototype.processKvp=function(n,l,e){if(!this.isNullOrWhitespace(e))if(this.isNullOrWhitespace(l)&&(l=""),e.length>200||e.trim().search(this.newLineRegex)>-1)null==n.notes&&(n.notes=""),n.notes+=l+": "+this.splitNewLine(e).join("\n")+"\n";else{null==n.fields&&(n.fields=[]);var t=new a.FieldView;t.type=f.FieldType.Text,t.name=l,t.value=e,n.fields.push(t)}},n.prototype.processFolder=function(n,l){var e=n.folders.length,t=!this.isNullOrWhitespace(l),u=t;if(t)for(var o=0;o-1;if(!e&&n.indexOf(".")>-1)n="http://"+n;else if(!e)return null;return l.getUrlObject(n)},l.getUrlObject=function(n){try{if(null!=r)return r.URL?new r.URL(n):r.parse(n);if("function"==typeof URL)return new URL(n);if(null!=window){var l=window.document.createElement("a");return l.href=n,l}}catch(n){}return null},l.inited=!1,l.isNativeScript=!1,l.isNode=!1,l.isBrowser=!0,l.isMobileBrowser=!1,l.global=null,l}();l.Utils=i,i.init()}).call(this,e(124),e(85),e(112).Buffer)},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Login=1]="Login",n[n.SecureNote=2]="SecureNote",n[n.Card=3]="Card",n[n.Identity=4]="Identity"}(l.CipherType||(l.CipherType={}))},,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CollectionService=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(n,l){this.el=n,this.renderer=l}return Object.defineProperty(n.prototype,"appInputVerbatim",{set:function(n){this.disableComplete=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){this.disableComplete&&!this.el.nativeElement.hasAttribute("autocomplete")&&this.renderer.setAttribute(this.el.nativeElement,"autocomplete","off"),this.el.nativeElement.hasAttribute("autocapitalize")||this.renderer.setAttribute(this.el.nativeElement,"autocapitalize","none"),this.el.nativeElement.hasAttribute("autocorrect")||this.renderer.setAttribute(this.el.nativeElement,"autocorrect","none"),this.el.nativeElement.hasAttribute("spellcheck")||this.renderer.setAttribute(this.el.nativeElement,"spellcheck","false"),this.el.nativeElement.hasAttribute("inputmode")||this.renderer.setAttribute(this.el.nativeElement,"inputmode","verbatim")},n}();l.InputVerbatimDirective=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.FolderService=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordGenerationService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SyncService=t},,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StorageService=t},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.TokenService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EnvironmentService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordVerificationRequest=t},,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuthService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){this.environmentUrlsKey=n.environmentUrlsKey,this.disableGaKey=n.disableGaKey,this.disableAddLoginNotificationKey=n.disableAddLoginNotificationKey,this.disableContextMenuItemKey=n.disableContextMenuItemKey,this.disableFaviconKey=n.disableFaviconKey,this.disableAutoTotpCopyKey=n.disableAutoTotpCopyKey,this.enableAutoFillOnPageLoadKey=n.enableAutoFillOnPageLoadKey,this.lockOptionKey=n.lockOptionKey,this.lastActiveKey=n.lastActiveKey,this.neverDomainsKey=n.neverDomainsKey,this.installedVersionKey=n.installedVersionKey,this.localeKey=n.localeKey,this.themeKey=n.themeKey,this.collapsedGroupingsKey=n.collapsedGroupingsKey,this.autoConfirmFingerprints=n.autoConfirmFingerprints,this.dontShowCardsCurrentTab=n.dontShowCardsCurrentTab,this.dontShowIdentitiesCurrentTab=n.dontShowIdentitiesCurrentTab}return n.environmentUrlsKey="environmentUrls",n.disableGaKey="disableGa",n.disableAddLoginNotificationKey="disableAddLoginNotification",n.disableChangedPasswordNotificationKey="disableChangedPasswordNotification",n.disableContextMenuItemKey="disableContextMenuItem",n.disableFaviconKey="disableFavicon",n.disableAutoTotpCopyKey="disableAutoTotpCopy",n.enableAutoFillOnPageLoadKey="enableAutoFillOnPageLoad",n.lockOptionKey="lockOption",n.lastActiveKey="lastActive",n.neverDomainsKey="neverDomains",n.installedVersionKey="installedVersion",n.localeKey="locale",n.themeKey="theme",n.collapsedGroupingsKey="collapsedGroupings",n.autoConfirmFingerprints="autoConfirmFingerprints",n.dontShowCardsCurrentTab="dontShowCardsCurrentTab",n.dontShowIdentitiesCurrentTab="dontShowIdentitiesCurrentTab",n}();l.ConstantsService=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?(n="http://"+n,l=!0):this.imageEnabled&&(l=0===n.indexOf("http")&&n.indexOf(".")>-1),this.imageEnabled&&l)try{this.image=this.iconsUrl+"/"+i.Utils.getHostname(n)+"/icon.png",this.fallbackImage="images/fa-globe.png"}catch(n){}}else this.image=null},n}();l.IconComponent=s},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n){n&&(this.type=n.type)}return Object.defineProperty(n.prototype,"subTitle",{get:function(){return null},enumerable:!0,configurable:!0}),n}();l.SecureNoteView=t},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=e(38),u=function(){function n(n){this.el=n}return Object.defineProperty(n.prototype,"appAutofocus",{set:function(n){this.autofocus=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){!t.Utils.isMobileBrowser&&this.autofocus&&this.el.nativeElement.focus()},n}();l.AutofocusDirective=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(243),o=(e(0),e(769)),r=e(38),i=function(n){function l(l){var e=n.call(this,l)||this;return e.el=null,e}return t(l,n),l.prototype.ngOnDestroy=function(){},l.prototype.show=function(n,l,e){var t=this;void 0===e&&(e=!0),this.parentContainer=l,this.fade=e;var o=this.componentFactoryResolver.resolveComponentFactory(n),i=this.container.createComponent(o),a=Array.from(document.querySelectorAll(".modal"));return a.length>0&&(this.el=u(a[0]),this.el.modal("show"),this.el.on("show.bs.modal",function(){t.onShow.emit()}),this.el.on("shown.bs.modal",function(){t.onShown.emit(),r.Utils.isMobileBrowser||t.el.find("*[appAutoFocus]").focus()}),this.el.on("hide.bs.modal",function(){t.onClose.emit()}),this.el.on("hidden.bs.modal",function(){t.onClosed.emit(),null!=t.parentContainer&&t.parentContainer.clear()})),i.instance},l.prototype.close=function(){null!=this.el&&this.el.modal("hide")},l}(o.ModalComponent);l.ModalComponent=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Authenticator=0]="Authenticator",n[n.Email=1]="Email",n[n.Duo=2]="Duo",n[n.Yubikey=3]="Yubikey",n[n.U2f=4]="U2f",n[n.Remember=5]="Remember",n[n.OrganizationDuo=6]="OrganizationDuo"}(l.TwoFactorProviderType||(l.TwoFactorProviderType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){}return n.prototype.onClick=function(n){n.stopPropagation()},n}();l.StopPropDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(800),o=e(4),r=e(92),i=e(71),a=e(30),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"img",[["alt",""]],[[8,"src",4]],[[null,"error"]],function(n,l,e){var u=!0;"error"===l&&(u=!1!==t.ɵnov(n,1).onError()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.FallbackSrcDirective,[t.ElementRef],{appFallbackSrc:[0,"appFallbackSrc"]},null)],function(n,l){var e=l.component;n(l,1,0,t.ɵinlineInterpolate(1,"",e.fallbackImage,""))},function(n,l){n(l,0,0,l.component.image)})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"fa fa-fw fa-lg ",e.icon,""))})}function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,d)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,c)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,e.imageEnabled&&e.image),n(l,6,0,!e.imageEnabled||!e.image)},null)}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-icon",[],null,null,null,p,s)),t.ɵdid(1,573440,null,0,r.IconComponent,[i.EnvironmentService,a.StateService],null,null)],null,null)}l.RenderType_IconComponent=s,l.View_IconComponent_0=p,l.View_IconComponent_Host_0=f;var v=t.ɵccf("app-vault-icon",r.IconComponent,f,{cipher:"cipher"},{},[]);l.IconComponentNgFactory=v},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CryptoFunctionService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuditService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n){this.expMonth=null,this._brand=null}return Object.defineProperty(n.prototype,"maskedCode",{get:function(){return null!=this.code?"•".repeat(this.code.length):null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"brand",{get:function(){return this._brand},set:function(n){this._brand=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"number",{get:function(){return this._number},set:function(n){this._number=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"subTitle",{get:function(){return null==this._subTitle&&(this._subTitle=this.brand,null!=this.number&&this.number.length>=4&&(null!=this._subTitle&&""!==this._subTitle?this._subTitle+=", ":this._subTitle="",this._subTitle+="*"+this.number.substr(this.number.length-4))),this._subTitle},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"expiration",{get:function(){if(!this.expMonth&&!this.expYear)return null;var n=null!=this.expMonth?("0"+this.expMonth).slice(-2):"__";return n+=" / "+(null!=this.expYear?this.formatYear(this.expYear):"____")},enumerable:!0,configurable:!0}),n.prototype.formatYear=function(n){return 2===n.length?"20"+n:n},n}();l.CardView=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?n[r]=i||null:n[r]=i?new o.CipherString(i):null}},n.prototype.buildDataModel=function(n,l,e,t){for(var u in void 0===t&&(t=[]),e)if(e.hasOwnProperty(u)){var o=n[e[u]||u];t.indexOf(u)>-1?l[u]=null!=o?o:null:l[u]=null!=o?o.encryptedString:null}},n.prototype.decryptObj=function(n,l,e){return t(this,void 0,void 0,function(){var t,o,r;return u(this,function(u){switch(u.label){case 0:for(r in t=[],o=this,l)l.hasOwnProperty(r)&&function(u){var r=Promise.resolve().then(function(){var n=l[u]||u;return o[n]?o[n].decrypt(e):null}).then(function(l){n[u]=l});t.push(r)}(r);return[4,Promise.all(t)];case 1:return u.sent(),[2,n]}})})},n}();l.default=r},,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){this.subscribers=new Map}return n.prototype.send=function(n,l){null==l?this.subscribers.forEach(function(l){l(n)}):this.subscribers.has(l)&&this.subscribers.get(l)(n)},n.prototype.subscribe=function(n,l){this.subscribers.has(n)||this.subscribers.set(n,l)},n.prototype.unsubscribe=function(n){this.subscribers.has(n)&&this.subscribers.delete(n)},n}();l.BroadcasterService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Generic=0]="Generic"}(l.SecureNoteType||(l.SecureNoteType={}))},,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SearchService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(39),u=function(){function n(n){this.favorite=!1,this.organizationUseTotp=!1,this.edit=!1,n&&(this.id=n.id,this.organizationId=n.organizationId,this.folderId=n.folderId,this.favorite=n.favorite,this.organizationUseTotp=n.organizationUseTotp,this.edit=n.edit,this.type=n.type,this.localData=n.localData,this.collectionIds=n.collectionIds,this.revisionDate=n.revisionDate)}return Object.defineProperty(n.prototype,"subTitle",{get:function(){switch(this.type){case t.CipherType.Login:return this.login.subTitle;case t.CipherType.SecureNote:return this.secureNote.subTitle;case t.CipherType.Card:return this.card.subTitle;case t.CipherType.Identity:return this.identity.subTitle}return null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasPasswordHistory",{get:function(){return this.passwordHistory&&this.passwordHistory.length>0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasAttachments",{get:function(){return this.attachments&&this.attachments.length>0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasOldAttachments",{get:function(){if(this.hasAttachments)for(var n=0;n0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"passwordRevisionDisplayDate",{get:function(){return null==this.login?null:null==this.login.password||""===this.login.password?null:this.login.passwordRevisionDate},enumerable:!0,configurable:!0}),n}();l.CipherView=u},,,,,,,,,,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]1&&(e=this.getFirstLetters(t,this.charCount)),null==e&&(e=t.substr(0,this.charCount)),r=this.getCharText(e),i=this.stringToColor(t),(a=this.getSvg(this.size,i)).appendChild(r),s=window.document.createElement("div").appendChild(a).outerHTML,d=window.btoa(unescape(encodeURIComponent(s))),this.src="data:image/svg+xml;base64,"+d,u.label=4;case 4:return[2]}})})},n.prototype.stringToColor=function(n){for(var l=0,e=0;e>8*e&255).toString(16)).substr(-2)}return t},n.prototype.getFirstLetters=function(n,l){var e=n.split(" ");if(e.length>1){for(var t="",u=0;u0},enumerable:!0,configurable:!0}),n}();l.LoginView=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3),e(9);var t={stripeTest:"pk_test_KPoCfZXu7mznb9uSCPZ2JpTD",stripeLive:"pk_live_bpN0P37nMxrMQkcaHXtAybJk",btSandbox:"sandbox_r72q8jq6_9pnxkwm75f87sdc2",btProduction:"production_qfbsv8kc_njj2zjtyngtjmbjd"},u=function(){function n(n,l){var e=this;this.platformUtilsService=l,this.showOptions=!0,this.method="card",this.hideBank=!1,this.hidePaypal=!1,this.card={number:null,exp_month:null,exp_year:null,address_country:"",address_zip:null},this.bank={routing_number:null,account_number:null,account_holder_name:null,account_holder_type:"",currency:"USD",country:"US"},this.btInstance=null,this.stripeScript=window.document.createElement("script"),this.stripeScript.src="https://js.stripe.com/v2/",this.stripeScript.async=!0,this.stripeScript.onload=function(){window.Stripe.setPublishableKey(e.platformUtilsService.isDev()?t.stripeTest:t.stripeLive)},this.btScript=window.document.createElement("script"),this.btScript.src="scripts/dropin.js",this.btScript.async=!0,this.cardExpMonthOptions=[{name:"-- "+n.t("select")+" --",value:null},{name:"01 - "+n.t("january"),value:"01"},{name:"02 - "+n.t("february"),value:"02"},{name:"03 - "+n.t("march"),value:"03"},{name:"04 - "+n.t("april"),value:"04"},{name:"05 - "+n.t("may"),value:"05"},{name:"06 - "+n.t("june"),value:"06"},{name:"07 - "+n.t("july"),value:"07"},{name:"08 - "+n.t("august"),value:"08"},{name:"09 - "+n.t("september"),value:"09"},{name:"10 - "+n.t("october"),value:"10"},{name:"11 - "+n.t("november"),value:"11"},{name:"12 - "+n.t("december"),value:"12"}],this.cardExpYearOptions=[{name:"-- "+n.t("select")+" --",value:null}];for(var u=(new Date).getFullYear(),o=u;o-1&&window.document.body.removeChild(n)}),!this.hidePaypal){window.document.head.removeChild(this.btScript);var n=window.document.head.querySelector("#braintree-dropin-stylesheet");null!=n&&window.document.head.removeChild(n)}},n.prototype.changeMethod=function(){var n=this;"paypal"===this.method?window.setTimeout(function(){window.braintree.dropin.create({authorization:n.platformUtilsService.isDev()?t.btSandbox:t.btProduction,container:"#bt-dropin-container",paymentOptionPriority:["paypal"],paypal:{flow:"vault",buttonStyle:{label:"pay",size:"medium",shape:"pill",color:"blue"}}},function(l,e){null==l?n.btInstance=e:console.error(l)})},250):this.btInstance=null},n.prototype.createPaymentToken=function(){var n=this;return new Promise(function(l,e){if("paypal"===n.method)n.btInstance.requestPaymentMethod().then(function(n){l(n.nonce)}).catch(function(n){e(n.message)});else if("card"===n.method||"bank"===n.method){var t="card"===n.method?window.Stripe.card:window.Stripe.bankAccount,u="card"===n.method?n.card:n.bank;t.createToken(u,function(n,t){200===n&&null!=t.id?l(t.id):null!=t.error?e(t.error.message):e()})}})},n.prototype.getCountry=function(){return this.card.address_country},n}();l.PaymentComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(39),u=e(564),o=e(565),r=e(566),i=e(567),a=e(568),s=e(570),d=e(571),c=function(){return function(n,l,e){var c=this;if(null!=n){switch(this.id=n.id,this.organizationId=n.organizationId,this.folderId=n.folderId,this.userId=l,this.edit=n.edit,this.organizationUseTotp=n.organizationUseTotp,this.favorite=n.favorite,this.revisionDate=n.revisionDate,this.type=n.type,this.name=n.name,this.notes=n.notes,this.collectionIds=null!=e?e:n.collectionIds,this.type){case t.CipherType.Login:this.login=new a.LoginData(n.login);break;case t.CipherType.SecureNote:this.secureNote=new d.SecureNoteData(n.secureNote);break;case t.CipherType.Card:this.card=new o.CardData(n.card);break;case t.CipherType.Identity:this.identity=new i.IdentityData(n.identity)}null!=n.fields&&(this.fields=[],n.fields.forEach(function(n){c.fields.push(new r.FieldData(n))})),null!=n.attachments&&(this.attachments=[],n.attachments.forEach(function(n){c.attachments.push(new u.AttachmentData(n))})),null!=n.passwordHistory&&(this.passwordHistory=[],n.passwordHistory.forEach(function(n){c.passwordHistory.push(new s.PasswordHistoryData(n))}))}}}();l.CipherData=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.id,this.organizationId=n.organizationId,this.name=n.name,this.readOnly=n.readOnly}}();l.CollectionData=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?(s=[],[4,this.attachments.reduce(function(n,l){return n.then(function(){return l.decrypt(i)}).then(function(n){s.push(n)})},Promise.resolve())]):[3,13];case 12:o.sent(),n.attachments=s,o.label=13;case 13:return null!=this.fields&&this.fields.length>0?(d=[],[4,this.fields.reduce(function(n,l){return n.then(function(){return l.decrypt(i)}).then(function(n){d.push(n)})},Promise.resolve())]):[3,15];case 14:o.sent(),n.fields=d,o.label=15;case 15:return null!=this.passwordHistory&&this.passwordHistory.length>0?(c=[],[4,this.passwordHistory.reduce(function(n,l){return n.then(function(){return l.decrypt(i)}).then(function(n){c.push(n)})},Promise.resolve())]):[3,17];case 16:o.sent(),n.passwordHistory=c,o.label=17;case 17:return[2,n]}})})},l.prototype.toCipherData=function(n){var l=new i.CipherData;switch(l.id=this.id,l.organizationId=this.organizationId,l.folderId=this.folderId,l.userId=null!=this.organizationId?n:null,l.edit=this.edit,l.organizationUseTotp=this.organizationUseTotp,l.favorite=this.favorite,l.revisionDate=null!=this.revisionDate?this.revisionDate.toISOString():null,l.type=this.type,l.collectionIds=this.collectionIds,this.buildDataModel(this,l,{name:null,notes:null}),l.type){case r.CipherType.Login:l.login=this.login.toLoginData();break;case r.CipherType.SecureNote:l.secureNote=this.secureNote.toSecureNoteData();break;case r.CipherType.Card:l.card=this.card.toCardData();break;case r.CipherType.Identity:l.identity=this.identity.toIdentityData()}return null!=this.fields&&(l.fields=[],this.fields.forEach(function(n){l.fields.push(n.toFieldData())})),null!=this.attachments&&(l.attachments=[],this.attachments.forEach(function(n){l.attachments.push(n.toAttachmentData())})),null!=this.passwordHistory&&(l.passwordHistory=[],this.passwordHistory.forEach(function(n){l.passwordHistory.push(n.toPasswordHistoryData())})),l},l}(c.default);l.Cipher=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(3);var t=e(181),u=e(851),o=function(){function n(n){this.i18nService=n}return n.prototype.getDefaultDateFilters=function(){var n=new Date,l=new Date(n.getFullYear(),n.getMonth(),n.getDate(),23,59);n.setDate(n.getDate()-30);var e=new Date(n.getFullYear(),n.getMonth(),n.getDate(),0,0);return[this.toDateTimeLocalString(e),this.toDateTimeLocalString(l)]},n.prototype.formatDateFilters=function(n,l){var e=new Date(n),t=new Date(l+":59.999");if(isNaN(e.getTime())||isNaN(t.getTime())||t"+e+"";var t=this.makeAnchor(e);return t.setAttribute("href","#/organizations/"+n.organizationId+"/vault?search="+e+"&viewEvents="+n.cipherId),t.outerHTML},n.prototype.formatGroupId=function(n){var l=this.getShortId(n.groupId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/groups?search="+l),e.outerHTML},n.prototype.formatCollectionId=function(n){var l=this.getShortId(n.collectionId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/collections?search="+l),e.outerHTML},n.prototype.formatOrgUserId=function(n){var l=this.getShortId(n.organizationUserId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/people?search="+l+"&viewEvents="+n.organizationUserId),e.outerHTML},n.prototype.makeAnchor=function(n){var l=document.createElement("a");return l.title=this.i18nService.t("view"),l.innerHTML=""+n+"",l},n.prototype.getShortId=function(n){return n.substring(0,8)},n.prototype.toDateTimeLocalString=function(n){return n.getFullYear()+"-"+this.pad(n.getMonth()+1)+"-"+this.pad(n.getDate())+"T"+this.pad(n.getHours())+":"+this.pad(n.getMinutes())},n.prototype.pad=function(n){var l=Math.floor(Math.abs(n));return(l<10?"0":"")+l},n}();l.EventService=o;var r=function(){return function(){}}();l.EventInfo=r;var i=function(){return function(){this.cipherInfo=!0}}();l.EventOptions=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Owner=0]="Owner",n[n.Admin=1]="Admin",n[n.User=2]="User",n[n.Manager=3]="Manager"}(l.OrganizationUserType||(l.OrganizationUserType={}))},,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";var t,u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]t){if(o===r.TwoFactorProviderType.U2f&&!n)return;e=o,t=i.priority}}),e},n.prototype.makePreloginKey=function(n,l){return u(this,void 0,void 0,function(){var e,t;return o(this,function(u){switch(u.label){case 0:l=l.trim().toLowerCase(),this.kdf=null,this.kdfIterations=null,u.label=1;case 1:return u.trys.push([1,3,,4]),[4,this.apiService.postPrelogin(new d.PreloginRequest(l))];case 2:return null!=(e=u.sent())&&(this.kdf=e.kdf,this.kdfIterations=e.kdfIterations),[3,4];case 3:if(null==(t=u.sent())||404!==t.statusCode)throw t;return[3,4];case 4:return[2,this.cryptoService.makeKey(n,l,this.kdf,this.kdfIterations)]}})})},n.prototype.logInHelper=function(n,l,e,t,d,p){return u(this,void 0,void 0,function(){var u,f,v,h,g,m,y,C,b,w;return o(this,function(o){switch(o.label){case 0:return[4,this.tokenService.getTwoFactorToken(n)];case 1:return u=o.sent(),[4,this.appIdService.getAppId()];case 2:return f=o.sent(),v=new a.DeviceRequest(f,this.platformUtilsService),h=null!=d&&null!=t?new c.TokenRequest(n,l,t,d,p,v):null!=u?new c.TokenRequest(n,l,r.TwoFactorProviderType.Remember,u,!1,v):new c.TokenRequest(n,l,null,null,!1,v),[4,this.apiService.postIdentityToken(h)];case 3:return g=o.sent(),this.clearState(),(m=new i.AuthResult).twoFactor=!g.accessToken,m.twoFactor?(y=g,this.email=n,this.masterPasswordHash=l,this.key=this.setCryptoKeys?e:null,this.twoFactorProviders=y.twoFactorProviders2,m.twoFactorProviders=y.twoFactorProviders2,[2,m]):(null!=(C=g).twoFactorToken&&this.tokenService.setTwoFactorToken(C.twoFactorToken,n),[4,this.tokenService.setTokens(C.accessToken,C.refreshToken)]);case 4:return o.sent(),[4,this.userService.setInformation(this.tokenService.getUserId(),this.tokenService.getEmail(),this.kdf,this.kdfIterations)];case 5:return o.sent(),this.setCryptoKeys?[4,this.cryptoService.setKey(e)]:[3,15];case 6:return o.sent(),[4,this.cryptoService.setKeyHash(l)];case 7:return o.sent(),[4,this.cryptoService.setEncKey(C.key)];case 8:if(o.sent(),null!=C.privateKey)return[3,13];o.label=9;case 9:return o.trys.push([9,12,,13]),[4,this.cryptoService.makeKeyPair()];case 10:return b=o.sent(),[4,this.apiService.postAccountKeys(new s.KeysRequest(b[0],b[1].encryptedString))];case 11:return o.sent(),C.privateKey=b[1].encryptedString,[3,13];case 12:return w=o.sent(),console.error(w),[3,13];case 13:return[4,this.cryptoService.setEncPrivateKey(C.privateKey)];case 14:o.sent(),o.label=15;case 15:return this.messagingService.send("loggedIn"),[2,m]}})})},n.prototype.clearState=function(){this.email=null,this.masterPasswordHash=null,this.twoFactorProviders=null,this.selectedTwoFactorProviderType=null},n}();l.AuthService=p},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(0),o=(e(43),e(55),e(67),e(8),function(n){function l(l,e,t,o){var r=n.call(this,l,e,t,o)||this;return r.onSearchTextChanged=new u.EventEmitter,r.searchText="",r.searchPlaceholder=null,r}return t(l,n),l.prototype.searchTextChanged=function(){this.onSearchTextChanged.emit(this.searchText)},l}(e(798).GroupingsComponent));l.GroupingsComponent=o},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]500?500:this.ciphers.length,e=0;e0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]4?(l=Math.floor(this.totpCode.length/2),this.totpCodeFormatted=this.totpCode.substring(0,l)+" "+this.totpCode.substring(l)):this.totpCodeFormatted=this.totpCode:(this.totpCodeFormatted=null,this.totpInterval&&window.clearInterval(this.totpInterval)),[2]}})})},l.prototype.totpTick=function(n){return u(this,void 0,void 0,function(){var l,e;return o(this,function(t){switch(t.label){case 0:return l=Math.round((new Date).getTime()/1e3),e=l%n,this.totpSec=n-e,this.totpDash=+(Math.round(78.6/n*e+"e+2")+"e-2"),this.totpLow=this.totpSec<=7,0!==e?[3,2]:[4,this.totpUpdateCode()];case 1:t.sent(),t.label=2;case 2:return[2]}})})},l}(e(803).AddEditComponent));l.AddEditComponent=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Invited=0]="Invited",n[n.Accepted=1]="Accepted",n[n.Confirmed=2]="Confirmed"}(l.OrganizationUserStatusType||(l.OrganizationUserStatusType={}))},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0))return[3,4];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,this.getFileContents(e[0])];case 2:return null!=(o=u.sent())&&(t=o),[3,4];case 3:return u.sent(),[3,4];case 4:if(null==t||""===t)return this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("selectFile")),[2];u.label=5;case 5:return u.trys.push([5,7,,8]),this.formPromise=this.importService.import(n,t,this.organizationId),[4,this.formPromise];case 6:return null!=(r=u.sent())?(this.error(r),[2]):(this.analytics.eventTrack.next({action:"Imported Data",properties:{label:this.format}}),this.toasterService.popAsync("success",null,this.i18nService.t("importSuccess")),this.router.navigate(this.successNavigate),[3,8]);case 7:return u.sent(),[3,8];case 8:return[2]}})})},n.prototype.getFormatInstructionTitle=function(){var n=this;if(null==this.format)return null;var l=this.featuredImportOptions.concat(this.importOptions).filter(function(l){return l.id===n.format});return l.length>0?this.i18nService.t("instructionsFor",l[0].name):null},n.prototype.setImportOptions=function(){this.featuredImportOptions=[{id:null,name:"-- "+this.i18nService.t("select")+" --"}].concat(this.importService.featuredImportOptions),this.importOptions=this.importService.regularImportOptions},n.prototype.error=function(n){this.analytics.eventTrack.next({action:"Import Data Failed",properties:{label:this.format}}),this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),n.message)},n.prototype.getFileContents=function(n){var l=this;return new Promise(function(e,t){var u=new FileReader;u.readAsText(n,"utf-8"),u.onload=function(u){if("lastpasscsv"===l.format&&"text/html"===n.type){var o=(new DOMParser).parseFromString(u.target.result,"text/html").querySelector("pre");return null!=o?void e(o.textContent):void t()}e(u.target.result)},u.onerror=function(){t()}})},n}();l.ImportComponent=o},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(21),e(226),e(3),e(9);var u=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return t(l,n),l.prototype.saved=function(){n.prototype.saved.call(this),this.masterPassword=null,this.platformUtilsService.showToast("success",null,this.i18nService.t("exportSuccess"))},l}(e(837).ExportComponent);l.ExportComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]1}),this.ciphers=e,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(227).CipherReportComponent);l.ReusedPasswordsReportComponent=i},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?o.concat(n.login.username.substr(0,i).trim().toLowerCase().split(/[^A-Za-z0-9]/)).filter(function(n){return n.length>=3}):n.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/).filter(function(n){return n.length>=3})}var a=e.passwordGenerationService.passwordStrength(n.login.password,o.length>0?o:null);e.passwordStrengthCache.set(u,a.score)}var s=e.passwordStrengthCache.get(u);null!=s&&s<=3&&(e.passwordStrengthMap.set(n.id,e.scoreKey(s)),l.push(n))}}),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l.prototype.scoreKey=function(n){switch(n){case 4:return["strong","success"];case 3:return["good","primary"];case 2:return["weak","warning"];default:return["veryWeak","danger"]}},l}(e(227).CipherReportComponent);l.WeakPasswordsReportComponent=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(l.push(n),t.exposedPasswordMap.set(n.id,e))});e.push(u)}}),[4,Promise.all(e)];case 2:return u.sent(),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(227).CipherReportComponent);l.ExposedPasswordsReportComponent=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?[4,this.getAllCiphers()]:[3,6];case 4:return n=o.sent(),l=[],e=[],t=new Map,n.forEach(function(n){if(n.type===r.CipherType.Login&&(null==n.login.totp||""===n.login.totp)&&n.login.hasUris)for(var e=0;e0?[2]:[4,fetch(new Request("https://twofactorauth.org/data.json"))];case 1:if(200!==(n=o.sent()).status)throw new Error;return[4,n.json()];case 2:for(e in l=o.sent())if(l.hasOwnProperty(e))for(u in t=l[e])t.hasOwnProperty(u)&&(r=t[u]).tfa&&null!=r.url&&null!=(a=i.Utils.getHostname(r.url))&&this.services.set(a,r.doc);return[2]}})})},l}(e(227).CipherReportComponent);l.InactiveTwoFactorReportComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(){}return n.prototype.transform=function(n,l,e,t,u){return null==n||0===n.length?[]:null==l||l.length<2?n:(l=l.trim().toLowerCase(),n.filter(function(n){return null!=e&&null!=n[e]&&n[e].toString().toLowerCase().indexOf(l)>-1||(null!=t&&null!=n[t]&&n[t].toString().toLowerCase().indexOf(l)>-1||null!=u&&null!=n[u]&&n[u].toString().toLowerCase().indexOf(l)>-1)}))},n}();l.SearchPipe=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.id=n,this.readOnly=l}}();l.SelectionReadOnlyRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.readOnly=n.ReadOnly}}();l.SelectionReadOnlyResponse=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.NotificationsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SettingsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(9);var t=function(){function n(n){this.platformUtilsService=n}return n.prototype.ngOnInit=function(){this.version=this.platformUtilsService.getApplicationVersion(),document.body.classList.add("layout_frontend")},n.prototype.ngOnDestroy=function(){document.body.classList.remove("layout_frontend")},n}();l.FrontendLayoutComponent=t},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(this.email=t.email),null!=t.premium?this.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=t.org&&this.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:t.org}}),[4,n.prototype.ngOnInit.call(this)];case 1:return e.sent(),l.unsubscribe(),[2]}})})}),[2]})})},l.prototype.goAfterLogIn=function(){return u(this,void 0,void 0,function(){var n,l;return o(this,function(e){switch(e.label){case 0:return[4,this.stateService.get("orgInvitation")];case 1:return null==(n=e.sent())?[3,2]:(this.router.navigate(["accept-organization"],{queryParams:n}),[3,6]);case 2:return[4,this.stateService.get("loginRedirect")];case 3:return null==(l=e.sent())?[3,5]:(this.router.navigate([l.route],{queryParams:l.qParams}),[4,this.stateService.remove("loginRedirect")]);case 4:return e.sent(),[3,6];case 5:this.router.navigate([this.successRoute]),e.label=6;case 6:return[2]}})})},l}(e(757).LoginComponent);l.LoginComponent=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n.email=e.email),null!=e.premium?n.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=e.org&&(n.showCreateOrgMessage=!0,n.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:e.org}})),l.unsubscribe()})},l}(e(777).RegisterComponent);l.RegisterComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.PBKDF2_SHA256=0]="PBKDF2_SHA256"}(l.KdfType||(l.KdfType={}))},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(10),e(5),e(3),e(9);var u=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u)||this}return t(l,n),l}(e(780).HintComponent);l.HintComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1})];case 1:return l.sent(),this.clearFilters(),this.collectionId=n,this.go(),[2]}})})},n.prototype.filterSearchText=function(n){this.ciphersComponent.searchText=n,this.ciphersComponent.search(200)},n.prototype.editCipherAttachments=function(n){return t(this,void 0,void 0,function(){var l,e,r,i,s,d=this;return u(this,function(c){switch(c.label){case 0:return[4,this.userService.canAccessPremium()];case 1:return l=c.sent(),null!=n.organizationId||l?[3,2]:(this.messagingService.send("premiumRequired"),[2]);case 2:return null==n.organizationId?[3,4]:[4,this.userService.getOrganization(n.organizationId)];case 3:if(null!=(e=c.sent())&&(null==e.maxStorageGb||0===e.maxStorageGb))return this.messagingService.send("upgradeOrganization",{organizationId:n.organizationId}),[2];c.label=4;case 4:return null!=this.modal&&this.modal.close(),r=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.attachmentsModalRef.createComponent(r).instance,(i=this.modal.show(a.AttachmentsComponent,this.attachmentsModalRef)).cipherId=n.id,s=!1,i.onUploadedAttachment.subscribe(function(){return s=!0}),i.onDeletedAttachment.subscribe(function(){return s=!0}),i.onReuploadedAttachment.subscribe(function(){return s=!0}),this.modal.onClosed.subscribe(function(){return t(d,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal=null,s?[4,this.ciphersComponent.refresh()]:[3,2];case 1:n.sent(),n.label=2;case 2:return s=!1,[2]}})})}),[2]}})})},n.prototype.shareCipher=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.shareModalRef.createComponent(e).instance;var r=this.modal.show(v.ShareComponent,this.shareModalRef);r.cipherId=n.id,r.onSharedCipher.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})},n.prototype.editCipherCollections=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var r=this.modal.show(p.CollectionsComponent,this.collectionsModalRef);r.cipherId=n.id,r.onSavedCollections.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})},n.prototype.addFolder=function(){return t(this,void 0,void 0,function(){var n,l,e=this;return u(this,function(r){return null!=this.modal&&this.modal.close(),n=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.folderAddEditModalRef.createComponent(n).instance,(l=this.modal.show(f.FolderAddEditComponent,this.folderAddEditModalRef)).folderId=null,l.onSavedFolder.subscribe(function(){return t(e,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.groupingsComponent.loadFolders()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){e.modal=null}),[2]})})},n.prototype.editFolder=function(n){return t(this,void 0,void 0,function(){var l,e,r=this;return u(this,function(i){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.folderAddEditModalRef.createComponent(l).instance,(e=this.modal.show(f.FolderAddEditComponent,this.folderAddEditModalRef)).folderId=n,e.onSavedFolder.subscribe(function(){return t(r,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.groupingsComponent.loadFolders()];case 1:return n.sent(),[2]}})})}),e.onDeletedFolder.subscribe(function(){return t(r,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.groupingsComponent.loadFolders()];case 1:return n.sent(),[4,this.filterFolder("none")];case 2:return n.sent(),this.groupingsComponent.selectedFolderId=null,[2]}})})}),this.modal.onClosed.subscribe(function(){r.modal=null}),[2]})})},n.prototype.addCipher=function(){var n=this,l=this.editCipher(null);if(l.type=this.type,l.folderId="none"===this.folderId?null:this.folderId,null!=this.collectionId){var e=this.groupingsComponent.collections.filter(function(l){return l.id===n.collectionId});e.length>0&&(l.organizationId=e[0].organizationId,l.collectionIds=[this.collectionId])}},n.prototype.editCipher=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var r=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return r.cipherId=null==n?null:n.id,r.onSavedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),r.onDeletedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){l.modal=null}),r},n.prototype.bulkDelete=function(){var n=this,l=this.ciphersComponent.getSelectedIds();if(0!==l.length){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.bulkDeleteModalRef.createComponent(e).instance;var r=this.modal.show(s.BulkDeleteComponent,this.bulkDeleteModalRef);r.cipherIds=l,r.onDeleted.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){n.modal=null})}else this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nothingSelected"))},n.prototype.bulkShare=function(){var n=this,l=this.ciphersComponent.getSelected();if(0!==l.length){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.bulkShareModalRef.createComponent(e).instance;var r=this.modal.show(c.BulkShareComponent,this.bulkShareModalRef);r.ciphers=l,r.onShared.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})}else this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nothingSelected"))},n.prototype.bulkMove=function(){var n=this,l=this.ciphersComponent.getSelectedIds();if(0!==l.length){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.bulkMoveModalRef.createComponent(e).instance;var r=this.modal.show(d.BulkMoveComponent,this.bulkMoveModalRef);r.cipherIds=l,r.onMoved.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){n.modal=null})}else this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nothingSelected"))},n.prototype.selectAll=function(n){this.ciphersComponent.selectAll(n)},n.prototype.updateKey=function(){var n=this;null!=this.modal&&this.modal.close();var l=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.updateKeyModalRef.createComponent(l).instance,this.modal.show(r.UpdateKeyComponent,this.updateKeyModalRef),this.modal.onClosed.subscribe(function(){n.modal=null})},n.prototype.clearFilters=function(){this.folderId=null,this.collectionId=null,this.favorites=!1,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={favorites:!!this.favorites||null,type:this.type,folderId:this.folderId,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=h},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(l){var e=n.call(this,l)||this;return e.id=l.id,e}return t(l,n),l}(e(182).CipherRequest);l.CipherWithIdRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.name=n.name?n.name.encryptedString:null}}();l.FolderRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Domain=0]="Domain",n[n.Host=1]="Host",n[n.StartsWith=2]="StartsWith",n[n.Exact=3]="Exact",n[n.RegularExpression=4]="RegularExpression",n[n.Never=5]="Never"}(l.UriMatchType||(l.UriMatchType={}))},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.viewEvents(o[0]),e.unsubscribe(),[2]}})})}),[2]}})})})},n.prototype.ngOnDestroy=function(){this.broadcasterService.unsubscribe("OrgVaultComponent")},n.prototype.clearGroupingFilters=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchVault"),[4,this.ciphersComponent.applyFilter()];case 1:return n.sent(),this.clearFilters(),this.go(),[2]}})})},n.prototype.filterCipherType=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchType"),e=function(l){return l.type===n},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.type=n,this.go(),[2]}})})},n.prototype.filterCollection=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchCollection"),e=function(l){return"unassigned"===n?null==l.collectionIds||0===l.collectionIds.length:null!=l.collectionIds&&l.collectionIds.indexOf(n)>-1},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.collectionId=n,this.go(),[2]}})})},n.prototype.filterSearchText=function(n){this.ciphersComponent.searchText=n,this.ciphersComponent.search(200)},n.prototype.editCipherAttachments=function(n){var l=this;if(null!=this.organization.maxStorageGb&&0!==this.organization.maxStorageGb){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.attachmentsModalRef.createComponent(e).instance;var r=this.modal.show(a.AttachmentsComponent,this.attachmentsModalRef);r.organization=this.organization,r.cipherId=n.id;var i=!1;r.onUploadedAttachment.subscribe(function(){return i=!0}),r.onDeletedAttachment.subscribe(function(){return i=!0}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal=null,i?[4,this.ciphersComponent.refresh()]:[3,2];case 1:n.sent(),n.label=2;case 2:return i=!1,[2]}})})})}else this.messagingService.send("upgradeOrganization",{organizationId:n.organizationId})},n.prototype.editCipherCollections=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var r=this.modal.show(s.CollectionsComponent,this.collectionsModalRef);this.organization.isAdmin&&(r.collectionIds=n.collectionIds,r.collections=this.groupingsComponent.collections.filter(function(n){return!n.readOnly})),r.organization=this.organization,r.cipherId=n.id,r.onSavedCollections.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})},n.prototype.addCipher=function(){var n=this.editCipher(null);n.organizationId=this.organization.id,n.type=this.type,this.organization.isAdmin&&(n.collections=this.groupingsComponent.collections.filter(function(n){return!n.readOnly})),null!=this.collectionId&&(n.collectionIds=[this.collectionId])},n.prototype.editCipher=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var r=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return r.organization=this.organization,r.cipherId=null==n?null:n.id,r.onSavedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),r.onDeletedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){l.modal=null}),r},n.prototype.viewEvents=function(n){return t(this,void 0,void 0,function(){var l,e,t=this;return u(this,function(u){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.eventsModalRef.createComponent(l).instance,(e=this.modal.show(r.EntityEventsComponent,this.eventsModalRef)).name=n.name,e.organizationId=this.organization.id,e.entityId=n.id,e.showUser=!0,e.entity="cipher",this.modal.onClosed.subscribe(function(){t.modal=null}),[2]})})},n.prototype.clearFilters=function(){this.collectionId=null,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={type:this.type,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?this.events=this.events.concat(o):this.events=o,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EntityEventsComponent=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&this.collections.splice(l,1)},n}();l.CollectionsComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&l.forEach(function(l){var e=n.data.filter(function(n){return n.id===l});null!=e&&e.length>0&&(e[0].checked=!0)}),[3,5];case 3:return"collection"!==this.entity?[3,5]:[4,this.apiService.getCollectionUsers(this.organizationId,this.entityId)];case 4:null!=(l=t.sent())&&n.data.length>0&&l.forEach(function(l){var e=n.data.filter(function(n){return!n.accessAll&&n.id===l.id});null!=e&&e.length>0&&(e[0].checked=!0,e[0].readOnly=l.readOnly)}),t.label=5;case 5:return this.allUsers.forEach(function(n){"collection"===e.entity&&n.accessAll&&(n.checked=!0),n.checked&&e.selectedCount++}),[2]}})})},n.prototype.check=function(n){"collection"===this.entity&&n.accessAll||(n.checked=!n.checked,this.selectedChanged(n))},n.prototype.selectedChanged=function(n){n.checked?this.selectedCount++:("collection"===this.entity&&(n.readOnly=!1),this.selectedCount--)},n.prototype.filterSelected=function(n){this.showSelected=n},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return l.trys.push([0,2,,3]),"group"===this.entity?(n=this.users.filter(function(n){return n.checked}).map(function(n){return n.id}),this.formPromise=this.apiService.putGroupUsers(this.organizationId,this.entityId,n)):(n=this.users.filter(function(n){return n.checked&&!n.accessAll}).map(function(n){return new a.SelectionReadOnlyRequest(n.id,!!n.readOnly)}),this.formPromise=this.apiService.putCollectionUsers(this.organizationId,this.entityId,n)),[4,this.formPromise];case 1:return l.sent(),this.analytics.eventTrack.next({action:"group"===this.entity?"Edited Group Users":"Edited Collection Users"}),this.toasterService.popAsync("success",null,this.i18nService.t("updatedUsers")),this.onEditedUsers.emit(),[3,3];case 2:return l.sent(),[3,3];case 3:return[2]}})})},n}();l.EntityUsersComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?this.events=this.events.concat(o):this.events=o,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EventsComponent=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?n.data:[]).sort(o.Utils.getSortFunction(this.i18nService,"name")),this.groups=l,this.loading=!1,[2]}})})},n.prototype.edit=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent);this.modal=this.addEditModalRef.createComponent(e).instance;var t=this.modal.show(a.GroupAddEditComponent,this.addEditModalRef);t.organizationId=this.organizationId,t.groupId=null!=n?n.id:null,t.onSavedGroup.subscribe(function(){l.modal.close(),l.load()}),t.onDeletedGroup.subscribe(function(){l.modal.close(),l.removeGroup(n)}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.add=function(){this.edit(null)},n.prototype.delete=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteGroupConfirmation"),n.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!l.sent())return[2,!1];l.label=2;case 2:return l.trys.push([2,4,,5]),[4,this.apiService.deleteGroup(this.organizationId,n.id)];case 3:return l.sent(),this.analytics.eventTrack.next({action:"Deleted Group"}),this.toasterService.popAsync("success",null,this.i18nService.t("deletedGroupId",n.name)),this.removeGroup(n),[3,5];case 4:return l.sent(),[3,5];case 5:return[2]}})})},n.prototype.users=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent);this.modal=this.usersModalRef.createComponent(e).instance;var t=this.modal.show(i.EntityUsersComponent,this.usersModalRef);t.organizationId=this.organizationId,t.entity="group",t.entityId=n.id,t.entityName=n.name,t.onEditedUsers.subscribe(function(){l.modal.close()}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.removeGroup=function(n){var l=this.groups.indexOf(n);l>-1&&this.groups.splice(l,1)},n}();l.GroupsComponent=s},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&l[0].status===i.OrganizationUserStatusType.Confirmed&&this.events(l[0]),e.unsubscribe(),[2]})})}),[2]}})})}),[2]})})},n.prototype.load=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return[4,this.apiService.getOrganizationUsers(this.organizationId)];case 1:return n=e.sent(),this.statusMap.clear(),this.allUsers=null!=n.data&&n.data.length>0?n.data:[],this.allUsers.sort(s.Utils.getSortFunction(this.i18nService,"email")),this.allUsers.forEach(function(n){l.statusMap.has(n.status)?l.statusMap.get(n.status).push(n):l.statusMap.set(n.status,[n])}),this.filter(this.status),this.loading=!1,[2]}})})},n.prototype.filter=function(n){this.status=n,null!=this.status?this.users=this.statusMap.get(this.status):this.users=this.allUsers},Object.defineProperty(n.prototype,"invitedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Invited)?this.statusMap.get(i.OrganizationUserStatusType.Invited).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"acceptedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Accepted)?this.statusMap.get(i.OrganizationUserStatusType.Accepted).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"confirmedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Confirmed)?this.statusMap.get(i.OrganizationUserStatusType.Confirmed).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"showConfirmUsers",{get:function(){return null!=this.allUsers&&null!=this.statusMap&&this.allUsers.length>1&&this.confirmedCount>0&&this.confirmedCount<3&&this.acceptedCount>0},enumerable:!0,configurable:!0}),n.prototype.edit=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.addEditModalRef.createComponent(e).instance;var t=this.modal.show(p.UserAddEditComponent,this.addEditModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close(),l.load()}),t.onDeletedUser.subscribe(function(){l.modal.close(),l.removeUser(n)}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.invite=function(){this.edit(null)},n.prototype.groups=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.groupsModalRef.createComponent(e).instance;var t=this.modal.show(v.UserGroupsComponent,this.groupsModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close()}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.remove=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("removeUserConfirmation"),n.name||n.email,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!l.sent())return[2,!1];l.label=2;case 2:return l.trys.push([2,4,,5]),[4,this.apiService.deleteOrganizationUser(this.organizationId,n.id)];case 3:return l.sent(),this.analytics.eventTrack.next({action:"Deleted User"}),this.toasterService.popAsync("success",null,this.i18nService.t("removedUserId",n.name||n.email)),this.removeUser(n),[3,5];case 4:return l.sent(),[3,5];case 5:return[2]}})})},n.prototype.reinvite=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return null!=this.actionPromise?[2]:(this.actionPromise=this.apiService.postOrganizationUserReinvite(this.organizationId,n.id),[4,this.actionPromise]);case 1:return l.sent(),this.analytics.eventTrack.next({action:"Reinvited User"}),this.toasterService.popAsync("success",null,this.i18nService.t("hasBeenReinvited",n.name||n.email)),this.actionPromise=null,[2]}})})},n.prototype.confirm=function(n){return t(this,void 0,void 0,function(){function l(l){n.status=i.OrganizationUserStatusType.Confirmed;var e=l.statusMap.get(i.OrganizationUserStatusType.Accepted).indexOf(n);e>-1&&(l.statusMap.get(i.OrganizationUserStatusType.Accepted).splice(e,1),l.statusMap.get(i.OrganizationUserStatusType.Confirmed).push(n))}var e,t,r,a=this;return u(this,function(u){switch(u.label){case 0:return null!=this.actionPromise?[2]:[4,this.storageService.get(o.ConstantsService.autoConfirmFingerprints)];case 1:return null!=(e=u.sent())&&e?(this.actionPromise=this.doConfirmation(n),[4,this.actionPromise]):(null!=this.modal&&this.modal.close(),t=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent),this.modal=this.groupsModalRef.createComponent(t).instance,(r=this.modal.show(f.UserConfirmComponent,this.confirmModalRef)).name=null!=n?n.name||n.email:null,r.organizationId=this.organizationId,r.organizationUserId=null!=n?n.id:null,r.userId=null!=n?n.userId:null,r.onConfirmedUser.subscribe(function(){a.modal.close(),l(a)}),this.modal.onClosed.subscribe(function(){a.modal=null}),[2]);case 2:return u.sent(),l(this),this.analytics.eventTrack.next({action:"Confirmed User"}),this.toasterService.popAsync("success",null,this.i18nService.t("hasBeenConfirmed",n.name||n.email)),this.actionPromise=null,[2]}})})},n.prototype.events=function(n){return t(this,void 0,void 0,function(){var l,e,t=this;return u(this,function(u){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent),this.modal=this.eventsModalRef.createComponent(l).instance,(e=this.modal.show(c.EntityEventsComponent,this.eventsModalRef)).name=n.name||n.email,e.organizationId=this.organizationId,e.entityId=n.id,e.showUser=!1,e.entity="user",this.modal.onClosed.subscribe(function(){t.modal=null}),[2]})})},n.prototype.doConfirmation=function(n){return t(this,void 0,void 0,function(){var l,e,t,o,i,a,d,c;return u(this,function(u){switch(u.label){case 0:return[4,this.cryptoService.getOrgKey(this.organizationId)];case 1:return l=u.sent(),[4,this.apiService.getUserPublicKey(n.userId)];case 2:e=u.sent(),t=s.Utils.fromB64ToArray(e.publicKey),u.label=3;case 3:return u.trys.push([3,5,,6]),i=(o=console).log,a="User's fingerprint: ",[4,this.cryptoService.getFingerprint(n.userId,t.buffer)];case 4:return i.apply(o,[a+u.sent().join("-")]),[3,6];case 5:return u.sent(),[3,6];case 6:return[4,this.cryptoService.rsaEncrypt(l.key,t.buffer)];case 7:return d=u.sent(),(c=new r.OrganizationUserConfirmRequest).key=d.encryptedString,[4,this.apiService.postOrganizationUserConfirm(this.organizationId,n.id,c)];case 8:return u.sent(),[2]}})})},n.prototype.removeUser=function(n){var l=this.users.indexOf(n);l>-1&&this.users.splice(l,1),this.statusMap.has(i.OrganizationUserStatusType.Accepted)&&(l=this.statusMap.get(i.OrganizationUserStatusType.Accepted).indexOf(n))>-1&&this.statusMap.get(i.OrganizationUserStatusType.Accepted).splice(l,1),this.statusMap.has(i.OrganizationUserStatusType.Invited)&&(l=this.statusMap.get(i.OrganizationUserStatusType.Invited).indexOf(n))>-1&&this.statusMap.get(i.OrganizationUserStatusType.Invited).splice(l,1),this.statusMap.has(i.OrganizationUserStatusType.Confirmed)&&(l=this.statusMap.get(i.OrganizationUserStatusType.Confirmed).indexOf(n))>-1&&this.statusMap.get(i.OrganizationUserStatusType.Confirmed).splice(l,1)},n}();l.PeopleComponent=h},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]"}),e.body=t,e.bodyOutputType=i.BodyOutputType.TrustedHtml}null!=n.options&&(!0===n.options.trustedHtml&&(e.bodyOutputType=i.BodyOutputType.TrustedHtml),null!=n.options.timeout&&n.options.timeout>0&&(e.timeout=n.options.timeout)),this.toasterService.popAsync(e)},n.prototype.idleStateChanged=function(){this.isIdle?this.notificationsService.disconnectFromInactivity():this.notificationsService.reconnectFromActivity()},n}();l.AppComponent=p},,,,,function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(10),e(90),e(3),e(9);var u=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return t(l,n),l}(e(768).TwoFactorOptionsComponent);l.TwoFactorOptionsComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(l,e){var t=n.call(this)||this;return t.masterPasswordHash=e,t.email=l,t}return t(l,n),l}(e(72).PasswordVerificationRequest);l.TwoFactorEmailRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.publicKey=n,this.encryptedPrivateKey=l}}();l.KeysRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(439),r=e(3),i=t.ɵcrt({encapsulation:2,styles:[],data:{}});function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "]))],null,function(n,l){n(l,1,0,l.component.text)})}function s(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["role","progressbar"]],[[8,"className",0],[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(3,278528,null,0,u.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(4,{width:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,a)),t.ɵdid(7,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,n(l,4,0,e.scoreWidth+"%")),n(l,7,0,e.showText&&e.text)},function(n,l){var e=l.component;n(l,2,0,t.ɵinlineInterpolate(1,"progress-bar ",e.color,""),t.ɵinlineInterpolate(1,"",e.scoreWidth,""))})}function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-strength",[],null,null,null,s,i)),t.ɵdid(1,573440,null,0,o.PasswordStrengthComponent,[r.I18nService],null,null)],null,null)}l.RenderType_PasswordStrengthComponent=i,l.View_PasswordStrengthComponent_0=s,l.View_PasswordStrengthComponent_Host_0=d;var c=t.ɵccf("app-password-strength",o.PasswordStrengthComponent,d,{score:"score",showText:"showText"},{},[]);l.PasswordStrengthComponentNgFactory=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(99),o=e(157),r=e(137),i=e(41),a=e(103),s=e(30),d=e(7),c=e(3),p=e(4),f=e(10),v=e(449),h=e(20),g=e(9),m=e(70),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"div",[["appStopProp",""],["class","dropdown-item-text d-flex align-items-center"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"app-avatar",[["fontSize","14"],["size","25"]],null,null,null,o.View_AvatarComponent_0,o.RenderType_AvatarComponent)),t.ɵdid(4,638976,null,0,r.AvatarComponent,[i.DomSanitizer,a.CryptoFunctionService,s.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"div",[["class","ml-2 overflow-hidden"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.name,e.email,"25","14",!0)},function(n,l){var e=l.component;n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"loggedInAs"))),n(l,13,0,e.name)})}function b(n){return t.ɵvid(0,[t.ɵpid(0,d.I18nPipe,[c.I18nService]),(n()(),t.ɵeld(1,0,null,null,104,"nav",[["class","navbar navbar-expand navbar-dark bg-primary"]],null,null,null,null,null)),t.ɵdid(2,278528,null,0,p.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(3,{"bg-secondary-alt":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,99,"div",[["class","container"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,5,"a",[["class","navbar-brand"],["routerLink","/"]],[[8,"title",0],[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,8).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(8,671744,null,0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵppd(9,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,0,"i",[["class","fa fa-shield"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,37,"div",[["class","collapse navbar-collapse"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,34,"ul",[["class","navbar-nav"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,9,"li",[["class","nav-item"],["routerLinkActive","active"]],null,null,null,null,null)),t.ɵdid(19,1720320,null,2,f.RouterLinkActive,[f.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,3,"a",[["class","nav-link"],["routerLink","/vault"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[2,4]],0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,9,"li",[["class","nav-item"],["routerLinkActive","active"]],null,null,null,null,null)),t.ɵdid(30,1720320,null,2,f.RouterLinkActive,[f.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,3,"a",[["class","nav-link"],["routerLink","/tools"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,35).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(35,671744,[[4,4]],0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"li",[["class","nav-item"],["routerLinkActive","active"]],null,null,null,null,null)),t.ɵdid(41,1720320,null,2,f.RouterLinkActive,[f.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,3,"a",[["class","nav-link"],["routerLink","/settings"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,46).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(46,671744,[[6,4]],0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,50,"ul",[["class","navbar-nav flex-row ml-md-auto d-none d-md-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,47,"li",[["class","nav-item dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,3,"a",[["aria-expanded","false"],["aria-haspopup","true"],["class","nav-item nav-link dropdown-toggle"],["data-toggle","dropdown"],["href","#"],["id","nav-profile"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,0,"i",[["class","fa fa-user-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,39,"div",[["aria-labelledby","nav-profile"],["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(65,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,0,"div",[["class","dropdown-divider"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,5,"a",[["class","dropdown-item"],["href","#"],["routerLink","/settings/account"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,70).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(70,671744,null,0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,0,"i",[["class","fa fa-fw fa-user"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["\n ","\n "])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,4,"a",[["class","dropdown-item"],["href","https://help.bitwarden.com"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(78,0,null,null,0,"i",[["class","fa fa-fw fa-question-circle"]],null,null,null,null,null)),(n()(),t.ɵted(79,null,["\n ","\n "])),t.ɵppd(80,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,4,"a",[["class","dropdown-item"],["href","https://bitwarden.com#download"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,0,"i",[["class","fa fa-fw fa-download"]],null,null,null,null,null)),(n()(),t.ɵted(85,null,["\n ","\n "])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,0,"div",[["class","dropdown-divider"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,4,"button",[["class","dropdown-item"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.lock()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,0,null,null,0,"i",[["class","fa fa-fw fa-lock"]],null,null,null,null,null)),(n()(),t.ɵted(93,null,["\n ","\n "])),t.ɵppd(94,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,4,"button",[["class","dropdown-item"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.logOut()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(98,0,null,null,0,"i",[["class","fa fa-fw fa-sign-out"]],null,null,null,null,null)),(n()(),t.ɵted(99,null,["\n ","\n "])),t.ɵppd(100,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,2,0,"navbar navbar-expand navbar-dark bg-primary",n(l,3,0,e.selfHosted));n(l,8,0,"/");n(l,19,0,"active");n(l,24,0,"/vault");n(l,30,0,"active");n(l,35,0,"/tools");n(l,41,0,"active");n(l,46,0,"/settings"),n(l,65,0,e.name);n(l,70,0,"/settings/account")},function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,7,0,n(l,9,0,t.ɵnov(l,0),"pageTitle","Bitwarden")),""),t.ɵnov(l,8).target,t.ɵnov(l,8).href),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"myVault"))),n(l,34,0,t.ɵnov(l,35).target,t.ɵnov(l,35).href),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"tools"))),n(l,45,0,t.ɵnov(l,46).target,t.ɵnov(l,46).href),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"settings"))),n(l,69,0,t.ɵnov(l,70).target,t.ɵnov(l,70).href),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"myAccount"))),n(l,79,0,t.ɵunv(l,79,0,n(l,80,0,t.ɵnov(l,0),"getHelp"))),n(l,85,0,t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"getApps"))),n(l,93,0,t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"lockNow"))),n(l,99,0,t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l,0),"logOut")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-navbar",[],null,null,null,b,y)),t.ɵdid(1,114688,null,0,v.NavbarComponent,[h.MessagingService,g.PlatformUtilsService,m.TokenService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_NavbarComponent=y,l.View_NavbarComponent_0=b,l.View_NavbarComponent_Host_0=w;var S=t.ɵccf("app-navbar",v.NavbarComponent,w,{},{},[]);l.NavbarComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(450),i=e(9),a=t.ɵcrt({encapsulation:2,styles:[],data:{}});function s(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,13,"div",[["class","container footer text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,1,"div",[["class","col"]],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n © ",", 8bit Solutions LLC\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"div",[["class","col text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"div",[["class","col text-right"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=l.component;n(l,6,0,e.year),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"versionNumber",e.version)))})}function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-footer",[],null,null,null,s,a)),t.ɵdid(1,114688,null,0,r.FooterComponent,[i.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_FooterComponent=a,l.View_FooterComponent_0=s,l.View_FooterComponent_Host_0=d;var c=t.ɵccf("app-footer",r.FooterComponent,d,{},{},[]);l.FooterComponentNgFactory=c},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(this.organizationId=this.organizations[0].id),this.filterCollections(),[2]}})})},n.prototype.ngOnDestroy=function(){this.selectAll(!1)},n.prototype.filterCollections=function(){var n=this;this.selectAll(!1),null==this.organizationId||0===this.writeableCollections.length?this.collections=[]:this.collections=this.writeableCollections.filter(function(l){return l.organizationId===n.organizationId})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:n=this.collections.filter(function(n){return n.checked}).map(function(n){return n.id}),l.label=1;case 1:return l.trys.push([1,3,,4]),this.formPromise=this.cipherService.shareManyWithServer(this.shareableCiphers,this.organizationId,n),[4,this.formPromise];case 2:return l.sent(),this.onShared.emit(),this.analytics.eventTrack.next({action:"Bulk Shared Items"}),this.toasterService.popAsync("success",null,this.i18nService.t("sharedItems")),[3,4];case 3:return l.sent(),[3,4];case 4:return[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l},n.prototype.selectAll=function(n){var l=this;(n?this.collections:this.writeableCollections).forEach(function(e){return l.check(e,n)})},Object.defineProperty(n.prototype,"canSave",{get:function(){if(null!=this.shareableCiphers&&this.shareableCiphers.length>0&&null!=this.collections)for(var n=0;n0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n=n.concat(this.email.substr(0,l).trim().toLowerCase().split(/[^A-Za-z0-9]/))),n},n.prototype.updateKey=function(n,l){return t(this,void 0,void 0,function(){var e,t,i,s,d,c,p,f,v;return u(this,function(u){switch(u.label){case 0:return[4,this.cryptoService.makeEncKey(n)];case 1:return e=u.sent(),[4,this.cryptoService.getPrivateKey()];case 2:return t=u.sent(),i=null,null==t?[3,4]:[4,this.cryptoService.encrypt(t,e[0])];case 3:i=u.sent(),u.label=4;case 4:return(s=new a.UpdateKeyRequest).privateKey=null!=i?i.encryptedString:null,s.key=e[1].encryptedString,s.masterPasswordHash=l,[4,this.folderService.getAllDecrypted()];case 5:d=u.sent(),f=0,u.label=6;case 6:return f0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]

'+this.i18nService.t("twoFactorRecoveryYourCode")+":

"+this.code+'

'+new Date+"

"),n.print(),n.close()},n.prototype.formatString=function(n){return null==n?null:n.replace(/(.{4})/g,"$1 ").trim().toUpperCase()},n.prototype.processResponse=function(n){this.code=this.formatString(n.code)},n}();l.TwoFactorRecoveryComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0)return e.keysConfiguredCount++,e.keys.push({id:l,name:t[0].name,configured:!0,compromised:t[0].compromised,removePromise:null}),"continue"}e.keys.push({id:l,name:null,configured:!1,compromised:!1,removePromise:null}),null==e.keyIdAvailable&&(e.keyIdAvailable=l)},e=this,t=1;t<=5;t++)l(t);this.enabled=n.enabled},l}(e(224).TwoFactorBaseComponent);l.TwoFactorU2fComponent=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?this.keys[0].key:null,e.key2=null!=this.keys&&this.keys.length>1?this.keys[1].key:null,e.key3=null!=this.keys&&this.keys.length>2?this.keys[2].key:null,e.key4=null!=this.keys&&this.keys.length>3?this.keys[3].key:null,e.key5=null!=this.keys&&this.keys.length>4?this.keys[4].key:null,e.nfc=this.nfc,n.prototype.enable.call(this,function(){return u(l,void 0,void 0,function(){var n;return o(this,function(l){switch(l.label){case 0:return this.formPromise=this.apiService.putTwoFactorYubiKey(e),[4,this.formPromise];case 1:return n=l.sent(),[4,this.processResponse(n)];case 2:return l.sent(),this.toasterService.popAsync("success",null,this.i18nService.t("yubikeysUpdated")),[2]}})})})},l.prototype.disable=function(){return n.prototype.disable.call(this,this.disablePromise)},l.prototype.remove=function(n){n.existingKey=null,n.key=null},l.prototype.processResponse=function(n){this.enabled=n.enabled,this.keys=[{key:n.key1,existingKey:this.padRight(n.key1)},{key:n.key2,existingKey:this.padRight(n.key2)},{key:n.key3,existingKey:this.padRight(n.key3)},{key:n.key4,existingKey:this.padRight(n.key4)},{key:n.key5,existingKey:this.padRight(n.key5)}],this.nfc=n.nfc||!n.enabled},l.prototype.padRight=function(n,l,e){if(void 0===l&&(l="•"),void 0===e&&(e=44),null==n||null==l||n.length>=e)return n;for(var t=(e-n.length)/l.length,u=0;u":t=">",u=!0}var o="letter";u||t.match(/[^\w ]/)?o="special":t.match(/\d/)&&(o="number"),l+=''+t+""}return l},n}();l.ColorPasswordPipe=t},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(3),e(61),e(9);var u=function(n){function l(l,e,t){return n.call(this,l,e,t,window)||this}return t(l,n),l}(e(840).PasswordGeneratorHistoryComponent);l.PasswordGeneratorHistoryComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.id=n.id,this.url=n.url,this.fileName=n.fileName,this.key=n.key,this.size=n.size,this.sizeName=n.sizeName)}}();l.AttachmentData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.cardholderName=n.cardholderName,this.brand=n.brand,this.number=n.number,this.expMonth=n.expMonth,this.expYear=n.expYear,this.code=n.code)}}();l.CardData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.type=n.type,this.name=n.name,this.value=n.value)}}();l.FieldData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.title=n.title,this.firstName=n.firstName,this.middleName=n.middleName,this.lastName=n.lastName,this.address1=n.address1,this.address2=n.address2,this.address3=n.address3,this.city=n.city,this.state=n.state,this.postalCode=n.postalCode,this.country=n.country,this.company=n.company,this.email=n.email,this.phone=n.phone,this.ssn=n.ssn,this.username=n.username,this.passportNumber=n.passportNumber,this.licenseNumber=n.licenseNumber)}}();l.IdentityData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(569),u=function(){return function(n){var l=this;null!=n&&(this.username=n.username,this.password=n.password,this.passwordRevisionDate=n.passwordRevisionDate,this.totp=n.totp,n.uris&&(this.uris=[],n.uris.forEach(function(n){l.uris.push(new t.LoginUriData(n))})))}}();l.LoginData=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.match=null,null!=n&&(this.uri=n.uri,this.match=n.match)}}();l.LoginUriData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.password=n.password,this.lastUsedDate=n.lastUsedDate)}}();l.PasswordHistoryData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.type=n.type)}}();l.SecureNoteData=t},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(n.uris=[],this.uris.forEach(function(l){n.uris.push(l.toLoginUriData())})),n},l}(e(106).default);l.Login=s},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(569),o=e(223),r=function(n){function l(l,e){void 0===e&&(e=!1);var t=n.call(this)||this;return null==l?t:(t.match=l.match,t.buildDomainModel(t,l,{uri:null},e,[]),t)}return t(l,n),l.prototype.decrypt=function(n){return this.decryptObj(new o.LoginUriView(this),{uri:null},n)},l.prototype.toLoginUriData=function(){var n=new u.LoginUriData;return this.buildDataModel(this,n,{uri:null},["match"]),n},l}(e(106).default);l.LoginUri=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&t.groups.forEach(function(n){var l=i.groups.filter(function(l){return!l.accessAll&&l.id===n.id});null!=l&&l.length>0&&(l[0].checked=!0,l[0].readOnly=n.readOnly)}),[3,9];case 8:return u.sent(),[3,9];case 9:return[3,11];case 10:this.title=this.i18nService.t("addCollection"),u.label=11;case 11:return this.groups.forEach(function(n){n.accessAll&&(n.checked=!0)}),this.loading=!1,[2]}})})},n.prototype.check=function(n,l){n.accessAll||(n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1))},n.prototype.selectAll=function(n){var l=this;this.groups.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:if(null==this.orgKey)throw new Error("No encryption key for this organization.");return n=new i.CollectionRequest,l=n,[4,this.cryptoService.encrypt(this.name,this.orgKey)];case 1:l.name=e.sent().encryptedString,n.groups=this.groups.filter(function(n){return n.checked&&!n.accessAll}).map(function(n){return new a.SelectionReadOnlyRequest(n.id,!!n.readOnly)}),e.label=2;case 2:return e.trys.push([2,4,,5]),this.editMode?this.formPromise=this.apiService.putCollection(this.organizationId,this.collectionId,n):this.formPromise=this.apiService.postCollection(this.organizationId,n),[4,this.formPromise];case 3:return e.sent(),this.analytics.eventTrack.next({action:this.editMode?"Edited Collection":"Created Collection"}),this.toasterService.popAsync("success",null,this.i18nService.t(this.editMode?"editedCollectionId":"createdCollectionId",this.name)),this.onSavedCollection.emit(),[3,5];case 4:return e.sent(),[3,5];case 5:return[2]}})})},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.editMode?[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteCollectionConfirmation"),this.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")]:[2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.apiService.deleteCollection(this.organizationId,this.collectionId),[4,this.deletePromise];case 3:return n.sent(),this.analytics.eventTrack.next({action:"Deleted Collection"}),this.toasterService.popAsync("success",null,this.i18nService.t("deletedCollectionId",this.name)),this.onDeletedCollection.emit(),[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}})})},n}();l.CollectionAddEditComponent=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.groups=[],null!=n&&(this.name=n.name?n.name.encryptedString:null)}}();l.CollectionRequest=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(e[0].checked=!0,e[0].readOnly=n.readOnly)}),[3,5];case 4:return e.sent(),[3,5];case 5:return[3,7];case 6:this.title=this.i18nService.t("addGroup"),e.label=7;case 7:return this.loading=!1,[2]}})})},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){var n,l,e;return u(this,function(t){switch(t.label){case 0:return[4,this.apiService.getCollections(this.organizationId)];case 1:return n=t.sent(),l=n.data.map(function(n){return new i.Collection(new r.CollectionData(n))}),e=this,[4,this.collectionService.decryptMany(l)];case 2:return e.collections=t.sent(),[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1)},n.prototype.selectAll=function(n){var l=this;this.collections.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:(n=new a.GroupRequest).name=this.name,n.externalId=this.externalId,n.accessAll="all"===this.access,n.accessAll||(n.collections=this.collections.filter(function(n){return n.checked}).map(function(n){return new s.SelectionReadOnlyRequest(n.id,!!n.readOnly)})),l.label=1;case 1:return l.trys.push([1,3,,4]),this.editMode?this.formPromise=this.apiService.putGroup(this.organizationId,this.groupId,n):this.formPromise=this.apiService.postGroup(this.organizationId,n),[4,this.formPromise];case 2:return l.sent(),this.analytics.eventTrack.next({action:this.editMode?"Edited Group":"Created Group"}),this.toasterService.popAsync("success",null,this.i18nService.t(this.editMode?"editedGroupId":"createdGroupId",this.name)),this.onSavedGroup.emit(),[3,4];case 3:return l.sent(),[3,4];case 4:return[2]}})})},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.editMode?[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteGroupConfirmation"),this.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")]:[2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.apiService.deleteGroup(this.organizationId,this.groupId),[4,this.deletePromise];case 3:return n.sent(),this.analytics.eventTrack.next({action:"Deleted Group"}),this.toasterService.popAsync("success",null,this.i18nService.t("deletedGroupId",this.name)),this.onDeletedGroup.emit(),[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}})})},n}();l.GroupAddEditComponent=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUserConfirmRequest=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(e[0].checked=!0,e[0].readOnly=n.readOnly)}),[3,5];case 4:return e.sent(),[3,5];case 5:return[3,7];case 6:this.title=this.i18nService.t("inviteUser"),e.label=7;case 7:return this.loading=!1,[2]}})})},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){var n,l,e;return u(this,function(t){switch(t.label){case 0:return[4,this.apiService.getCollections(this.organizationId)];case 1:return n=t.sent(),l=n.data.map(function(n){return new i.Collection(new r.CollectionData(n))}),e=this,[4,this.collectionService.decryptMany(l)];case 2:return e.collections=t.sent(),[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1)},n.prototype.selectAll=function(n){var l=this;this.collections.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:n=null,"all"!==this.access&&(n=this.collections.filter(function(n){return n.checked}).map(function(n){return new d.SelectionReadOnlyRequest(n.id,!!n.readOnly)})),e.label=1;case 1:return e.trys.push([1,3,,4]),this.editMode?((l=new s.OrganizationUserUpdateRequest).accessAll="all"===this.access,l.type=this.type,l.collections=n,this.formPromise=this.apiService.putOrganizationUser(this.organizationId,this.organizationUserId,l)):((l=new a.OrganizationUserInviteRequest).emails=this.emails.trim().split(/\s*,\s*/),l.accessAll="all"===this.access,l.type=this.type,l.collections=n,this.formPromise=this.apiService.postOrganizationUserInvite(this.organizationId,l)),[4,this.formPromise];case 2:return e.sent(),this.analytics.eventTrack.next({action:this.editMode?"Edited User":"Invited User"}),this.toasterService.popAsync("success",null,this.i18nService.t(this.editMode?"editedUserId":"invitedUsers",this.name)),this.onSavedUser.emit(),[3,4];case 3:return e.sent(),[3,4];case 4:return[2]}})})},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.editMode?[4,this.platformUtilsService.showDialog(this.i18nService.t("removeUserConfirmation"),this.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")]:[2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.apiService.deleteOrganizationUser(this.organizationId,this.organizationUserId),[4,this.deletePromise];case 3:return n.sent(),this.analytics.eventTrack.next({action:"Deleted User"}),this.toasterService.popAsync("success",null,this.i18nService.t("removedUserId",this.name)),this.onDeletedUser.emit(),[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}})})},n}();l.UserAddEditComponent=p},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(l[0].checked=!0)}),[3,5];case 4:return u.sent(),[3,5];case 5:return this.loading=!1,[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1)},n.prototype.selectAll=function(n){var l=this;this.groups.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:(n=new r.OrganizationUserUpdateGroupsRequest).groupIds=this.groups.filter(function(n){return n.checked}).map(function(n){return n.id}),l.label=1;case 1:return l.trys.push([1,3,,4]),this.formPromise=this.apiService.putOrganizationUserGroups(this.organizationId,this.organizationUserId,n),[4,this.formPromise];case 2:return l.sent(),this.analytics.eventTrack.next({action:"Edited User Groups"}),this.toasterService.popAsync("success",null,this.i18nService.t("editedGroupsForUser",this.name)),this.onSavedUser.emit(),[3,4];case 3:return l.sent(),[3,4];case 4:return[2]}})})},n}();l.UserGroupsComponent=a},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0){var e=this.formEls[0];if("input"===e.tagName.toLowerCase()){var t=e;if(null!=t.type&&"checkbox"===t.type.toLowerCase())return void t.click()}e.focus()}},n}();l.BoxRowDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(12);var t=function(){function n(n,l){this.elementRef=n,this.renderer=l,this.trueValue=!0,this.falseValue=!1,this.propagateChange=function(n){}}return n.prototype.onHostChange=function(n){this.propagateChange(n.target.checked?this.trueValue:this.falseValue)},n.prototype.writeValue=function(n){n===this.trueValue?this.renderer.setProperty(this.elementRef.nativeElement,"checked",!0):this.renderer.setProperty(this.elementRef.nativeElement,"checked",!1)},n.prototype.registerOnChange=function(n){this.propagateChange=n},n.prototype.registerOnTouched=function(n){},n.prototype.setDisabledState=function(n){},n}();l.TrueFalseValueDirective=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?[4,l.json()]:[3,3];case 2:e=u.sent(),u.label=3;case 3:return null==e?[3,6]:200!==l.status?[3,4]:[2,new v.IdentityTokenResponse(e)];case 4:return 400===l.status&&e.TwoFactorProviders2&&Object.keys(e.TwoFactorProviders2).length?[4,this.tokenService.clearTwoFactorToken(n.email)]:[3,6];case 5:return u.sent(),[2,new h.IdentityTwoFactorResponse(e)];case 6:return[2,Promise.reject(new d.ErrorResponse(e,l.status,!0))]}})})},n.prototype.refreshIdentityToken=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,this.doRefreshToken()];case 1:return n.sent(),[3,3];case 2:return n.sent(),[2,Promise.reject(null)];case 3:return[2]}})})},n.prototype.getProfile=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/accounts/profile",null,!0,!0)];case 1:return n=l.sent(),[2,new w.ProfileResponse(n)]}})})},n.prototype.getUserBilling=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/accounts/billing",null,!0,!0)];case 1:return n=l.sent(),[2,new r.BillingResponse(n)]}})})},n.prototype.putProfile=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/accounts/profile",n,!0,!0)];case 1:return l=e.sent(),[2,new w.ProfileResponse(l)]}})})},n.prototype.postPrelogin=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/accounts/prelogin",n,!1,!0)];case 1:return l=e.sent(),[2,new b.PreloginResponse(l)]}})})},n.prototype.postEmailToken=function(n){return this.send("POST","/accounts/email-token",n,!0,!1)},n.prototype.postEmail=function(n){return this.send("POST","/accounts/email",n,!0,!1)},n.prototype.postPassword=function(n){return this.send("POST","/accounts/password",n,!0,!1)},n.prototype.postSecurityStamp=function(n){return this.send("POST","/accounts/security-stamp",n,!0,!1)},n.prototype.deleteAccount=function(n){return this.send("DELETE","/accounts",n,!0,!1)},n.prototype.getAccountRevisionDate=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,this.send("GET","/accounts/revision-date",null,!0,!0)];case 1:return[2,n.sent()]}})})},n.prototype.postPasswordHint=function(n){return this.send("POST","/accounts/password-hint",n,!1,!1)},n.prototype.postRegister=function(n){return this.send("POST","/accounts/register",n,!1,!1)},n.prototype.postPremium=function(n){return this.send("POST","/accounts/premium",n,!0,!1)},n.prototype.postReinstatePremium=function(){return this.send("POST","/accounts/reinstate-premium",null,!0,!1)},n.prototype.postCancelPremium=function(){return this.send("POST","/accounts/cancel-premium",null,!0,!1)},n.prototype.postAccountStorage=function(n){return this.send("POST","/accounts/storage",n,!0,!1)},n.prototype.postAccountPayment=function(n){return this.send("POST","/accounts/payment",n,!0,!1)},n.prototype.postAccountLicense=function(n){return this.send("POST","/accounts/license",n,!0,!1)},n.prototype.postAccountKeys=function(n){return this.send("POST","/accounts/keys",n,!0,!1)},n.prototype.postAccountKey=function(n){return this.send("POST","/accounts/key",n,!0,!1)},n.prototype.postAccountVerifyEmail=function(){return this.send("POST","/accounts/verify-email",null,!0,!1)},n.prototype.postAccountVerifyEmailToken=function(n){return this.send("POST","/accounts/verify-email-token",n,!1,!1)},n.prototype.postAccountRecoverDelete=function(n){return this.send("POST","/accounts/delete-recover",n,!1,!1)},n.prototype.postAccountRecoverDeleteToken=function(n){return this.send("POST","/accounts/delete-recover-token",n,!1,!1)},n.prototype.postAccountKdf=function(n){return this.send("POST","/accounts/kdf",n,!0,!1)},n.prototype.getFolder=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/folders/"+n,null,!0,!0)];case 1:return l=e.sent(),[2,new p.FolderResponse(l)]}})})},n.prototype.postFolder=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/folders",n,!0,!0)];case 1:return l=e.sent(),[2,new p.FolderResponse(l)]}})})},n.prototype.putFolder=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/folders/"+n,l,!0,!0)];case 1:return e=t.sent(),[2,new p.FolderResponse(e)]}})})},n.prototype.deleteFolder=function(n){return this.send("DELETE","/folders/"+n,null,!0,!1)},n.prototype.getCipher=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/ciphers/"+n,null,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.getCipherAdmin=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/ciphers/"+n+"/admin",null,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.getCiphersOrganization=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/ciphers/organization-details?organizationId="+n,null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,i.CipherResponse)]}})})},n.prototype.postCipher=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/ciphers",n,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.postCipherCreate=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/ciphers/create",n,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.postCipherAdmin=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/ciphers/admin",n,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.putCipher=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/ciphers/"+n,l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.putCipherAdmin=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/ciphers/"+n+"/admin",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.deleteCipher=function(n){return this.send("DELETE","/ciphers/"+n,null,!0,!1)},n.prototype.deleteCipherAdmin=function(n){return this.send("DELETE","/ciphers/"+n+"/admin",null,!0,!1)},n.prototype.deleteManyCiphers=function(n){return this.send("DELETE","/ciphers",n,!0,!1)},n.prototype.putMoveCiphers=function(n){return this.send("PUT","/ciphers/move",n,!0,!1)},n.prototype.putShareCipher=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/ciphers/"+n+"/share",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.putShareCiphers=function(n){return this.send("PUT","/ciphers/share",n,!0,!1)},n.prototype.putCipherCollections=function(n,l){return this.send("PUT","/ciphers/"+n+"/collections",l,!0,!1)},n.prototype.putCipherCollectionsAdmin=function(n,l){return this.send("PUT","/ciphers/"+n+"/collections-admin",l,!0,!1)},n.prototype.postPurgeCiphers=function(n,l){void 0===l&&(l=null);var e="/ciphers/purge";return null!=l&&(e+="?organizationId="+l),this.send("POST",e,n,!0,!1)},n.prototype.postImportCiphers=function(n){return this.send("POST","/ciphers/import",n,!0,!1)},n.prototype.postImportOrganizationCiphers=function(n,l){return this.send("POST","/ciphers/import-organization?organizationId="+n,l,!0,!1)},n.prototype.postCipherAttachment=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/ciphers/"+n+"/attachment",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.postCipherAttachmentAdmin=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/ciphers/"+n+"/attachment-admin",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.deleteCipherAttachment=function(n,l){return this.send("DELETE","/ciphers/"+n+"/attachment/"+l,null,!0,!1)},n.prototype.deleteCipherAttachmentAdmin=function(n,l){return this.send("DELETE","/ciphers/"+n+"/attachment/"+l+"/admin",null,!0,!1)},n.prototype.postShareCipherAttachment=function(n,l,e,t){return this.send("POST","/ciphers/"+n+"/attachment/"+l+"/share?organizationId="+t,e,!0,!1)},n.prototype.getCollectionDetails=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("GET","/organizations/"+n+"/collections/"+l+"/details",null,!0,!0)];case 1:return e=t.sent(),[2,new a.CollectionGroupDetailsResponse(e)]}})})},n.prototype.getUserCollections=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/collections",null,!0,!0)];case 1:return n=l.sent(),[2,new g.ListResponse(n,a.CollectionResponse)]}})})},n.prototype.getCollections=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/collections",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,a.CollectionResponse)]}})})},n.prototype.getCollectionUsers=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/collections/"+l+"/users",null,!0,!0)];case 1:return[2,e.sent().map(function(n){return new S.SelectionReadOnlyResponse(n)})]}})})},n.prototype.postCollection=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/organizations/"+n+"/collections",l,!0,!0)];case 1:return e=t.sent(),[2,new a.CollectionResponse(e)]}})})},n.prototype.putCollection=function(n,l,e){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/collections/"+l,e,!0,!0)];case 1:return t=u.sent(),[2,new a.CollectionResponse(t)]}})})},n.prototype.putCollectionUsers=function(n,l,e){return t(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/collections/"+l+"/users",e,!0,!1)];case 1:return t.sent(),[2]}})})},n.prototype.deleteCollection=function(n,l){return this.send("DELETE","/organizations/"+n+"/collections/"+l,null,!0,!1)},n.prototype.deleteCollectionUser=function(n,l,e){return this.send("DELETE","/organizations/"+n+"/collections/"+l+"/user/"+e,null,!0,!1)},n.prototype.getGroupDetails=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("GET","/organizations/"+n+"/groups/"+l+"/details",null,!0,!0)];case 1:return e=t.sent(),[2,new f.GroupDetailsResponse(e)]}})})},n.prototype.getGroups=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/groups",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,f.GroupResponse)]}})})},n.prototype.getGroupUsers=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/groups/"+l+"/users",null,!0,!0)];case 1:return[2,e.sent()]}})})},n.prototype.postGroup=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/organizations/"+n+"/groups",l,!0,!0)];case 1:return e=t.sent(),[2,new f.GroupResponse(e)]}})})},n.prototype.putGroup=function(n,l,e){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/groups/"+l,e,!0,!0)];case 1:return t=u.sent(),[2,new f.GroupResponse(t)]}})})},n.prototype.putGroupUsers=function(n,l,e){return t(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/groups/"+l+"/users",e,!0,!1)];case 1:return t.sent(),[2]}})})},n.prototype.deleteGroup=function(n,l){return this.send("DELETE","/organizations/"+n+"/groups/"+l,null,!0,!1)},n.prototype.deleteGroupUser=function(n,l,e){return this.send("DELETE","/organizations/"+n+"/groups/"+l+"/user/"+e,null,!0,!1)},n.prototype.getOrganizationUser=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("GET","/organizations/"+n+"/users/"+l,null,!0,!0)];case 1:return e=t.sent(),[2,new C.OrganizationUserDetailsResponse(e)]}})})},n.prototype.getOrganizationUserGroups=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/users/"+l+"/groups",null,!0,!0)];case 1:return[2,e.sent()]}})})},n.prototype.getOrganizationUsers=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/users",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,C.OrganizationUserUserDetailsResponse)]}})})},n.prototype.postOrganizationUserInvite=function(n,l){return this.send("POST","/organizations/"+n+"/users/invite",l,!0,!1)},n.prototype.postOrganizationUserReinvite=function(n,l){return this.send("POST","/organizations/"+n+"/users/"+l+"/reinvite",null,!0,!1)},n.prototype.postOrganizationUserAccept=function(n,l,e){return this.send("POST","/organizations/"+n+"/users/"+l+"/accept",e,!0,!1)},n.prototype.postOrganizationUserConfirm=function(n,l,e){return this.send("POST","/organizations/"+n+"/users/"+l+"/confirm",e,!0,!1)},n.prototype.putOrganizationUser=function(n,l,e){return this.send("PUT","/organizations/"+n+"/users/"+l,e,!0,!1)},n.prototype.putOrganizationUserGroups=function(n,l,e){return this.send("PUT","/organizations/"+n+"/users/"+l+"/groups",e,!0,!1)},n.prototype.deleteOrganizationUser=function(n,l){return this.send("DELETE","/organizations/"+n+"/users/"+l,null,!0,!1)},n.prototype.getSync=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:return n=this.isDesktopClient||this.isWebClient?"/sync?excludeDomains=true":"/sync",[4,this.send("GET",n,null,!0,!0)];case 1:return l=e.sent(),[2,new _.SyncResponse(l)]}})})},n.prototype.postImportDirectory=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){return[2,this.send("POST","/organizations/"+n+"/import",l,!0,!1)]})})},n.prototype.getSettingsDomains=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/settings/domains",null,!0,!0)];case 1:return n=l.sent(),[2,new s.DomainsResponse(n)]}})})},n.prototype.putSettingsDomains=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/settings/domains",n,!0,!0)];case 1:return l=e.sent(),[2,new s.DomainsResponse(l)]}})})},n.prototype.getTwoFactorProviders=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/two-factor",null,!0,!0)];case 1:return n=l.sent(),[2,new g.ListResponse(n,A.TwoFactorProviderResponse)]}})})},n.prototype.getTwoFactorOrganizationProviders=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/two-factor",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,A.TwoFactorProviderResponse)]}})})},n.prototype.getTwoFactorAuthenticator=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-authenticator",n,!0,!0)];case 1:return l=e.sent(),[2,new R.TwoFactorAuthenticatorResponse(l)]}})})},n.prototype.getTwoFactorEmail=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-email",n,!0,!0)];case 1:return l=e.sent(),[2,new k.TwoFactorEmailResponse(l)]}})})},n.prototype.getTwoFactorDuo=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-duo",n,!0,!0)];case 1:return l=e.sent(),[2,new I.TwoFactorDuoResponse(l)]}})})},n.prototype.getTwoFactorOrganizationDuo=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/organizations/"+n+"/two-factor/get-duo",l,!0,!0)];case 1:return e=t.sent(),[2,new I.TwoFactorDuoResponse(e)]}})})},n.prototype.getTwoFactorYubiKey=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-yubikey",n,!0,!0)];case 1:return l=e.sent(),[2,new E.TwoFactorYubiKeyResponse(l)]}})})},n.prototype.getTwoFactorU2f=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-u2f",n,!0,!0)];case 1:return l=e.sent(),[2,new N.TwoFactorU2fResponse(l)]}})})},n.prototype.getTwoFactorU2fChallenge=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-u2f-challenge",n,!0,!0)];case 1:return l=e.sent(),[2,new N.ChallengeResponse(l)]}})})},n.prototype.getTwoFactorRecover=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-recover",n,!0,!0)];case 1:return l=e.sent(),[2,new O.TwoFactorRecoverResponse(l)]}})})},n.prototype.putTwoFactorAuthenticator=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/authenticator",n,!0,!0)];case 1:return l=e.sent(),[2,new R.TwoFactorAuthenticatorResponse(l)]}})})},n.prototype.putTwoFactorEmail=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/email",n,!0,!0)];case 1:return l=e.sent(),[2,new k.TwoFactorEmailResponse(l)]}})})},n.prototype.putTwoFactorDuo=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/duo",n,!0,!0)];case 1:return l=e.sent(),[2,new I.TwoFactorDuoResponse(l)]}})})},n.prototype.putTwoFactorOrganizationDuo=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/two-factor/duo",l,!0,!0)];case 1:return e=t.sent(),[2,new I.TwoFactorDuoResponse(e)]}})})},n.prototype.putTwoFactorYubiKey=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/yubikey",n,!0,!0)];case 1:return l=e.sent(),[2,new E.TwoFactorYubiKeyResponse(l)]}})})},n.prototype.putTwoFactorU2f=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/u2f",n,!0,!0)];case 1:return l=e.sent(),[2,new N.TwoFactorU2fResponse(l)]}})})},n.prototype.deleteTwoFactorU2f=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("DELETE","/two-factor/u2f",n,!0,!0)];case 1:return l=e.sent(),[2,new N.TwoFactorU2fResponse(l)]}})})},n.prototype.putTwoFactorDisable=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/disable",n,!0,!0)];case 1:return l=e.sent(),[2,new A.TwoFactorProviderResponse(l)]}})})},n.prototype.putTwoFactorOrganizationDisable=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/two-factor/disable",l,!0,!0)];case 1:return e=t.sent(),[2,new A.TwoFactorProviderResponse(e)]}})})},n.prototype.postTwoFactorRecover=function(n){return this.send("POST","/two-factor/recover",n,!1,!1)},n.prototype.postTwoFactorEmailSetup=function(n){return this.send("POST","/two-factor/send-email",n,!0,!1)},n.prototype.postTwoFactorEmail=function(n){return this.send("POST","/two-factor/send-email-login",n,!1,!1)},n.prototype.getOrganization=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n,null,!0,!0)];case 1:return l=e.sent(),[2,new y.OrganizationResponse(l)]}})})},n.prototype.getOrganizationBilling=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/billing",null,!0,!0)];case 1:return l=e.sent(),[2,new m.OrganizationBillingResponse(l)]}})})},n.prototype.getOrganizationLicense=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){return[2,this.send("GET","/organizations/"+n+"/license?installationId="+l,null,!0,!0)]})})},n.prototype.postOrganization=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/organizations",n,!0,!0)];case 1:return l=e.sent(),[2,new y.OrganizationResponse(l)]}})})},n.prototype.putOrganization=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n,l,!0,!0)];case 1:return e=t.sent(),[2,new y.OrganizationResponse(e)]}})})},n.prototype.postLeaveOrganization=function(n){return this.send("POST","/organizations/"+n+"/leave",null,!0,!1)},n.prototype.postOrganizationLicense=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/organizations/license",n,!0,!0)];case 1:return l=e.sent(),[2,new y.OrganizationResponse(l)]}})})},n.prototype.postOrganizationLicenseUpdate=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){return[2,this.send("POST","/organizations/"+n+"/license",l,!0,!1)]})})},n.prototype.postOrganizationSeat=function(n,l){return this.send("POST","/organizations/"+n+"/seat",l,!0,!1)},n.prototype.postOrganizationStorage=function(n,l){return this.send("POST","/organizations/"+n+"/storage",l,!0,!1)},n.prototype.postOrganizationPayment=function(n,l){return this.send("POST","/organizations/"+n+"/payment",l,!0,!1)},n.prototype.postOrganizationVerifyBank=function(n,l){return this.send("POST","/organizations/"+n+"/verify-bank",l,!0,!1)},n.prototype.postOrganizationCancel=function(n){return this.send("POST","/organizations/"+n+"/cancel",null,!0,!1)},n.prototype.postOrganizationReinstate=function(n){return this.send("POST","/organizations/"+n+"/reinstate",null,!0,!1)},n.prototype.deleteOrganization=function(n,l){return this.send("DELETE","/organizations/"+n,l,!0,!1)},n.prototype.getEvents=function(n,l,e){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/events",n,l,e),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getEventsCipher=function(n,l,e,o){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/ciphers/"+n+"/events",l,e,o),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getEventsOrganization=function(n,l,e,o){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/organizations/"+n+"/events",l,e,o),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getEventsOrganizationUser=function(n,l,e,o,r){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/organizations/"+n+"/users/"+l+"/events",e,o,r),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getUserPublicKey=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/users/"+n+"/public-key",null,!0,!0)];case 1:return l=e.sent(),[2,new T.UserKeyResponse(l)]}})})},n.prototype.getActiveBearerToken=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:return[4,this.tokenService.getToken()];case 1:return n=e.sent(),this.tokenService.tokenNeedsRefresh()?[4,this.doRefreshToken()]:[3,3];case 2:l=e.sent(),n=l.accessToken,e.label=3;case 3:return[2,n]}})})},n.prototype.fetch=function(n){return"GET"===n.method&&(n.headers.set("Cache-Control","no-cache"),n.headers.set("Pragma","no-cache")),fetch(n)},n.prototype.send=function(n,l,e,o,r){return t(this,void 0,void 0,function(){var t,i,a,s,d;return u(this,function(u){switch(u.label){case 0:return t=new Headers({"Device-Type":this.deviceType}),i={cache:"no-cache",credentials:this.getCredentials(),method:n},o?[4,this.getActiveBearerToken()]:[3,2];case 1:a=u.sent(),t.set("Authorization","Bearer "+a),u.label=2;case 2:return null!=e&&("string"==typeof e?(i.body=e,t.set("Content-Type","application/x-www-form-urlencoded; charset=utf-8")):"object"==typeof e&&(e instanceof FormData?i.body=e:(t.set("Content-Type","application/json; charset=utf-8"),i.body=JSON.stringify(e)))),r&&t.set("Accept","application/json"),i.headers=t,[4,this.fetch(new Request(this.apiBaseUrl+l,i))];case 3:return s=u.sent(),r&&200===s.status?[4,s.json()]:[3,5];case 4:return[2,u.sent()];case 5:return 200===s.status?[3,7]:[4,this.handleError(s,!1)];case 6:return d=u.sent(),[2,Promise.reject(d)];case 7:return[2]}})})},n.prototype.handleError=function(n,l){return t(this,void 0,void 0,function(){var e,t;return u(this,function(u){switch(u.label){case 0:return l&&400===n.status||401===n.status||403===n.status?[4,this.logoutCallback(!0)]:[3,2];case 1:return u.sent(),[2,null];case 2:return e=null,null!=(t=n.headers.get("content-type"))&&t.indexOf("application/json")>-1?[4,n.json()]:[3,4];case 3:e=u.sent(),u.label=4;case 4:return[2,new d.ErrorResponse(e,n.status,l)]}})})},n.prototype.doRefreshToken=function(){return t(this,void 0,void 0,function(){var n,l,e,t,o,r;return u(this,function(u){switch(u.label){case 0:return[4,this.tokenService.getRefreshToken()];case 1:if(null==(n=u.sent())||""===n)throw new Error;return l=this.tokenService.decodeToken(),[4,this.fetch(new Request(this.identityBaseUrl+"/connect/token",{body:this.qsStringify({grant_type:"refresh_token",client_id:l.client_id,refresh_token:n}),cache:"no-cache",credentials:this.getCredentials(),headers:new Headers({"Content-Type":"application/x-www-form-urlencoded; charset=utf-8",Accept:"application/json","Device-Type":this.deviceType}),method:"POST"}))];case 2:return 200!==(e=u.sent()).status?[3,5]:[4,e.json()];case 3:return t=u.sent(),o=new v.IdentityTokenResponse(t),[4,this.tokenService.setTokens(o.accessToken,o.refreshToken)];case 4:return u.sent(),[2,o];case 5:return[4,this.handleError(e,!0)];case 6:return r=u.sent(),[2,Promise.reject(r)]}})})},n.prototype.qsStringify=function(n){return Object.keys(n).map(function(l){return encodeURIComponent(l)+"="+encodeURIComponent(n[l])}).join("&")},n.prototype.getCredentials=function(){if(!this.isWebClient||this.usingBaseUrl)return"include"},n.prototype.addEventParameters=function(n,l,e,t){return null!=l&&(n+="?start="+l),null!=e&&(n+=n.indexOf("?")>-1?"&":"?",n+="end="+e),null!=t&&(n+=n.indexOf("?")>-1?"&":"?",n+="continuationToken="+t),n},n}();l.ApiService=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.charges=[],this.storageName=n.StorageName,this.storageGb=n.StorageGb,this.maxStorageGb=n.MaxStorageGb,this.paymentSource=null==n.PaymentSource?null:new u(n.PaymentSource),this.subscription=null==n.Subscription?null:new o(n.Subscription),this.upcomingInvoice=null==n.UpcomingInvoice?null:new i(n.UpcomingInvoice),null!=n.Charges&&(this.charges=n.Charges.map(function(n){return new a(n)})),this.license=n.License,this.expiration=n.Expiration}}();l.BillingResponse=t;var u=function(){return function(n){this.type=n.Type,this.cardBrand=n.CardBrand,this.description=n.Description,this.needsVerification=n.NeedsVerification}}();l.BillingSourceResponse=u;var o=function(){return function(n){this.items=[],this.trialEndDate=n.TrialStartDate,this.trialEndDate=n.TrialEndDate,this.periodStartDate=n.PeriodStartDate,this.periodEndDate=n.PeriodEndDate,this.cancelledDate=n.CancelledDate,this.cancelAtEndDate=n.CancelAtEndDate,this.status=n.Status,this.cancelled=n.Cancelled,null!=n.Items&&(this.items=n.Items.map(function(n){return new r(n)}))}}();l.BillingSubscriptionResponse=o;var r=function(){return function(n){this.name=n.Name,this.amount=n.Amount,this.quantity=n.Quantity,this.interval=n.Interval}}();l.BillingSubscriptionItemResponse=r;var i=function(){return function(n){this.date=n.Date,this.amount=n.Amount}}();l.BillingInvoiceResponse=i;var a=function(){return function(n){this.createdDate=n.CreatedDate,this.amount=n.Amount,this.paymentSource=null!=n.PaymentSource?new u(n.PaymentSource):null,this.status=n.Status,this.failureMessage=n.FailureMessage,this.refunded=n.Refunded,this.partiallyRefunded=n.PartiallyRefunded,this.refundedAmount=n.RefundedAmount,this.invoiceId=n.InvoiceId}}();l.BillingChargeResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(916),u=e(917),o=e(918),r=e(919),i=e(920),a=e(921),s=e(923),d=function(){return function(n){var l=this;this.id=n.Id,this.organizationId=n.OrganizationId,this.folderId=n.FolderId||null,this.type=n.Type,this.name=n.Name,this.notes=n.Notes,this.favorite=n.Favorite||!1,this.edit=n.Edit||!0,this.organizationUseTotp=n.OrganizationUseTotp,this.revisionDate=n.RevisionDate,null!=n.Login&&(this.login=new a.LoginApi(n.Login)),null!=n.Card&&(this.card=new o.CardApi(n.Card)),null!=n.Identity&&(this.identity=new i.IdentityApi(n.Identity)),null!=n.SecureNote&&(this.secureNote=new s.SecureNoteApi(n.SecureNote)),null!=n.Fields&&(this.fields=[],n.Fields.forEach(function(n){l.fields.push(new r.FieldApi(n))})),null!=n.Attachments&&(this.attachments=[],n.Attachments.forEach(function(n){l.attachments.push(new t.AttachmentResponse(n))})),null!=n.PasswordHistory&&(this.passwordHistory=[],n.PasswordHistory.forEach(function(n){l.passwordHistory.push(new u.PasswordHistoryResponse(n))})),n.CollectionIds&&(this.collectionIds=[],n.CollectionIds.forEach(function(n){l.collectionIds.push(n)}))}}();l.CipherResponse=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(264),o=function(){return function(n){this.id=n.Id,this.organizationId=n.OrganizationId,this.name=n.Name}}();l.CollectionResponse=o;var r=function(n){function l(l){var e=n.call(this,l)||this;return e.readOnly=l.ReadOnly||!1,e}return t(l,n),l}(o);l.CollectionDetailsResponse=r;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.groups=[],null!=l.Groups&&(e.groups=l.Groups.map(function(n){return new u.SelectionReadOnlyResponse(n)})),e}return t(l,n),l}(o);l.CollectionGroupDetailsResponse=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(924),u=function(){return function(n){var l=this;this.globalEquivalentDomains=[],this.equivalentDomains=n.EquivalentDomains,this.globalEquivalentDomains=[],n.GlobalEquivalentDomains&&n.GlobalEquivalentDomains.forEach(function(n){l.globalEquivalentDomains.push(new t.GlobalDomainResponse(n))})}}();l.DomainsResponse=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.name=n.Name,this.revisionDate=n.RevisionDate}}();l.FolderResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.name=n.Name,this.businessName=n.BusinessName,this.businessAddress1=n.BusinessAddress1,this.businessAddress2=n.BusinessAddress2,this.businessAddress3=n.BusinessAddress3,this.businessCountry=n.BusinessCountry,this.businessTaxNumber=n.BusinessTaxNumber,this.billingEmail=n.BillingEmail,this.plan=n.Plan,this.planType=n.PlanType,this.seats=n.Seats,this.maxCollections=n.MaxCollections,this.maxStorageGb=n.MaxStorageGb,this.useGroups=n.UseGroups,this.useDirectory=n.UseDirectory,this.useEvents=n.UseEvents,this.useTotp=n.UseTotp,this.use2fa=n.Use2fa}}();l.OrganizationResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(934),u=function(){return function(n){var l=this;this.organizations=[],this.id=n.Id,this.name=n.Name,this.email=n.Email,this.emailVerified=n.EmailVerified,this.masterPasswordHint=n.MasterPasswordHint,this.premium=n.Premium,this.culture=n.Culture,this.twoFactorEnabled=n.TwoFactorEnabled,this.key=n.Key,this.privateKey=n.PrivateKey,this.securityStamp=n.SecurityStamp,n.Organizations&&n.Organizations.forEach(function(n){l.organizations.push(new t.ProfileOrganizationResponse(n))})}}();l.ProfileResponse=u},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=0;i--)(u=n[i])&&(r=(o<3?u(r):o>3?u(l,e,r):u(l,e))||r);return o>3&&r&&Object.defineProperty(l,e,r),r},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},o=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]5&&(n.passwordHistory=n.passwordHistory.slice(0,5)),r.label=5;case 5:return(d=new f.Cipher).id=n.id,d.folderId=n.folderId,d.favorite=n.favorite,d.organizationId=n.organizationId,d.type=n.type,d.collectionIds=n.collectionIds,null!=l||null==d.organizationId?[3,7]:[4,this.cryptoService.getOrgKey(d.organizationId)];case 6:if(null==(l=r.sent()))throw new Error("Cannot encrypt cipher for organization. No key.");r.label=7;case 7:return[4,Promise.all([this.encryptObjProperty(n,d,{name:null,notes:null},l),this.encryptCipherData(d,n,l),this.encryptFields(n.fields,l).then(function(n){d.fields=n}),this.encryptPasswordHistories(n.passwordHistory,l).then(function(n){d.passwordHistory=n}),this.encryptAttachments(n.attachments,l).then(function(n){d.attachments=n})])];case 8:return r.sent(),[2,d]}})})},l.prototype.encryptAttachments=function(n,l){return o(this,void 0,void 0,function(){var e,t,u=this;return r(this,function(i){switch(i.label){case 0:return null==n||0===n.length?[2,null]:(e=[],t=[],n.forEach(function(n){return o(u,void 0,void 0,function(){var u,i,a=this;return r(this,function(s){return(u=new c.Attachment).id=n.id,u.size=n.size,u.sizeName=n.sizeName,u.url=n.url,i=this.encryptObjProperty(n,u,{fileName:null},l).then(function(){return o(a,void 0,void 0,function(){var e;return r(this,function(o){switch(o.label){case 0:return null==n.key?[3,2]:(e=u,[4,this.cryptoService.encrypt(n.key.key,l)]);case 1:e.key=o.sent(),o.label=2;case 2:return t.push(u),[2]}})})}),e.push(i),[2]})})}),[4,Promise.all(e)]);case 1:return i.sent(),[2,t]}})})},l.prototype.encryptFields=function(n,l){return o(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:return n&&n.length?(e=this,t=[],[4,n.reduce(function(n,u){return n.then(function(){return e.encryptField(u,l)}).then(function(n){t.push(n)})},Promise.resolve())]):[2,null];case 1:return u.sent(),[2,t]}})})},l.prototype.encryptField=function(n,l){return o(this,void 0,void 0,function(){var e;return r(this,function(t){switch(t.label){case 0:return(e=new v.Field).type=n.type,n.type===a.FieldType.Boolean&&"true"!==n.value&&(n.value="false"),[4,this.encryptObjProperty(n,e,{name:null,value:null},l)];case 1:return t.sent(),[2,e]}})})},l.prototype.encryptPasswordHistories=function(n,l){return o(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:return n&&n.length?(e=this,t=[],[4,n.reduce(function(n,u){return n.then(function(){return e.encryptPasswordHistory(u,l)}).then(function(n){t.push(n)})},Promise.resolve())]):[2,null];case 1:return u.sent(),[2,t]}})})},l.prototype.encryptPasswordHistory=function(n,l){return o(this,void 0,void 0,function(){var e;return r(this,function(t){switch(t.label){case 0:return(e=new y.Password).lastUsedDate=n.lastUsedDate,[4,this.encryptObjProperty(n,e,{password:null},l)];case 1:return t.sent(),[2,e]}})})},l.prototype.get=function(n){return o(this,void 0,void 0,function(){var l,e,t;return r(this,function(u){switch(u.label){case 0:return[4,this.userService.getUserId()];case 1:return l=u.sent(),[4,this.storageService.get(T)];case 2:return e=u.sent(),[4,this.storageService.get(E+l)];case 3:return null!=(t=u.sent())&&t.hasOwnProperty(n)?[2,new f.Cipher(t[n],!1,e?e[n]:null)]:[2,null]}})})},l.prototype.getAll=function(){return o(this,void 0,void 0,function(){var n,l,e,t,u;return r(this,function(o){switch(o.label){case 0:return[4,this.userService.getUserId()];case 1:return n=o.sent(),[4,this.storageService.get(T)];case 2:return l=o.sent(),[4,this.storageService.get(E+n)];case 3:for(u in e=o.sent(),t=[],e)e.hasOwnProperty(u)&&t.push(new f.Cipher(e[u],!1,l?l[u]:null));return[2,t]}})})},l.prototype.getAllDecrypted=function(){return o(this,void 0,void 0,function(){var n,l;return r(this,function(e){switch(e.label){case 0:return null!=this.decryptedCipherCache?[2,this.decryptedCipherCache]:(n=[],[4,this.cryptoService.hasKey()]);case 1:if(!e.sent())throw new Error("No key.");return l=[],[4,this.getAll()];case 2:return e.sent().forEach(function(e){l.push(e.decrypt().then(function(l){return n.push(l)}))}),[4,Promise.all(l)];case 3:return e.sent(),n.sort(this.getLocaleSortingFunction()),this.decryptedCipherCache=n,[2,this.decryptedCipherCache]}})})},l.prototype.getAllDecryptedForGrouping=function(n,l){return void 0===l&&(l=!0),o(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return[4,this.getAllDecrypted()];case 1:return[2,e.sent().filter(function(e){return!(!l||e.folderId!==n)||!l&&null!=e.collectionIds&&e.collectionIds.indexOf(n)>-1})]}})})},l.prototype.getAllDecryptedForUrl=function(n,l){return o(this,void 0,void 0,function(){var e,t,u,o;return r(this,function(r){switch(r.label){case 0:return null!=n||l?(e=N.Utils.getDomain(n),t=null==e?Promise.resolve([]):this.settingsService.getEquivalentDomains().then(function(n){var l=[];return n.forEach(function(n){n.length&&n.indexOf(e)>=0&&(l=l.concat(n))}),l.length||l.push(e),l}),[4,Promise.all([t,this.getAllDecrypted()])]):[2,Promise.resolve([])];case 1:return u=r.sent(),o=u[0],[2,u[1].filter(function(t){if(l&&l.indexOf(t.type)>-1)return!0;if(null!=n&&t.type===i.CipherType.Login&&null!=t.login.uris)for(var u=0;u-1){if(!V.has(r.domain))return!0;var a=N.Utils.getHost(n);if(!V.get(r.domain).has(a))return!0}break;case s.UriMatchType.Host:var d=N.Utils.getHost(n);if(null!=d&&d===N.Utils.getHost(r.uri))return!0;break;case s.UriMatchType.Exact:if(n===r.uri)return!0;break;case s.UriMatchType.StartsWith:if(n.startsWith(r.uri))return!0;break;case s.UriMatchType.RegularExpression:try{if(new RegExp(r.uri,"i").test(n))return!0}catch(n){}break;case s.UriMatchType.Never:}}return!1})]}})})},l.prototype.getAllFromApiForOrganization=function(n){return o(this,void 0,void 0,function(){var l,e,t;return r(this,function(u){switch(u.label){case 0:return[4,this.apiService.getCiphersOrganization(n)];case 1:return null!=(l=u.sent())&&null!=l.data&&l.data.length?(e=[],t=[],l.data.forEach(function(n){var l=new d.CipherData(n),u=new f.Cipher(l);t.push(u.decrypt().then(function(n){return e.push(n)}))}),[4,Promise.all(t)]):[3,3];case 2:return u.sent(),e.sort(this.getLocaleSortingFunction()),[2,e];case 3:return[2,[]]}})})},l.prototype.getLastUsedForUrl=function(n){return o(this,void 0,void 0,function(){var l;return r(this,function(e){switch(e.label){case 0:return[4,this.getAllDecryptedForUrl(n)];case 1:return 0===(l=e.sent()).length?[2,null]:[2,l.sort(this.sortCiphersByLastUsed)[0]]}})})},l.prototype.updateLastUsedDate=function(n){return o(this,void 0,void 0,function(){var l,e,t;return r(this,function(u){switch(u.label){case 0:return[4,this.storageService.get(T)];case 1:return(l=u.sent())||(l={}),l[n]?l[n].lastUsedDate=(new Date).getTime():l[n]={lastUsedDate:(new Date).getTime()},[4,this.storageService.save(T,l)];case 2:if(u.sent(),null==this.decryptedCipherCache)return[2];for(e=0;et?-1:null!=t&&null==e?1:0},l.prototype.sortCiphersByLastUsedThenName=function(n,l){var e=this.sortCiphersByLastUsed(n,l);return 0!==e?e:this.getLocaleSortingFunction()(n,l)},l.prototype.getLocaleSortingFunction=function(){var n=this;return function(l,e){var t=l.name,u=e.name;if(null==t&&null!=u)return-1;if(null!=t&&null==u)return 1;if(null==t&&null==u)return 0;var o=n.i18nService.collator?n.i18nService.collator.compare(t,u):t.localeCompare(u);return 0!==o||l.type!==i.CipherType.Login||e.type!==i.CipherType.Login?o:(null!=l.login.username&&(t+=l.login.username),null!=e.login.username&&(u+=e.login.username),n.i18nService.collator?n.i18nService.collator.compare(t,u):t.localeCompare(u))}},l.prototype.shareAttachmentWithServer=function(l,e,t){return o(this,void 0,void 0,function(){var u,o,i,a,s,d,c,p,f,v;return r(this,function(r){switch(r.label){case 0:return[4,fetch(new Request(l.url,{cache:"no-cache"}))];case 1:if(200!==(u=r.sent()).status)throw Error("Failed to download attachment: "+u.status.toString());return[4,u.arrayBuffer()];case 2:return o=r.sent(),[4,this.cryptoService.decryptFromBytes(o,null)];case 3:return i=r.sent(),[4,this.cryptoService.getOrgKey(t)];case 4:return a=r.sent(),[4,this.cryptoService.encrypt(l.fileName,a)];case 5:return s=r.sent(),[4,this.cryptoService.makeEncKey(a)];case 6:return d=r.sent(),[4,this.cryptoService.encryptToBytes(i,d[0])];case 7:c=r.sent(),p=new FormData;try{p.append("key",d[1].encryptedString),f=new Blob([c],{type:"application/octet-stream"}),p.append("data",f,s.encryptedString)}catch(l){if(!N.Utils.isNode||N.Utils.isBrowser)throw l;p.append("key",d[1].encryptedString),p.append("data",n.from(c),{filepath:s.encryptedString,contentType:"application/octet-stream"})}r.label=8;case 8:return r.trys.push([8,10,,11]),[4,this.apiService.postShareCipherAttachment(e,l.id,p,t)];case 9:return r.sent(),[3,11];case 10:throw v=r.sent(),new Error(v.getSingleMessage());case 11:return[2]}})})},l.prototype.encryptObjProperty=function(n,l,e,t){return o(this,void 0,void 0,function(){var u,o,i;return r(this,function(r){switch(r.label){case 0:for(i in u=[],o=this,e)e.hasOwnProperty(i)&&function(l,r){var i=Promise.resolve().then(function(){var u=n[e[l]||l];return u&&""!==u?o.cryptoService.encrypt(u,t):null}).then(function(n){r[l]=n});u.push(i)}(i,l);return[4,Promise.all(u)];case 1:return r.sent(),[2]}})})},l.prototype.encryptCipherData=function(n,l,e){return o(this,void 0,void 0,function(){var t,u;return r(this,function(o){switch(o.label){case 0:switch(n.type){case i.CipherType.Login:return[3,1];case i.CipherType.SecureNote:return[3,7];case i.CipherType.Card:return[3,8];case i.CipherType.Identity:return[3,10]}return[3,12];case 1:return n.login=new g.Login,n.login.passwordRevisionDate=l.login.passwordRevisionDate,[4,this.encryptObjProperty(l.login,n.login,{username:null,password:null,totp:null},e)];case 2:if(o.sent(),null==l.login.uris)return[3,6];n.login.uris=[],t=0,o.label=3;case 3:return t0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=0;i--)(u=n[i])&&(r=(o<3?u(r):o>3?u(l,e,r):u(l,e))||r);return o>3&&r&&Object.defineProperty(l,e,r),r},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},o=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?[2,this.orgKeys]:[4,this.storageService.get(y)];case 1:if(null==(n=r.sent()))return[2,null];for(u in l=new Map,e=!1,t=[],n)t.push(u);o=0,r.label=2;case 2:return o53)throw new Error("We cannot generate numbers larger than 53 bits.");return o=Math.ceil(u/8),i=Math.pow(2,u)-1,s=Uint8Array.bind,[4,this.cryptoFunctionService.randomBytes(o)];case 1:for(a=new(s.apply(Uint8Array,[void 0,r.sent()])),d=8*(o-1),c=0;c=t?[2,this.randomNumber(n,l)]:[2,n+e]}})})},n.prototype.aesEncrypt=function(n,l){return o(this,void 0,void 0,function(){var e,t,u,o,i,a;return r(this,function(r){switch(r.label){case 0:return e=new c.EncryptedObject,t=e,[4,this.getKeyForEncryption(l)];case 1:return t.key=r.sent(),u=e,[4,this.cryptoFunctionService.randomBytes(16)];case 2:return u.iv=r.sent(),o=e,[4,this.cryptoFunctionService.aesEncrypt(n,e.iv,e.key.encKey)];case 3:return o.data=r.sent(),null==e.key.macKey?[3,5]:((i=new Uint8Array(e.iv.byteLength+e.data.byteLength)).set(new Uint8Array(e.iv),0),i.set(new Uint8Array(e.data),e.iv.byteLength),a=e,[4,this.cryptoFunctionService.hmac(i.buffer,e.key.macKey,"sha256")]);case 4:a.mac=r.sent(),r.label=5;case 5:return[2,e]}})})},n.prototype.aesDecryptToUtf8=function(n,l,e,t,u){return o(this,void 0,void 0,function(){var o,i,a,s;return r(this,function(r){switch(r.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return o=r.sent(),null!=(i=this.resolveLegacyKey(n,o)).macKey&&null==t?(console.error("mac required."),[2,null]):i.encType!==n?(console.error("encType unavailable."),[2,null]):null==(a=this.cryptoFunctionService.aesDecryptFastParameters(l,e,t,i)).macKey||null==a.mac?[3,4]:[4,this.cryptoFunctionService.hmacFast(a.macData,a.macKey,"sha256")];case 2:return s=r.sent(),[4,this.cryptoFunctionService.compareFast(a.mac,s)];case 3:if(!r.sent())return console.error("mac failed."),[2,null];r.label=4;case 4:return[2,this.cryptoFunctionService.aesDecryptFast(a)]}})})},n.prototype.aesDecryptToBytes=function(n,l,e,t,u){return o(this,void 0,void 0,function(){var o,i,a,s;return r(this,function(r){switch(r.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return o=r.sent(),null!=(i=this.resolveLegacyKey(n,o)).macKey&&null==t?[2,null]:i.encType!==n?[2,null]:null==i.macKey||null==t?[3,4]:((a=new Uint8Array(e.byteLength+l.byteLength)).set(new Uint8Array(e),0),a.set(new Uint8Array(l),e.byteLength),[4,this.cryptoFunctionService.hmac(a.buffer,i.macKey,"sha256")]);case 2:return null===(s=r.sent())?[2,null]:[4,this.cryptoFunctionService.compare(t,s)];case 3:if(!r.sent())return console.error("mac failed."),[2,null];r.label=4;case 4:return[4,this.cryptoFunctionService.aesDecrypt(l,e,i.encKey)];case 5:return[2,r.sent()]}})})},n.prototype.rsaDecrypt=function(n){return o(this,void 0,void 0,function(){var l,e,t,u,o,i;return r(this,function(r){switch(r.label){case 0:if(l=n.split("."),e=null,1===l.length)e=a.EncryptionType.Rsa2048_OaepSha256_B64,t=[l[0]];else if(2===l.length)try{e=parseInt(l[0],null),t=l[1].split("|")}catch(n){}switch(e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}if(null==t||t.length<=0)throw new Error("encPieces unavailable.");return u=h.Utils.fromB64ToArray(t[0]).buffer,[4,this.getPrivateKey()];case 1:if(null==(o=r.sent()))throw new Error("No private key.");switch(i="sha1",e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:i="sha256";break;case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}return[2,this.cryptoFunctionService.rsaDecrypt(u,o,i)]}})})},n.prototype.getKeyForEncryption=function(n){return o(this,void 0,void 0,function(){var l;return r(this,function(e){switch(e.label){case 0:return null!=n?[2,n]:[4,this.getEncKey()];case 1:return null!=(l=e.sent())?[2,l]:[4,this.getKey()];case 2:return[2,e.sent()]}})})},n.prototype.resolveLegacyKey=function(n,l){return n===a.EncryptionType.AesCbc128_HmacSha256_B64&&l.encType===a.EncryptionType.AesCbc256_B64?(null==this.legacyEtmKey&&(this.legacyEtmKey=new p.SymmetricCryptoKey(l.key,a.EncryptionType.AesCbc128_HmacSha256_B64)),this.legacyEtmKey):l},n.prototype.stretchKey=function(n){return o(this,void 0,void 0,function(){var l,e,t,u,o;return r(this,function(r){switch(r.label){case 0:return l=new Uint8Array(64),t=(e=l).set,[4,this.hkdfExpand(n.key,h.Utils.fromUtf8ToArray("enc"),32)];case 1:return t.apply(e,[r.sent()]),o=(u=l).set,[4,this.hkdfExpand(n.key,h.Utils.fromUtf8ToArray("mac"),32)];case 2:return o.apply(u,[r.sent(),32]),[2,new p.SymmetricCryptoKey(l.buffer)]}})})},n.prototype.hkdfExpand=function(n,l,e){return o(this,void 0,void 0,function(){var t,u,o,i,a,s,d;return r(this,function(r){switch(r.label){case 0:t=32,u=new Uint8Array(e),o=new Uint8Array(0),i=Math.ceil(e/t),a=0,r.label=1;case 1:return ao)throw new Error("Output entropy of hash function is too small");for(a=[],s=i.fromArray(u,256);t--;)d=s.mod(g.EEFLongWordList.length),s=s.divide(g.EEFLongWordList.length),a.push(g.EEFLongWordList[d]);return[2,a]})})},n.prototype.buildEncKey=function(n,l){return void 0===l&&(l=null),o(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:return e=null,32!==n.key.byteLength?[3,3]:[4,this.stretchKey(n)];case 1:return t=u.sent(),[4,this.encrypt(l,t)];case 2:return e=u.sent(),[3,6];case 3:return 64!==n.key.byteLength?[3,5]:[4,this.encrypt(l,n)];case 4:return e=u.sent(),[3,6];case 5:throw new Error("Invalid key size.");case 6:return[2,[new p.SymmetricCryptoKey(l),e]]}})})},t([v.sequentialize(S),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getEncKey",null),t([v.sequentialize(_),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getOrgKeys",null),n}();l.CryptoService=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),l.EEFLongWordList=["abacus","abdomen","abdominal","abide","abiding","ability","ablaze","able","abnormal","abrasion","abrasive","abreast","abridge","abroad","abruptly","absence","absentee","absently","absinthe","absolute","absolve","abstain","abstract","absurd","accent","acclaim","acclimate","accompany","account","accuracy","accurate","accustom","acetone","achiness","aching","acid","acorn","acquaint","acquire","acre","acrobat","acronym","acting","action","activate","activator","active","activism","activist","activity","actress","acts","acutely","acuteness","aeration","aerobics","aerosol","aerospace","afar","affair","affected","affecting","affection","affidavit","affiliate","affirm","affix","afflicted","affluent","afford","affront","aflame","afloat","aflutter","afoot","afraid","afterglow","afterlife","aftermath","aftermost","afternoon","aged","ageless","agency","agenda","agent","aggregate","aghast","agile","agility","aging","agnostic","agonize","agonizing","agony","agreeable","agreeably","agreed","agreeing","agreement","aground","ahead","ahoy","aide","aids","aim","ajar","alabaster","alarm","albatross","album","alfalfa","algebra","algorithm","alias","alibi","alienable","alienate","aliens","alike","alive","alkaline","alkalize","almanac","almighty","almost","aloe","aloft","aloha","alone","alongside","aloof","alphabet","alright","although","altitude","alto","aluminum","alumni","always","amaretto","amaze","amazingly","amber","ambiance","ambiguity","ambiguous","ambition","ambitious","ambulance","ambush","amendable","amendment","amends","amenity","amiable","amicably","amid","amigo","amino","amiss","ammonia","ammonium","amnesty","amniotic","among","amount","amperage","ample","amplifier","amplify","amply","amuck","amulet","amusable","amused","amusement","amuser","amusing","anaconda","anaerobic","anagram","anatomist","anatomy","anchor","anchovy","ancient","android","anemia","anemic","aneurism","anew","angelfish","angelic","anger","angled","angler","angles","angling","angrily","angriness","anguished","angular","animal","animate","animating","animation","animator","anime","animosity","ankle","annex","annotate","announcer","annoying","annually","annuity","anointer","another","answering","antacid","antarctic","anteater","antelope","antennae","anthem","anthill","anthology","antibody","antics","antidote","antihero","antiquely","antiques","antiquity","antirust","antitoxic","antitrust","antiviral","antivirus","antler","antonym","antsy","anvil","anybody","anyhow","anymore","anyone","anyplace","anything","anytime","anyway","anywhere","aorta","apache","apostle","appealing","appear","appease","appeasing","appendage","appendix","appetite","appetizer","applaud","applause","apple","appliance","applicant","applied","apply","appointee","appraisal","appraiser","apprehend","approach","approval","approve","apricot","april","apron","aptitude","aptly","aqua","aqueduct","arbitrary","arbitrate","ardently","area","arena","arguable","arguably","argue","arise","armadillo","armband","armchair","armed","armful","armhole","arming","armless","armoire","armored","armory","armrest","army","aroma","arose","around","arousal","arrange","array","arrest","arrival","arrive","arrogance","arrogant","arson","art","ascend","ascension","ascent","ascertain","ashamed","ashen","ashes","ashy","aside","askew","asleep","asparagus","aspect","aspirate","aspire","aspirin","astonish","astound","astride","astrology","astronaut","astronomy","astute","atlantic","atlas","atom","atonable","atop","atrium","atrocious","atrophy","attach","attain","attempt","attendant","attendee","attention","attentive","attest","attic","attire","attitude","attractor","attribute","atypical","auction","audacious","audacity","audible","audibly","audience","audio","audition","augmented","august","authentic","author","autism","autistic","autograph","automaker","automated","automatic","autopilot","available","avalanche","avatar","avenge","avenging","avenue","average","aversion","avert","aviation","aviator","avid","avoid","await","awaken","award","aware","awhile","awkward","awning","awoke","awry","axis","babble","babbling","babied","baboon","backache","backboard","backboned","backdrop","backed","backer","backfield","backfire","backhand","backing","backlands","backlash","backless","backlight","backlit","backlog","backpack","backpedal","backrest","backroom","backshift","backside","backslid","backspace","backspin","backstab","backstage","backtalk","backtrack","backup","backward","backwash","backwater","backyard","bacon","bacteria","bacterium","badass","badge","badland","badly","badness","baffle","baffling","bagel","bagful","baggage","bagged","baggie","bagginess","bagging","baggy","bagpipe","baguette","baked","bakery","bakeshop","baking","balance","balancing","balcony","balmy","balsamic","bamboo","banana","banish","banister","banjo","bankable","bankbook","banked","banker","banking","banknote","bankroll","banner","bannister","banshee","banter","barbecue","barbed","barbell","barber","barcode","barge","bargraph","barista","baritone","barley","barmaid","barman","barn","barometer","barrack","barracuda","barrel","barrette","barricade","barrier","barstool","bartender","barterer","bash","basically","basics","basil","basin","basis","basket","batboy","batch","bath","baton","bats","battalion","battered","battering","battery","batting","battle","bauble","bazooka","blabber","bladder","blade","blah","blame","blaming","blanching","blandness","blank","blaspheme","blasphemy","blast","blatancy","blatantly","blazer","blazing","bleach","bleak","bleep","blemish","blend","bless","blighted","blimp","bling","blinked","blinker","blinking","blinks","blip","blissful","blitz","blizzard","bloated","bloating","blob","blog","bloomers","blooming","blooper","blot","blouse","blubber","bluff","bluish","blunderer","blunt","blurb","blurred","blurry","blurt","blush","blustery","boaster","boastful","boasting","boat","bobbed","bobbing","bobble","bobcat","bobsled","bobtail","bodacious","body","bogged","boggle","bogus","boil","bok","bolster","bolt","bonanza","bonded","bonding","bondless","boned","bonehead","boneless","bonelike","boney","bonfire","bonnet","bonsai","bonus","bony","boogeyman","boogieman","book","boondocks","booted","booth","bootie","booting","bootlace","bootleg","boots","boozy","borax","boring","borough","borrower","borrowing","boss","botanical","botanist","botany","botch","both","bottle","bottling","bottom","bounce","bouncing","bouncy","bounding","boundless","bountiful","bovine","boxcar","boxer","boxing","boxlike","boxy","breach","breath","breeches","breeching","breeder","breeding","breeze","breezy","brethren","brewery","brewing","briar","bribe","brick","bride","bridged","brigade","bright","brilliant","brim","bring","brink","brisket","briskly","briskness","bristle","brittle","broadband","broadcast","broaden","broadly","broadness","broadside","broadways","broiler","broiling","broken","broker","bronchial","bronco","bronze","bronzing","brook","broom","brought","browbeat","brownnose","browse","browsing","bruising","brunch","brunette","brunt","brush","brussels","brute","brutishly","bubble","bubbling","bubbly","buccaneer","bucked","bucket","buckle","buckshot","buckskin","bucktooth","buckwheat","buddhism","buddhist","budding","buddy","budget","buffalo","buffed","buffer","buffing","buffoon","buggy","bulb","bulge","bulginess","bulgur","bulk","bulldog","bulldozer","bullfight","bullfrog","bullhorn","bullion","bullish","bullpen","bullring","bullseye","bullwhip","bully","bunch","bundle","bungee","bunion","bunkbed","bunkhouse","bunkmate","bunny","bunt","busboy","bush","busily","busload","bust","busybody","buzz","cabana","cabbage","cabbie","cabdriver","cable","caboose","cache","cackle","cacti","cactus","caddie","caddy","cadet","cadillac","cadmium","cage","cahoots","cake","calamari","calamity","calcium","calculate","calculus","caliber","calibrate","calm","caloric","calorie","calzone","camcorder","cameo","camera","camisole","camper","campfire","camping","campsite","campus","canal","canary","cancel","candied","candle","candy","cane","canine","canister","cannabis","canned","canning","cannon","cannot","canola","canon","canopener","canopy","canteen","canyon","capable","capably","capacity","cape","capillary","capital","capitol","capped","capricorn","capsize","capsule","caption","captivate","captive","captivity","capture","caramel","carat","caravan","carbon","cardboard","carded","cardiac","cardigan","cardinal","cardstock","carefully","caregiver","careless","caress","caretaker","cargo","caring","carless","carload","carmaker","carnage","carnation","carnival","carnivore","carol","carpenter","carpentry","carpool","carport","carried","carrot","carrousel","carry","cartel","cartload","carton","cartoon","cartridge","cartwheel","carve","carving","carwash","cascade","case","cash","casing","casino","casket","cassette","casually","casualty","catacomb","catalog","catalyst","catalyze","catapult","cataract","catatonic","catcall","catchable","catcher","catching","catchy","caterer","catering","catfight","catfish","cathedral","cathouse","catlike","catnap","catnip","catsup","cattail","cattishly","cattle","catty","catwalk","caucasian","caucus","causal","causation","cause","causing","cauterize","caution","cautious","cavalier","cavalry","caviar","cavity","cedar","celery","celestial","celibacy","celibate","celtic","cement","census","ceramics","ceremony","certainly","certainty","certified","certify","cesarean","cesspool","chafe","chaffing","chain","chair","chalice","challenge","chamber","chamomile","champion","chance","change","channel","chant","chaos","chaperone","chaplain","chapped","chaps","chapter","character","charbroil","charcoal","charger","charging","chariot","charity","charm","charred","charter","charting","chase","chasing","chaste","chastise","chastity","chatroom","chatter","chatting","chatty","cheating","cheddar","cheek","cheer","cheese","cheesy","chef","chemicals","chemist","chemo","cherisher","cherub","chess","chest","chevron","chevy","chewable","chewer","chewing","chewy","chief","chihuahua","childcare","childhood","childish","childless","childlike","chili","chill","chimp","chip","chirping","chirpy","chitchat","chivalry","chive","chloride","chlorine","choice","chokehold","choking","chomp","chooser","choosing","choosy","chop","chosen","chowder","chowtime","chrome","chubby","chuck","chug","chummy","chump","chunk","churn","chute","cider","cilantro","cinch","cinema","cinnamon","circle","circling","circular","circulate","circus","citable","citadel","citation","citizen","citric","citrus","city","civic","civil","clad","claim","clambake","clammy","clamor","clamp","clamshell","clang","clanking","clapped","clapper","clapping","clarify","clarinet","clarity","clash","clasp","class","clatter","clause","clavicle","claw","clay","clean","clear","cleat","cleaver","cleft","clench","clergyman","clerical","clerk","clever","clicker","client","climate","climatic","cling","clinic","clinking","clip","clique","cloak","clobber","clock","clone","cloning","closable","closure","clothes","clothing","cloud","clover","clubbed","clubbing","clubhouse","clump","clumsily","clumsy","clunky","clustered","clutch","clutter","coach","coagulant","coastal","coaster","coasting","coastland","coastline","coat","coauthor","cobalt","cobbler","cobweb","cocoa","coconut","cod","coeditor","coerce","coexist","coffee","cofounder","cognition","cognitive","cogwheel","coherence","coherent","cohesive","coil","coke","cola","cold","coleslaw","coliseum","collage","collapse","collar","collected","collector","collide","collie","collision","colonial","colonist","colonize","colony","colossal","colt","coma","come","comfort","comfy","comic","coming","comma","commence","commend","comment","commerce","commode","commodity","commodore","common","commotion","commute","commuting","compacted","compacter","compactly","compactor","companion","company","compare","compel","compile","comply","component","composed","composer","composite","compost","composure","compound","compress","comprised","computer","computing","comrade","concave","conceal","conceded","concept","concerned","concert","conch","concierge","concise","conclude","concrete","concur","condense","condiment","condition","condone","conducive","conductor","conduit","cone","confess","confetti","confidant","confident","confider","confiding","configure","confined","confining","confirm","conflict","conform","confound","confront","confused","confusing","confusion","congenial","congested","congrats","congress","conical","conjoined","conjure","conjuror","connected","connector","consensus","consent","console","consoling","consonant","constable","constant","constrain","constrict","construct","consult","consumer","consuming","contact","container","contempt","contend","contented","contently","contents","contest","context","contort","contour","contrite","control","contusion","convene","convent","copartner","cope","copied","copier","copilot","coping","copious","copper","copy","coral","cork","cornball","cornbread","corncob","cornea","corned","corner","cornfield","cornflake","cornhusk","cornmeal","cornstalk","corny","coronary","coroner","corporal","corporate","corral","correct","corridor","corrode","corroding","corrosive","corsage","corset","cortex","cosigner","cosmetics","cosmic","cosmos","cosponsor","cost","cottage","cotton","couch","cough","could","countable","countdown","counting","countless","country","county","courier","covenant","cover","coveted","coveting","coyness","cozily","coziness","cozy","crabbing","crabgrass","crablike","crabmeat","cradle","cradling","crafter","craftily","craftsman","craftwork","crafty","cramp","cranberry","crane","cranial","cranium","crank","crate","crave","craving","crawfish","crawlers","crawling","crayfish","crayon","crazed","crazily","craziness","crazy","creamed","creamer","creamlike","crease","creasing","creatable","create","creation","creative","creature","credible","credibly","credit","creed","creme","creole","crepe","crept","crescent","crested","cresting","crestless","crevice","crewless","crewman","crewmate","crib","cricket","cried","crier","crimp","crimson","cringe","cringing","crinkle","crinkly","crisped","crisping","crisply","crispness","crispy","criteria","critter","croak","crock","crook","croon","crop","cross","crouch","crouton","crowbar","crowd","crown","crucial","crudely","crudeness","cruelly","cruelness","cruelty","crumb","crummiest","crummy","crumpet","crumpled","cruncher","crunching","crunchy","crusader","crushable","crushed","crusher","crushing","crust","crux","crying","cryptic","crystal","cubbyhole","cube","cubical","cubicle","cucumber","cuddle","cuddly","cufflink","culinary","culminate","culpable","culprit","cultivate","cultural","culture","cupbearer","cupcake","cupid","cupped","cupping","curable","curator","curdle","cure","curfew","curing","curled","curler","curliness","curling","curly","curry","curse","cursive","cursor","curtain","curtly","curtsy","curvature","curve","curvy","cushy","cusp","cussed","custard","custodian","custody","customary","customer","customize","customs","cut","cycle","cyclic","cycling","cyclist","cylinder","cymbal","cytoplasm","cytoplast","dab","dad","daffodil","dagger","daily","daintily","dainty","dairy","daisy","dallying","dance","dancing","dandelion","dander","dandruff","dandy","danger","dangle","dangling","daredevil","dares","daringly","darkened","darkening","darkish","darkness","darkroom","darling","darn","dart","darwinism","dash","dastardly","data","datebook","dating","daughter","daunting","dawdler","dawn","daybed","daybreak","daycare","daydream","daylight","daylong","dayroom","daytime","dazzler","dazzling","deacon","deafening","deafness","dealer","dealing","dealmaker","dealt","dean","debatable","debate","debating","debit","debrief","debtless","debtor","debug","debunk","decade","decaf","decal","decathlon","decay","deceased","deceit","deceiver","deceiving","december","decency","decent","deception","deceptive","decibel","decidable","decimal","decimeter","decipher","deck","declared","decline","decode","decompose","decorated","decorator","decoy","decrease","decree","dedicate","dedicator","deduce","deduct","deed","deem","deepen","deeply","deepness","deface","defacing","defame","default","defeat","defection","defective","defendant","defender","defense","defensive","deferral","deferred","defiance","defiant","defile","defiling","define","definite","deflate","deflation","deflator","deflected","deflector","defog","deforest","defraud","defrost","deftly","defuse","defy","degraded","degrading","degrease","degree","dehydrate","deity","dejected","delay","delegate","delegator","delete","deletion","delicacy","delicate","delicious","delighted","delirious","delirium","deliverer","delivery","delouse","delta","deluge","delusion","deluxe","demanding","demeaning","demeanor","demise","democracy","democrat","demote","demotion","demystify","denatured","deniable","denial","denim","denote","dense","density","dental","dentist","denture","deny","deodorant","deodorize","departed","departure","depict","deplete","depletion","deplored","deploy","deport","depose","depraved","depravity","deprecate","depress","deprive","depth","deputize","deputy","derail","deranged","derby","derived","desecrate","deserve","deserving","designate","designed","designer","designing","deskbound","desktop","deskwork","desolate","despair","despise","despite","destiny","destitute","destruct","detached","detail","detection","detective","detector","detention","detergent","detest","detonate","detonator","detoxify","detract","deuce","devalue","deviancy","deviant","deviate","deviation","deviator","device","devious","devotedly","devotee","devotion","devourer","devouring","devoutly","dexterity","dexterous","diabetes","diabetic","diabolic","diagnoses","diagnosis","diagram","dial","diameter","diaper","diaphragm","diary","dice","dicing","dictate","dictation","dictator","difficult","diffused","diffuser","diffusion","diffusive","dig","dilation","diligence","diligent","dill","dilute","dime","diminish","dimly","dimmed","dimmer","dimness","dimple","diner","dingbat","dinghy","dinginess","dingo","dingy","dining","dinner","diocese","dioxide","diploma","dipped","dipper","dipping","directed","direction","directive","directly","directory","direness","dirtiness","disabled","disagree","disallow","disarm","disarray","disaster","disband","disbelief","disburse","discard","discern","discharge","disclose","discolor","discount","discourse","discover","discuss","disdain","disengage","disfigure","disgrace","dish","disinfect","disjoin","disk","dislike","disliking","dislocate","dislodge","disloyal","dismantle","dismay","dismiss","dismount","disobey","disorder","disown","disparate","disparity","dispatch","dispense","dispersal","dispersed","disperser","displace","display","displease","disposal","dispose","disprove","dispute","disregard","disrupt","dissuade","distance","distant","distaste","distill","distinct","distort","distract","distress","district","distrust","ditch","ditto","ditzy","dividable","divided","dividend","dividers","dividing","divinely","diving","divinity","divisible","divisibly","division","divisive","divorcee","dizziness","dizzy","doable","docile","dock","doctrine","document","dodge","dodgy","doily","doing","dole","dollar","dollhouse","dollop","dolly","dolphin","domain","domelike","domestic","dominion","dominoes","donated","donation","donator","donor","donut","doodle","doorbell","doorframe","doorknob","doorman","doormat","doornail","doorpost","doorstep","doorstop","doorway","doozy","dork","dormitory","dorsal","dosage","dose","dotted","doubling","douche","dove","down","dowry","doze","drab","dragging","dragonfly","dragonish","dragster","drainable","drainage","drained","drainer","drainpipe","dramatic","dramatize","drank","drapery","drastic","draw","dreaded","dreadful","dreadlock","dreamboat","dreamily","dreamland","dreamless","dreamlike","dreamt","dreamy","drearily","dreary","drench","dress","drew","dribble","dried","drier","drift","driller","drilling","drinkable","drinking","dripping","drippy","drivable","driven","driver","driveway","driving","drizzle","drizzly","drone","drool","droop","drop-down","dropbox","dropkick","droplet","dropout","dropper","drove","drown","drowsily","drudge","drum","dry","dubbed","dubiously","duchess","duckbill","ducking","duckling","ducktail","ducky","duct","dude","duffel","dugout","duh","duke","duller","dullness","duly","dumping","dumpling","dumpster","duo","dupe","duplex","duplicate","duplicity","durable","durably","duration","duress","during","dusk","dust","dutiful","duty","duvet","dwarf","dweeb","dwelled","dweller","dwelling","dwindle","dwindling","dynamic","dynamite","dynasty","dyslexia","dyslexic","each","eagle","earache","eardrum","earflap","earful","earlobe","early","earmark","earmuff","earphone","earpiece","earplugs","earring","earshot","earthen","earthlike","earthling","earthly","earthworm","earthy","earwig","easeful","easel","easiest","easily","easiness","easing","eastbound","eastcoast","easter","eastward","eatable","eaten","eatery","eating","eats","ebay","ebony","ebook","ecard","eccentric","echo","eclair","eclipse","ecologist","ecology","economic","economist","economy","ecosphere","ecosystem","edge","edginess","edging","edgy","edition","editor","educated","education","educator","eel","effective","effects","efficient","effort","eggbeater","egging","eggnog","eggplant","eggshell","egomaniac","egotism","egotistic","either","eject","elaborate","elastic","elated","elbow","eldercare","elderly","eldest","electable","election","elective","elephant","elevate","elevating","elevation","elevator","eleven","elf","eligible","eligibly","eliminate","elite","elitism","elixir","elk","ellipse","elliptic","elm","elongated","elope","eloquence","eloquent","elsewhere","elude","elusive","elves","email","embargo","embark","embassy","embattled","embellish","ember","embezzle","emblaze","emblem","embody","embolism","emboss","embroider","emcee","emerald","emergency","emission","emit","emote","emoticon","emotion","empathic","empathy","emperor","emphases","emphasis","emphasize","emphatic","empirical","employed","employee","employer","emporium","empower","emptier","emptiness","empty","emu","enable","enactment","enamel","enchanted","enchilada","encircle","enclose","enclosure","encode","encore","encounter","encourage","encroach","encrust","encrypt","endanger","endeared","endearing","ended","ending","endless","endnote","endocrine","endorphin","endorse","endowment","endpoint","endurable","endurance","enduring","energetic","energize","energy","enforced","enforcer","engaged","engaging","engine","engorge","engraved","engraver","engraving","engross","engulf","enhance","enigmatic","enjoyable","enjoyably","enjoyer","enjoying","enjoyment","enlarged","enlarging","enlighten","enlisted","enquirer","enrage","enrich","enroll","enslave","ensnare","ensure","entail","entangled","entering","entertain","enticing","entire","entitle","entity","entomb","entourage","entrap","entree","entrench","entrust","entryway","entwine","enunciate","envelope","enviable","enviably","envious","envision","envoy","envy","enzyme","epic","epidemic","epidermal","epidermis","epidural","epilepsy","epileptic","epilogue","epiphany","episode","equal","equate","equation","equator","equinox","equipment","equity","equivocal","eradicate","erasable","erased","eraser","erasure","ergonomic","errand","errant","erratic","error","erupt","escalate","escalator","escapable","escapade","escapist","escargot","eskimo","esophagus","espionage","espresso","esquire","essay","essence","essential","establish","estate","esteemed","estimate","estimator","estranged","estrogen","etching","eternal","eternity","ethanol","ether","ethically","ethics","euphemism","evacuate","evacuee","evade","evaluate","evaluator","evaporate","evasion","evasive","even","everglade","evergreen","everybody","everyday","everyone","evict","evidence","evident","evil","evoke","evolution","evolve","exact","exalted","example","excavate","excavator","exceeding","exception","excess","exchange","excitable","exciting","exclaim","exclude","excluding","exclusion","exclusive","excretion","excretory","excursion","excusable","excusably","excuse","exemplary","exemplify","exemption","exerciser","exert","exes","exfoliate","exhale","exhaust","exhume","exile","existing","exit","exodus","exonerate","exorcism","exorcist","expand","expanse","expansion","expansive","expectant","expedited","expediter","expel","expend","expenses","expensive","expert","expire","expiring","explain","expletive","explicit","explode","exploit","explore","exploring","exponent","exporter","exposable","expose","exposure","express","expulsion","exquisite","extended","extending","extent","extenuate","exterior","external","extinct","extortion","extradite","extras","extrovert","extrude","extruding","exuberant","fable","fabric","fabulous","facebook","facecloth","facedown","faceless","facelift","faceplate","faceted","facial","facility","facing","facsimile","faction","factoid","factor","factsheet","factual","faculty","fade","fading","failing","falcon","fall","false","falsify","fame","familiar","family","famine","famished","fanatic","fancied","fanciness","fancy","fanfare","fang","fanning","fantasize","fantastic","fantasy","fascism","fastball","faster","fasting","fastness","faucet","favorable","favorably","favored","favoring","favorite","fax","feast","federal","fedora","feeble","feed","feel","feisty","feline","felt-tip","feminine","feminism","feminist","feminize","femur","fence","fencing","fender","ferment","fernlike","ferocious","ferocity","ferret","ferris","ferry","fervor","fester","festival","festive","festivity","fetal","fetch","fever","fiber","fiction","fiddle","fiddling","fidelity","fidgeting","fidgety","fifteen","fifth","fiftieth","fifty","figment","figure","figurine","filing","filled","filler","filling","film","filter","filth","filtrate","finale","finalist","finalize","finally","finance","financial","finch","fineness","finer","finicky","finished","finisher","finishing","finite","finless","finlike","fiscally","fit","five","flaccid","flagman","flagpole","flagship","flagstick","flagstone","flail","flakily","flaky","flame","flammable","flanked","flanking","flannels","flap","flaring","flashback","flashbulb","flashcard","flashily","flashing","flashy","flask","flatbed","flatfoot","flatly","flatness","flatten","flattered","flatterer","flattery","flattop","flatware","flatworm","flavored","flavorful","flavoring","flaxseed","fled","fleshed","fleshy","flick","flier","flight","flinch","fling","flint","flip","flirt","float","flock","flogging","flop","floral","florist","floss","flounder","flyable","flyaway","flyer","flying","flyover","flypaper","foam","foe","fog","foil","folic","folk","follicle","follow","fondling","fondly","fondness","fondue","font","food","fool","footage","football","footbath","footboard","footer","footgear","foothill","foothold","footing","footless","footman","footnote","footpad","footpath","footprint","footrest","footsie","footsore","footwear","footwork","fossil","foster","founder","founding","fountain","fox","foyer","fraction","fracture","fragile","fragility","fragment","fragrance","fragrant","frail","frame","framing","frantic","fraternal","frayed","fraying","frays","freckled","freckles","freebase","freebee","freebie","freedom","freefall","freehand","freeing","freeload","freely","freemason","freeness","freestyle","freeware","freeway","freewill","freezable","freezing","freight","french","frenzied","frenzy","frequency","frequent","fresh","fretful","fretted","friction","friday","fridge","fried","friend","frighten","frightful","frigidity","frigidly","frill","fringe","frisbee","frisk","fritter","frivolous","frolic","from","front","frostbite","frosted","frostily","frosting","frostlike","frosty","froth","frown","frozen","fructose","frugality","frugally","fruit","frustrate","frying","gab","gaffe","gag","gainfully","gaining","gains","gala","gallantly","galleria","gallery","galley","gallon","gallows","gallstone","galore","galvanize","gambling","game","gaming","gamma","gander","gangly","gangrene","gangway","gap","garage","garbage","garden","gargle","garland","garlic","garment","garnet","garnish","garter","gas","gatherer","gathering","gating","gauging","gauntlet","gauze","gave","gawk","gazing","gear","gecko","geek","geiger","gem","gender","generic","generous","genetics","genre","gentile","gentleman","gently","gents","geography","geologic","geologist","geology","geometric","geometry","geranium","gerbil","geriatric","germicide","germinate","germless","germproof","gestate","gestation","gesture","getaway","getting","getup","giant","gibberish","giblet","giddily","giddiness","giddy","gift","gigabyte","gigahertz","gigantic","giggle","giggling","giggly","gigolo","gilled","gills","gimmick","girdle","giveaway","given","giver","giving","gizmo","gizzard","glacial","glacier","glade","gladiator","gladly","glamorous","glamour","glance","glancing","glandular","glare","glaring","glass","glaucoma","glazing","gleaming","gleeful","glider","gliding","glimmer","glimpse","glisten","glitch","glitter","glitzy","gloater","gloating","gloomily","gloomy","glorified","glorifier","glorify","glorious","glory","gloss","glove","glowing","glowworm","glucose","glue","gluten","glutinous","glutton","gnarly","gnat","goal","goatskin","goes","goggles","going","goldfish","goldmine","goldsmith","golf","goliath","gonad","gondola","gone","gong","good","gooey","goofball","goofiness","goofy","google","goon","gopher","gore","gorged","gorgeous","gory","gosling","gossip","gothic","gotten","gout","gown","grab","graceful","graceless","gracious","gradation","graded","grader","gradient","grading","gradually","graduate","graffiti","grafted","grafting","grain","granddad","grandkid","grandly","grandma","grandpa","grandson","granite","granny","granola","grant","granular","grape","graph","grapple","grappling","grasp","grass","gratified","gratify","grating","gratitude","gratuity","gravel","graveness","graves","graveyard","gravitate","gravity","gravy","gray","grazing","greasily","greedily","greedless","greedy","green","greeter","greeting","grew","greyhound","grid","grief","grievance","grieving","grievous","grill","grimace","grimacing","grime","griminess","grimy","grinch","grinning","grip","gristle","grit","groggily","groggy","groin","groom","groove","grooving","groovy","grope","ground","grouped","grout","grove","grower","growing","growl","grub","grudge","grudging","grueling","gruffly","grumble","grumbling","grumbly","grumpily","grunge","grunt","guacamole","guidable","guidance","guide","guiding","guileless","guise","gulf","gullible","gully","gulp","gumball","gumdrop","gumminess","gumming","gummy","gurgle","gurgling","guru","gush","gusto","gusty","gutless","guts","gutter","guy","guzzler","gyration","habitable","habitant","habitat","habitual","hacked","hacker","hacking","hacksaw","had","haggler","haiku","half","halogen","halt","halved","halves","hamburger","hamlet","hammock","hamper","hamster","hamstring","handbag","handball","handbook","handbrake","handcart","handclap","handclasp","handcraft","handcuff","handed","handful","handgrip","handgun","handheld","handiness","handiwork","handlebar","handled","handler","handling","handmade","handoff","handpick","handprint","handrail","handsaw","handset","handsfree","handshake","handstand","handwash","handwork","handwoven","handwrite","handyman","hangnail","hangout","hangover","hangup","hankering","hankie","hanky","haphazard","happening","happier","happiest","happily","happiness","happy","harbor","hardcopy","hardcore","hardcover","harddisk","hardened","hardener","hardening","hardhat","hardhead","hardiness","hardly","hardness","hardship","hardware","hardwired","hardwood","hardy","harmful","harmless","harmonica","harmonics","harmonize","harmony","harness","harpist","harsh","harvest","hash","hassle","haste","hastily","hastiness","hasty","hatbox","hatchback","hatchery","hatchet","hatching","hatchling","hate","hatless","hatred","haunt","haven","hazard","hazelnut","hazily","haziness","hazing","hazy","headache","headband","headboard","headcount","headdress","headed","header","headfirst","headgear","heading","headlamp","headless","headlock","headphone","headpiece","headrest","headroom","headscarf","headset","headsman","headstand","headstone","headway","headwear","heap","heat","heave","heavily","heaviness","heaving","hedge","hedging","heftiness","hefty","helium","helmet","helper","helpful","helping","helpless","helpline","hemlock","hemstitch","hence","henchman","henna","herald","herbal","herbicide","herbs","heritage","hermit","heroics","heroism","herring","herself","hertz","hesitancy","hesitant","hesitate","hexagon","hexagram","hubcap","huddle","huddling","huff","hug","hula","hulk","hull","human","humble","humbling","humbly","humid","humiliate","humility","humming","hummus","humongous","humorist","humorless","humorous","humpback","humped","humvee","hunchback","hundredth","hunger","hungrily","hungry","hunk","hunter","hunting","huntress","huntsman","hurdle","hurled","hurler","hurling","hurray","hurricane","hurried","hurry","hurt","husband","hush","husked","huskiness","hut","hybrid","hydrant","hydrated","hydration","hydrogen","hydroxide","hyperlink","hypertext","hyphen","hypnoses","hypnosis","hypnotic","hypnotism","hypnotist","hypnotize","hypocrisy","hypocrite","ibuprofen","ice","iciness","icing","icky","icon","icy","idealism","idealist","idealize","ideally","idealness","identical","identify","identity","ideology","idiocy","idiom","idly","igloo","ignition","ignore","iguana","illicitly","illusion","illusive","image","imaginary","imagines","imaging","imbecile","imitate","imitation","immature","immerse","immersion","imminent","immobile","immodest","immorally","immortal","immovable","immovably","immunity","immunize","impaired","impale","impart","impatient","impeach","impeding","impending","imperfect","imperial","impish","implant","implement","implicate","implicit","implode","implosion","implosive","imply","impolite","important","importer","impose","imposing","impotence","impotency","impotent","impound","imprecise","imprint","imprison","impromptu","improper","improve","improving","improvise","imprudent","impulse","impulsive","impure","impurity","iodine","iodize","ion","ipad","iphone","ipod","irate","irk","iron","irregular","irrigate","irritable","irritably","irritant","irritate","islamic","islamist","isolated","isolating","isolation","isotope","issue","issuing","italicize","italics","item","itinerary","itunes","ivory","ivy","jab","jackal","jacket","jackknife","jackpot","jailbird","jailbreak","jailer","jailhouse","jalapeno","jam","janitor","january","jargon","jarring","jasmine","jaundice","jaunt","java","jawed","jawless","jawline","jaws","jaybird","jaywalker","jazz","jeep","jeeringly","jellied","jelly","jersey","jester","jet","jiffy","jigsaw","jimmy","jingle","jingling","jinx","jitters","jittery","job","jockey","jockstrap","jogger","jogging","john","joining","jokester","jokingly","jolliness","jolly","jolt","jot","jovial","joyfully","joylessly","joyous","joyride","joystick","jubilance","jubilant","judge","judgingly","judicial","judiciary","judo","juggle","juggling","jugular","juice","juiciness","juicy","jujitsu","jukebox","july","jumble","jumbo","jump","junction","juncture","june","junior","juniper","junkie","junkman","junkyard","jurist","juror","jury","justice","justifier","justify","justly","justness","juvenile","kabob","kangaroo","karaoke","karate","karma","kebab","keenly","keenness","keep","keg","kelp","kennel","kept","kerchief","kerosene","kettle","kick","kiln","kilobyte","kilogram","kilometer","kilowatt","kilt","kimono","kindle","kindling","kindly","kindness","kindred","kinetic","kinfolk","king","kinship","kinsman","kinswoman","kissable","kisser","kissing","kitchen","kite","kitten","kitty","kiwi","kleenex","knapsack","knee","knelt","knickers","knoll","koala","kooky","kosher","krypton","kudos","kung","labored","laborer","laboring","laborious","labrador","ladder","ladies","ladle","ladybug","ladylike","lagged","lagging","lagoon","lair","lake","lance","landed","landfall","landfill","landing","landlady","landless","landline","landlord","landmark","landmass","landmine","landowner","landscape","landside","landslide","language","lankiness","lanky","lantern","lapdog","lapel","lapped","lapping","laptop","lard","large","lark","lash","lasso","last","latch","late","lather","latitude","latrine","latter","latticed","launch","launder","laundry","laurel","lavender","lavish","laxative","lazily","laziness","lazy","lecturer","left","legacy","legal","legend","legged","leggings","legible","legibly","legislate","lego","legroom","legume","legwarmer","legwork","lemon","lend","length","lens","lent","leotard","lesser","letdown","lethargic","lethargy","letter","lettuce","level","leverage","levers","levitate","levitator","liability","liable","liberty","librarian","library","licking","licorice","lid","life","lifter","lifting","liftoff","ligament","likely","likeness","likewise","liking","lilac","lilly","lily","limb","limeade","limelight","limes","limit","limping","limpness","line","lingo","linguini","linguist","lining","linked","linoleum","linseed","lint","lion","lip","liquefy","liqueur","liquid","lisp","list","litigate","litigator","litmus","litter","little","livable","lived","lively","liver","livestock","lividly","living","lizard","lubricant","lubricate","lucid","luckily","luckiness","luckless","lucrative","ludicrous","lugged","lukewarm","lullaby","lumber","luminance","luminous","lumpiness","lumping","lumpish","lunacy","lunar","lunchbox","luncheon","lunchroom","lunchtime","lung","lurch","lure","luridness","lurk","lushly","lushness","luster","lustfully","lustily","lustiness","lustrous","lusty","luxurious","luxury","lying","lyrically","lyricism","lyricist","lyrics","macarena","macaroni","macaw","mace","machine","machinist","magazine","magenta","maggot","magical","magician","magma","magnesium","magnetic","magnetism","magnetize","magnifier","magnify","magnitude","magnolia","mahogany","maimed","majestic","majesty","majorette","majority","makeover","maker","makeshift","making","malformed","malt","mama","mammal","mammary","mammogram","manager","managing","manatee","mandarin","mandate","mandatory","mandolin","manger","mangle","mango","mangy","manhandle","manhole","manhood","manhunt","manicotti","manicure","manifesto","manila","mankind","manlike","manliness","manly","manmade","manned","mannish","manor","manpower","mantis","mantra","manual","many","map","marathon","marauding","marbled","marbles","marbling","march","mardi","margarine","margarita","margin","marigold","marina","marine","marital","maritime","marlin","marmalade","maroon","married","marrow","marry","marshland","marshy","marsupial","marvelous","marxism","mascot","masculine","mashed","mashing","massager","masses","massive","mastiff","matador","matchbook","matchbox","matcher","matching","matchless","material","maternal","maternity","math","mating","matriarch","matrimony","matrix","matron","matted","matter","maturely","maturing","maturity","mauve","maverick","maximize","maximum","maybe","mayday","mayflower","moaner","moaning","mobile","mobility","mobilize","mobster","mocha","mocker","mockup","modified","modify","modular","modulator","module","moisten","moistness","moisture","molar","molasses","mold","molecular","molecule","molehill","mollusk","mom","monastery","monday","monetary","monetize","moneybags","moneyless","moneywise","mongoose","mongrel","monitor","monkhood","monogamy","monogram","monologue","monopoly","monorail","monotone","monotype","monoxide","monsieur","monsoon","monstrous","monthly","monument","moocher","moodiness","moody","mooing","moonbeam","mooned","moonlight","moonlike","moonlit","moonrise","moonscape","moonshine","moonstone","moonwalk","mop","morale","morality","morally","morbidity","morbidly","morphine","morphing","morse","mortality","mortally","mortician","mortified","mortify","mortuary","mosaic","mossy","most","mothball","mothproof","motion","motivate","motivator","motive","motocross","motor","motto","mountable","mountain","mounted","mounting","mourner","mournful","mouse","mousiness","moustache","mousy","mouth","movable","move","movie","moving","mower","mowing","much","muck","mud","mug","mulberry","mulch","mule","mulled","mullets","multiple","multiply","multitask","multitude","mumble","mumbling","mumbo","mummified","mummify","mummy","mumps","munchkin","mundane","municipal","muppet","mural","murkiness","murky","murmuring","muscular","museum","mushily","mushiness","mushroom","mushy","music","musket","muskiness","musky","mustang","mustard","muster","mustiness","musty","mutable","mutate","mutation","mute","mutilated","mutilator","mutiny","mutt","mutual","muzzle","myself","myspace","mystified","mystify","myth","nacho","nag","nail","name","naming","nanny","nanometer","nape","napkin","napped","napping","nappy","narrow","nastily","nastiness","national","native","nativity","natural","nature","naturist","nautical","navigate","navigator","navy","nearby","nearest","nearly","nearness","neatly","neatness","nebula","nebulizer","nectar","negate","negation","negative","neglector","negligee","negligent","negotiate","nemeses","nemesis","neon","nephew","nerd","nervous","nervy","nest","net","neurology","neuron","neurosis","neurotic","neuter","neutron","never","next","nibble","nickname","nicotine","niece","nifty","nimble","nimbly","nineteen","ninetieth","ninja","nintendo","ninth","nuclear","nuclei","nucleus","nugget","nullify","number","numbing","numbly","numbness","numeral","numerate","numerator","numeric","numerous","nuptials","nursery","nursing","nurture","nutcase","nutlike","nutmeg","nutrient","nutshell","nuttiness","nutty","nuzzle","nylon","oaf","oak","oasis","oat","obedience","obedient","obituary","object","obligate","obliged","oblivion","oblivious","oblong","obnoxious","oboe","obscure","obscurity","observant","observer","observing","obsessed","obsession","obsessive","obsolete","obstacle","obstinate","obstruct","obtain","obtrusive","obtuse","obvious","occultist","occupancy","occupant","occupier","occupy","ocean","ocelot","octagon","octane","october","octopus","ogle","oil","oink","ointment","okay","old","olive","olympics","omega","omen","ominous","omission","omit","omnivore","onboard","oncoming","ongoing","onion","online","onlooker","only","onscreen","onset","onshore","onslaught","onstage","onto","onward","onyx","oops","ooze","oozy","opacity","opal","open","operable","operate","operating","operation","operative","operator","opium","opossum","opponent","oppose","opposing","opposite","oppressed","oppressor","opt","opulently","osmosis","other","otter","ouch","ought","ounce","outage","outback","outbid","outboard","outbound","outbreak","outburst","outcast","outclass","outcome","outdated","outdoors","outer","outfield","outfit","outflank","outgoing","outgrow","outhouse","outing","outlast","outlet","outline","outlook","outlying","outmatch","outmost","outnumber","outplayed","outpost","outpour","output","outrage","outrank","outreach","outright","outscore","outsell","outshine","outshoot","outsider","outskirts","outsmart","outsource","outspoken","outtakes","outthink","outward","outweigh","outwit","oval","ovary","oven","overact","overall","overarch","overbid","overbill","overbite","overblown","overboard","overbook","overbuilt","overcast","overcoat","overcome","overcook","overcrowd","overdraft","overdrawn","overdress","overdrive","overdue","overeager","overeater","overexert","overfed","overfeed","overfill","overflow","overfull","overgrown","overhand","overhang","overhaul","overhead","overhear","overheat","overhung","overjoyed","overkill","overlabor","overlaid","overlap","overlay","overload","overlook","overlord","overlying","overnight","overpass","overpay","overplant","overplay","overpower","overprice","overrate","overreach","overreact","override","overripe","overrule","overrun","overshoot","overshot","oversight","oversized","oversleep","oversold","overspend","overstate","overstay","overstep","overstock","overstuff","oversweet","overtake","overthrow","overtime","overtly","overtone","overture","overturn","overuse","overvalue","overview","overwrite","owl","oxford","oxidant","oxidation","oxidize","oxidizing","oxygen","oxymoron","oyster","ozone","paced","pacemaker","pacific","pacifier","pacifism","pacifist","pacify","padded","padding","paddle","paddling","padlock","pagan","pager","paging","pajamas","palace","palatable","palm","palpable","palpitate","paltry","pampered","pamperer","pampers","pamphlet","panama","pancake","pancreas","panda","pandemic","pang","panhandle","panic","panning","panorama","panoramic","panther","pantomime","pantry","pants","pantyhose","paparazzi","papaya","paper","paprika","papyrus","parabola","parachute","parade","paradox","paragraph","parakeet","paralegal","paralyses","paralysis","paralyze","paramedic","parameter","paramount","parasail","parasite","parasitic","parcel","parched","parchment","pardon","parish","parka","parking","parkway","parlor","parmesan","parole","parrot","parsley","parsnip","partake","parted","parting","partition","partly","partner","partridge","party","passable","passably","passage","passcode","passenger","passerby","passing","passion","passive","passivism","passover","passport","password","pasta","pasted","pastel","pastime","pastor","pastrami","pasture","pasty","patchwork","patchy","paternal","paternity","path","patience","patient","patio","patriarch","patriot","patrol","patronage","patronize","pauper","pavement","paver","pavestone","pavilion","paving","pawing","payable","payback","paycheck","payday","payee","payer","paying","payment","payphone","payroll","pebble","pebbly","pecan","pectin","peculiar","peddling","pediatric","pedicure","pedigree","pedometer","pegboard","pelican","pellet","pelt","pelvis","penalize","penalty","pencil","pendant","pending","penholder","penknife","pennant","penniless","penny","penpal","pension","pentagon","pentagram","pep","perceive","percent","perch","percolate","perennial","perfected","perfectly","perfume","periscope","perish","perjurer","perjury","perkiness","perky","perm","peroxide","perpetual","perplexed","persecute","persevere","persuaded","persuader","pesky","peso","pessimism","pessimist","pester","pesticide","petal","petite","petition","petri","petroleum","petted","petticoat","pettiness","petty","petunia","phantom","phobia","phoenix","phonebook","phoney","phonics","phoniness","phony","phosphate","photo","phrase","phrasing","placard","placate","placidly","plank","planner","plant","plasma","plaster","plastic","plated","platform","plating","platinum","platonic","platter","platypus","plausible","plausibly","playable","playback","player","playful","playgroup","playhouse","playing","playlist","playmaker","playmate","playoff","playpen","playroom","playset","plaything","playtime","plaza","pleading","pleat","pledge","plentiful","plenty","plethora","plexiglas","pliable","plod","plop","plot","plow","ploy","pluck","plug","plunder","plunging","plural","plus","plutonium","plywood","poach","pod","poem","poet","pogo","pointed","pointer","pointing","pointless","pointy","poise","poison","poker","poking","polar","police","policy","polio","polish","politely","polka","polo","polyester","polygon","polygraph","polymer","poncho","pond","pony","popcorn","pope","poplar","popper","poppy","popsicle","populace","popular","populate","porcupine","pork","porous","porridge","portable","portal","portfolio","porthole","portion","portly","portside","poser","posh","posing","possible","possibly","possum","postage","postal","postbox","postcard","posted","poster","posting","postnasal","posture","postwar","pouch","pounce","pouncing","pound","pouring","pout","powdered","powdering","powdery","power","powwow","pox","praising","prance","prancing","pranker","prankish","prankster","prayer","praying","preacher","preaching","preachy","preamble","precinct","precise","precision","precook","precut","predator","predefine","predict","preface","prefix","preflight","preformed","pregame","pregnancy","pregnant","preheated","prelaunch","prelaw","prelude","premiere","premises","premium","prenatal","preoccupy","preorder","prepaid","prepay","preplan","preppy","preschool","prescribe","preseason","preset","preshow","president","presoak","press","presume","presuming","preteen","pretended","pretender","pretense","pretext","pretty","pretzel","prevail","prevalent","prevent","preview","previous","prewar","prewashed","prideful","pried","primal","primarily","primary","primate","primer","primp","princess","print","prior","prism","prison","prissy","pristine","privacy","private","privatize","prize","proactive","probable","probably","probation","probe","probing","probiotic","problem","procedure","process","proclaim","procreate","procurer","prodigal","prodigy","produce","product","profane","profanity","professed","professor","profile","profound","profusely","progeny","prognosis","program","progress","projector","prologue","prolonged","promenade","prominent","promoter","promotion","prompter","promptly","prone","prong","pronounce","pronto","proofing","proofread","proofs","propeller","properly","property","proponent","proposal","propose","props","prorate","protector","protegee","proton","prototype","protozoan","protract","protrude","proud","provable","proved","proven","provided","provider","providing","province","proving","provoke","provoking","provolone","prowess","prowler","prowling","proximity","proxy","prozac","prude","prudishly","prune","pruning","pry","psychic","public","publisher","pucker","pueblo","pug","pull","pulmonary","pulp","pulsate","pulse","pulverize","puma","pumice","pummel","punch","punctual","punctuate","punctured","pungent","punisher","punk","pupil","puppet","puppy","purchase","pureblood","purebred","purely","pureness","purgatory","purge","purging","purifier","purify","purist","puritan","purity","purple","purplish","purposely","purr","purse","pursuable","pursuant","pursuit","purveyor","pushcart","pushchair","pusher","pushiness","pushing","pushover","pushpin","pushup","pushy","putdown","putt","puzzle","puzzling","pyramid","pyromania","python","quack","quadrant","quail","quaintly","quake","quaking","qualified","qualifier","qualify","quality","qualm","quantum","quarrel","quarry","quartered","quarterly","quarters","quartet","quench","query","quicken","quickly","quickness","quicksand","quickstep","quiet","quill","quilt","quintet","quintuple","quirk","quit","quiver","quizzical","quotable","quotation","quote","rabid","race","racing","racism","rack","racoon","radar","radial","radiance","radiantly","radiated","radiation","radiator","radio","radish","raffle","raft","rage","ragged","raging","ragweed","raider","railcar","railing","railroad","railway","raisin","rake","raking","rally","ramble","rambling","ramp","ramrod","ranch","rancidity","random","ranged","ranger","ranging","ranked","ranking","ransack","ranting","rants","rare","rarity","rascal","rash","rasping","ravage","raven","ravine","raving","ravioli","ravishing","reabsorb","reach","reacquire","reaction","reactive","reactor","reaffirm","ream","reanalyze","reappear","reapply","reappoint","reapprove","rearrange","rearview","reason","reassign","reassure","reattach","reawake","rebalance","rebate","rebel","rebirth","reboot","reborn","rebound","rebuff","rebuild","rebuilt","reburial","rebuttal","recall","recant","recapture","recast","recede","recent","recess","recharger","recipient","recital","recite","reckless","reclaim","recliner","reclining","recluse","reclusive","recognize","recoil","recollect","recolor","reconcile","reconfirm","reconvene","recopy","record","recount","recoup","recovery","recreate","rectal","rectangle","rectified","rectify","recycled","recycler","recycling","reemerge","reenact","reenter","reentry","reexamine","referable","referee","reference","refill","refinance","refined","refinery","refining","refinish","reflected","reflector","reflex","reflux","refocus","refold","reforest","reformat","reformed","reformer","reformist","refract","refrain","refreeze","refresh","refried","refueling","refund","refurbish","refurnish","refusal","refuse","refusing","refutable","refute","regain","regalia","regally","reggae","regime","region","register","registrar","registry","regress","regretful","regroup","regular","regulate","regulator","rehab","reheat","rehire","rehydrate","reimburse","reissue","reiterate","rejoice","rejoicing","rejoin","rekindle","relapse","relapsing","relatable","related","relation","relative","relax","relay","relearn","release","relenting","reliable","reliably","reliance","reliant","relic","relieve","relieving","relight","relish","relive","reload","relocate","relock","reluctant","rely","remake","remark","remarry","rematch","remedial","remedy","remember","reminder","remindful","remission","remix","remnant","remodeler","remold","remorse","remote","removable","removal","removed","remover","removing","rename","renderer","rendering","rendition","renegade","renewable","renewably","renewal","renewed","renounce","renovate","renovator","rentable","rental","rented","renter","reoccupy","reoccur","reopen","reorder","repackage","repacking","repaint","repair","repave","repaying","repayment","repeal","repeated","repeater","repent","rephrase","replace","replay","replica","reply","reporter","repose","repossess","repost","repressed","reprimand","reprint","reprise","reproach","reprocess","reproduce","reprogram","reps","reptile","reptilian","repugnant","repulsion","repulsive","repurpose","reputable","reputably","request","require","requisite","reroute","rerun","resale","resample","rescuer","reseal","research","reselect","reseller","resemble","resend","resent","reset","reshape","reshoot","reshuffle","residence","residency","resident","residual","residue","resigned","resilient","resistant","resisting","resize","resolute","resolved","resonant","resonate","resort","resource","respect","resubmit","result","resume","resupply","resurface","resurrect","retail","retainer","retaining","retake","retaliate","retention","rethink","retinal","retired","retiree","retiring","retold","retool","retorted","retouch","retrace","retract","retrain","retread","retreat","retrial","retrieval","retriever","retry","return","retying","retype","reunion","reunite","reusable","reuse","reveal","reveler","revenge","revenue","reverb","revered","reverence","reverend","reversal","reverse","reversing","reversion","revert","revisable","revise","revision","revisit","revivable","revival","reviver","reviving","revocable","revoke","revolt","revolver","revolving","reward","rewash","rewind","rewire","reword","rework","rewrap","rewrite","rhyme","ribbon","ribcage","rice","riches","richly","richness","rickety","ricotta","riddance","ridden","ride","riding","rifling","rift","rigging","rigid","rigor","rimless","rimmed","rind","rink","rinse","rinsing","riot","ripcord","ripeness","ripening","ripping","ripple","rippling","riptide","rise","rising","risk","risotto","ritalin","ritzy","rival","riverbank","riverbed","riverboat","riverside","riveter","riveting","roamer","roaming","roast","robbing","robe","robin","robotics","robust","rockband","rocker","rocket","rockfish","rockiness","rocking","rocklike","rockslide","rockstar","rocky","rogue","roman","romp","rope","roping","roster","rosy","rotten","rotting","rotunda","roulette","rounding","roundish","roundness","roundup","roundworm","routine","routing","rover","roving","royal","rubbed","rubber","rubbing","rubble","rubdown","ruby","ruckus","rudder","rug","ruined","rule","rumble","rumbling","rummage","rumor","runaround","rundown","runner","running","runny","runt","runway","rupture","rural","ruse","rush","rust","rut","sabbath","sabotage","sacrament","sacred","sacrifice","sadden","saddlebag","saddled","saddling","sadly","sadness","safari","safeguard","safehouse","safely","safeness","saffron","saga","sage","sagging","saggy","said","saint","sake","salad","salami","salaried","salary","saline","salon","saloon","salsa","salt","salutary","salute","salvage","salvaging","salvation","same","sample","sampling","sanction","sanctity","sanctuary","sandal","sandbag","sandbank","sandbar","sandblast","sandbox","sanded","sandfish","sanding","sandlot","sandpaper","sandpit","sandstone","sandstorm","sandworm","sandy","sanitary","sanitizer","sank","santa","sapling","sappiness","sappy","sarcasm","sarcastic","sardine","sash","sasquatch","sassy","satchel","satiable","satin","satirical","satisfied","satisfy","saturate","saturday","sauciness","saucy","sauna","savage","savanna","saved","savings","savior","savor","saxophone","say","scabbed","scabby","scalded","scalding","scale","scaling","scallion","scallop","scalping","scam","scandal","scanner","scanning","scant","scapegoat","scarce","scarcity","scarecrow","scared","scarf","scarily","scariness","scarring","scary","scavenger","scenic","schedule","schematic","scheme","scheming","schilling","schnapps","scholar","science","scientist","scion","scoff","scolding","scone","scoop","scooter","scope","scorch","scorebook","scorecard","scored","scoreless","scorer","scoring","scorn","scorpion","scotch","scoundrel","scoured","scouring","scouting","scouts","scowling","scrabble","scraggly","scrambled","scrambler","scrap","scratch","scrawny","screen","scribble","scribe","scribing","scrimmage","script","scroll","scrooge","scrounger","scrubbed","scrubber","scruffy","scrunch","scrutiny","scuba","scuff","sculptor","sculpture","scurvy","scuttle","secluded","secluding","seclusion","second","secrecy","secret","sectional","sector","secular","securely","security","sedan","sedate","sedation","sedative","sediment","seduce","seducing","segment","seismic","seizing","seldom","selected","selection","selective","selector","self","seltzer","semantic","semester","semicolon","semifinal","seminar","semisoft","semisweet","senate","senator","send","senior","senorita","sensation","sensitive","sensitize","sensually","sensuous","sepia","september","septic","septum","sequel","sequence","sequester","series","sermon","serotonin","serpent","serrated","serve","service","serving","sesame","sessions","setback","setting","settle","settling","setup","sevenfold","seventeen","seventh","seventy","severity","shabby","shack","shaded","shadily","shadiness","shading","shadow","shady","shaft","shakable","shakily","shakiness","shaking","shaky","shale","shallot","shallow","shame","shampoo","shamrock","shank","shanty","shape","shaping","share","sharpener","sharper","sharpie","sharply","sharpness","shawl","sheath","shed","sheep","sheet","shelf","shell","shelter","shelve","shelving","sherry","shield","shifter","shifting","shiftless","shifty","shimmer","shimmy","shindig","shine","shingle","shininess","shining","shiny","ship","shirt","shivering","shock","shone","shoplift","shopper","shopping","shoptalk","shore","shortage","shortcake","shortcut","shorten","shorter","shorthand","shortlist","shortly","shortness","shorts","shortwave","shorty","shout","shove","showbiz","showcase","showdown","shower","showgirl","showing","showman","shown","showoff","showpiece","showplace","showroom","showy","shrank","shrapnel","shredder","shredding","shrewdly","shriek","shrill","shrimp","shrine","shrink","shrivel","shrouded","shrubbery","shrubs","shrug","shrunk","shucking","shudder","shuffle","shuffling","shun","shush","shut","shy","siamese","siberian","sibling","siding","sierra","siesta","sift","sighing","silenced","silencer","silent","silica","silicon","silk","silliness","silly","silo","silt","silver","similarly","simile","simmering","simple","simplify","simply","sincere","sincerity","singer","singing","single","singular","sinister","sinless","sinner","sinuous","sip","siren","sister","sitcom","sitter","sitting","situated","situation","sixfold","sixteen","sixth","sixties","sixtieth","sixtyfold","sizable","sizably","size","sizing","sizzle","sizzling","skater","skating","skedaddle","skeletal","skeleton","skeptic","sketch","skewed","skewer","skid","skied","skier","skies","skiing","skilled","skillet","skillful","skimmed","skimmer","skimming","skimpily","skincare","skinhead","skinless","skinning","skinny","skintight","skipper","skipping","skirmish","skirt","skittle","skydiver","skylight","skyline","skype","skyrocket","skyward","slab","slacked","slacker","slacking","slackness","slacks","slain","slam","slander","slang","slapping","slapstick","slashed","slashing","slate","slather","slaw","sled","sleek","sleep","sleet","sleeve","slept","sliceable","sliced","slicer","slicing","slick","slider","slideshow","sliding","slighted","slighting","slightly","slimness","slimy","slinging","slingshot","slinky","slip","slit","sliver","slobbery","slogan","sloped","sloping","sloppily","sloppy","slot","slouching","slouchy","sludge","slug","slum","slurp","slush","sly","small","smartly","smartness","smasher","smashing","smashup","smell","smelting","smile","smilingly","smirk","smite","smith","smitten","smock","smog","smoked","smokeless","smokiness","smoking","smoky","smolder","smooth","smother","smudge","smudgy","smuggler","smuggling","smugly","smugness","snack","snagged","snaking","snap","snare","snarl","snazzy","sneak","sneer","sneeze","sneezing","snide","sniff","snippet","snipping","snitch","snooper","snooze","snore","snoring","snorkel","snort","snout","snowbird","snowboard","snowbound","snowcap","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowiness","snowless","snowman","snowplow","snowshoe","snowstorm","snowsuit","snowy","snub","snuff","snuggle","snugly","snugness","speak","spearfish","spearhead","spearman","spearmint","species","specimen","specked","speckled","specks","spectacle","spectator","spectrum","speculate","speech","speed","spellbind","speller","spelling","spendable","spender","spending","spent","spew","sphere","spherical","sphinx","spider","spied","spiffy","spill","spilt","spinach","spinal","spindle","spinner","spinning","spinout","spinster","spiny","spiral","spirited","spiritism","spirits","spiritual","splashed","splashing","splashy","splatter","spleen","splendid","splendor","splice","splicing","splinter","splotchy","splurge","spoilage","spoiled","spoiler","spoiling","spoils","spoken","spokesman","sponge","spongy","sponsor","spoof","spookily","spooky","spool","spoon","spore","sporting","sports","sporty","spotless","spotlight","spotted","spotter","spotting","spotty","spousal","spouse","spout","sprain","sprang","sprawl","spray","spree","sprig","spring","sprinkled","sprinkler","sprint","sprite","sprout","spruce","sprung","spry","spud","spur","sputter","spyglass","squabble","squad","squall","squander","squash","squatted","squatter","squatting","squeak","squealer","squealing","squeamish","squeegee","squeeze","squeezing","squid","squiggle","squiggly","squint","squire","squirt","squishier","squishy","stability","stabilize","stable","stack","stadium","staff","stage","staging","stagnant","stagnate","stainable","stained","staining","stainless","stalemate","staleness","stalling","stallion","stamina","stammer","stamp","stand","stank","staple","stapling","starboard","starch","stardom","stardust","starfish","stargazer","staring","stark","starless","starlet","starlight","starlit","starring","starry","starship","starter","starting","startle","startling","startup","starved","starving","stash","state","static","statistic","statue","stature","status","statute","statutory","staunch","stays","steadfast","steadier","steadily","steadying","steam","steed","steep","steerable","steering","steersman","stegosaur","stellar","stem","stench","stencil","step","stereo","sterile","sterility","sterilize","sterling","sternness","sternum","stew","stick","stiffen","stiffly","stiffness","stifle","stifling","stillness","stilt","stimulant","stimulate","stimuli","stimulus","stinger","stingily","stinging","stingray","stingy","stinking","stinky","stipend","stipulate","stir","stitch","stock","stoic","stoke","stole","stomp","stonewall","stoneware","stonework","stoning","stony","stood","stooge","stool","stoop","stoplight","stoppable","stoppage","stopped","stopper","stopping","stopwatch","storable","storage","storeroom","storewide","storm","stout","stove","stowaway","stowing","straddle","straggler","strained","strainer","straining","strangely","stranger","strangle","strategic","strategy","stratus","straw","stray","streak","stream","street","strength","strenuous","strep","stress","stretch","strewn","stricken","strict","stride","strife","strike","striking","strive","striving","strobe","strode","stroller","strongbox","strongly","strongman","struck","structure","strudel","struggle","strum","strung","strut","stubbed","stubble","stubbly","stubborn","stucco","stuck","student","studied","studio","study","stuffed","stuffing","stuffy","stumble","stumbling","stump","stung","stunned","stunner","stunning","stunt","stupor","sturdily","sturdy","styling","stylishly","stylist","stylized","stylus","suave","subarctic","subatomic","subdivide","subdued","subduing","subfloor","subgroup","subheader","subject","sublease","sublet","sublevel","sublime","submarine","submerge","submersed","submitter","subpanel","subpar","subplot","subprime","subscribe","subscript","subsector","subside","subsiding","subsidize","subsidy","subsoil","subsonic","substance","subsystem","subtext","subtitle","subtly","subtotal","subtract","subtype","suburb","subway","subwoofer","subzero","succulent","such","suction","sudden","sudoku","suds","sufferer","suffering","suffice","suffix","suffocate","suffrage","sugar","suggest","suing","suitable","suitably","suitcase","suitor","sulfate","sulfide","sulfite","sulfur","sulk","sullen","sulphate","sulphuric","sultry","superbowl","superglue","superhero","superior","superjet","superman","supermom","supernova","supervise","supper","supplier","supply","support","supremacy","supreme","surcharge","surely","sureness","surface","surfacing","surfboard","surfer","surgery","surgical","surging","surname","surpass","surplus","surprise","surreal","surrender","surrogate","surround","survey","survival","survive","surviving","survivor","sushi","suspect","suspend","suspense","sustained","sustainer","swab","swaddling","swagger","swampland","swan","swapping","swarm","sway","swear","sweat","sweep","swell","swept","swerve","swifter","swiftly","swiftness","swimmable","swimmer","swimming","swimsuit","swimwear","swinger","swinging","swipe","swirl","switch","swivel","swizzle","swooned","swoop","swoosh","swore","sworn","swung","sycamore","sympathy","symphonic","symphony","symptom","synapse","syndrome","synergy","synopses","synopsis","synthesis","synthetic","syrup","system","t-shirt","tabasco","tabby","tableful","tables","tablet","tableware","tabloid","tackiness","tacking","tackle","tackling","tacky","taco","tactful","tactical","tactics","tactile","tactless","tadpole","taekwondo","tag","tainted","take","taking","talcum","talisman","tall","talon","tamale","tameness","tamer","tamper","tank","tanned","tannery","tanning","tantrum","tapeless","tapered","tapering","tapestry","tapioca","tapping","taps","tarantula","target","tarmac","tarnish","tarot","tartar","tartly","tartness","task","tassel","taste","tastiness","tasting","tasty","tattered","tattle","tattling","tattoo","taunt","tavern","thank","that","thaw","theater","theatrics","thee","theft","theme","theology","theorize","thermal","thermos","thesaurus","these","thesis","thespian","thicken","thicket","thickness","thieving","thievish","thigh","thimble","thing","think","thinly","thinner","thinness","thinning","thirstily","thirsting","thirsty","thirteen","thirty","thong","thorn","those","thousand","thrash","thread","threaten","threefold","thrift","thrill","thrive","thriving","throat","throbbing","throng","throttle","throwaway","throwback","thrower","throwing","thud","thumb","thumping","thursday","thus","thwarting","thyself","tiara","tibia","tidal","tidbit","tidiness","tidings","tidy","tiger","tighten","tightly","tightness","tightrope","tightwad","tigress","tile","tiling","till","tilt","timid","timing","timothy","tinderbox","tinfoil","tingle","tingling","tingly","tinker","tinkling","tinsel","tinsmith","tint","tinwork","tiny","tipoff","tipped","tipper","tipping","tiptoeing","tiptop","tiring","tissue","trace","tracing","track","traction","tractor","trade","trading","tradition","traffic","tragedy","trailing","trailside","train","traitor","trance","tranquil","transfer","transform","translate","transpire","transport","transpose","trapdoor","trapeze","trapezoid","trapped","trapper","trapping","traps","trash","travel","traverse","travesty","tray","treachery","treading","treadmill","treason","treat","treble","tree","trekker","tremble","trembling","tremor","trench","trend","trespass","triage","trial","triangle","tribesman","tribunal","tribune","tributary","tribute","triceps","trickery","trickily","tricking","trickle","trickster","tricky","tricolor","tricycle","trident","tried","trifle","trifocals","trillion","trilogy","trimester","trimmer","trimming","trimness","trinity","trio","tripod","tripping","triumph","trivial","trodden","trolling","trombone","trophy","tropical","tropics","trouble","troubling","trough","trousers","trout","trowel","truce","truck","truffle","trump","trunks","trustable","trustee","trustful","trusting","trustless","truth","try","tubby","tubeless","tubular","tucking","tuesday","tug","tuition","tulip","tumble","tumbling","tummy","turban","turbine","turbofan","turbojet","turbulent","turf","turkey","turmoil","turret","turtle","tusk","tutor","tutu","tux","tweak","tweed","tweet","tweezers","twelve","twentieth","twenty","twerp","twice","twiddle","twiddling","twig","twilight","twine","twins","twirl","twistable","twisted","twister","twisting","twisty","twitch","twitter","tycoon","tying","tyke","udder","ultimate","ultimatum","ultra","umbilical","umbrella","umpire","unabashed","unable","unadorned","unadvised","unafraid","unaired","unaligned","unaltered","unarmored","unashamed","unaudited","unawake","unaware","unbaked","unbalance","unbeaten","unbend","unbent","unbiased","unbitten","unblended","unblessed","unblock","unbolted","unbounded","unboxed","unbraided","unbridle","unbroken","unbuckled","unbundle","unburned","unbutton","uncanny","uncapped","uncaring","uncertain","unchain","unchanged","uncharted","uncheck","uncivil","unclad","unclaimed","unclamped","unclasp","uncle","unclip","uncloak","unclog","unclothed","uncoated","uncoiled","uncolored","uncombed","uncommon","uncooked","uncork","uncorrupt","uncounted","uncouple","uncouth","uncover","uncross","uncrown","uncrushed","uncured","uncurious","uncurled","uncut","undamaged","undated","undaunted","undead","undecided","undefined","underage","underarm","undercoat","undercook","undercut","underdog","underdone","underfed","underfeed","underfoot","undergo","undergrad","underhand","underline","underling","undermine","undermost","underpaid","underpass","underpay","underrate","undertake","undertone","undertook","undertow","underuse","underwear","underwent","underwire","undesired","undiluted","undivided","undocked","undoing","undone","undrafted","undress","undrilled","undusted","undying","unearned","unearth","unease","uneasily","uneasy","uneatable","uneaten","unedited","unelected","unending","unengaged","unenvied","unequal","unethical","uneven","unexpired","unexposed","unfailing","unfair","unfasten","unfazed","unfeeling","unfiled","unfilled","unfitted","unfitting","unfixable","unfixed","unflawed","unfocused","unfold","unfounded","unframed","unfreeze","unfrosted","unfrozen","unfunded","unglazed","ungloved","unglue","ungodly","ungraded","ungreased","unguarded","unguided","unhappily","unhappy","unharmed","unhealthy","unheard","unhearing","unheated","unhelpful","unhidden","unhinge","unhitched","unholy","unhook","unicorn","unicycle","unified","unifier","uniformed","uniformly","unify","unimpeded","uninjured","uninstall","uninsured","uninvited","union","uniquely","unisexual","unison","unissued","unit","universal","universe","unjustly","unkempt","unkind","unknotted","unknowing","unknown","unlaced","unlatch","unlawful","unleaded","unlearned","unleash","unless","unleveled","unlighted","unlikable","unlimited","unlined","unlinked","unlisted","unlit","unlivable","unloaded","unloader","unlocked","unlocking","unlovable","unloved","unlovely","unloving","unluckily","unlucky","unmade","unmanaged","unmanned","unmapped","unmarked","unmasked","unmasking","unmatched","unmindful","unmixable","unmixed","unmolded","unmoral","unmovable","unmoved","unmoving","unnamable","unnamed","unnatural","unneeded","unnerve","unnerving","unnoticed","unopened","unopposed","unpack","unpadded","unpaid","unpainted","unpaired","unpaved","unpeeled","unpicked","unpiloted","unpinned","unplanned","unplanted","unpleased","unpledged","unplowed","unplug","unpopular","unproven","unquote","unranked","unrated","unraveled","unreached","unread","unreal","unreeling","unrefined","unrelated","unrented","unrest","unretired","unrevised","unrigged","unripe","unrivaled","unroasted","unrobed","unroll","unruffled","unruly","unrushed","unsaddle","unsafe","unsaid","unsalted","unsaved","unsavory","unscathed","unscented","unscrew","unsealed","unseated","unsecured","unseeing","unseemly","unseen","unselect","unselfish","unsent","unsettled","unshackle","unshaken","unshaved","unshaven","unsheathe","unshipped","unsightly","unsigned","unskilled","unsliced","unsmooth","unsnap","unsocial","unsoiled","unsold","unsolved","unsorted","unspoiled","unspoken","unstable","unstaffed","unstamped","unsteady","unsterile","unstirred","unstitch","unstopped","unstuck","unstuffed","unstylish","unsubtle","unsubtly","unsuited","unsure","unsworn","untagged","untainted","untaken","untamed","untangled","untapped","untaxed","unthawed","unthread","untidy","untie","until","untimed","untimely","untitled","untoasted","untold","untouched","untracked","untrained","untreated","untried","untrimmed","untrue","untruth","unturned","untwist","untying","unusable","unused","unusual","unvalued","unvaried","unvarying","unveiled","unveiling","unvented","unviable","unvisited","unvocal","unwanted","unwarlike","unwary","unwashed","unwatched","unweave","unwed","unwelcome","unwell","unwieldy","unwilling","unwind","unwired","unwitting","unwomanly","unworldly","unworn","unworried","unworthy","unwound","unwoven","unwrapped","unwritten","unzip","upbeat","upchuck","upcoming","upcountry","update","upfront","upgrade","upheaval","upheld","uphill","uphold","uplifted","uplifting","upload","upon","upper","upright","uprising","upriver","uproar","uproot","upscale","upside","upstage","upstairs","upstart","upstate","upstream","upstroke","upswing","uptake","uptight","uptown","upturned","upward","upwind","uranium","urban","urchin","urethane","urgency","urgent","urging","urologist","urology","usable","usage","useable","used","uselessly","user","usher","usual","utensil","utility","utilize","utmost","utopia","utter","vacancy","vacant","vacate","vacation","vagabond","vagrancy","vagrantly","vaguely","vagueness","valiant","valid","valium","valley","valuables","value","vanilla","vanish","vanity","vanquish","vantage","vaporizer","variable","variably","varied","variety","various","varmint","varnish","varsity","varying","vascular","vaseline","vastly","vastness","veal","vegan","veggie","vehicular","velcro","velocity","velvet","vendetta","vending","vendor","veneering","vengeful","venomous","ventricle","venture","venue","venus","verbalize","verbally","verbose","verdict","verify","verse","version","versus","vertebrae","vertical","vertigo","very","vessel","vest","veteran","veto","vexingly","viability","viable","vibes","vice","vicinity","victory","video","viewable","viewer","viewing","viewless","viewpoint","vigorous","village","villain","vindicate","vineyard","vintage","violate","violation","violator","violet","violin","viper","viral","virtual","virtuous","virus","visa","viscosity","viscous","viselike","visible","visibly","vision","visiting","visitor","visor","vista","vitality","vitalize","vitally","vitamins","vivacious","vividly","vividness","vixen","vocalist","vocalize","vocally","vocation","voice","voicing","void","volatile","volley","voltage","volumes","voter","voting","voucher","vowed","vowel","voyage","wackiness","wad","wafer","waffle","waged","wager","wages","waggle","wagon","wake","waking","walk","walmart","walnut","walrus","waltz","wand","wannabe","wanted","wanting","wasabi","washable","washbasin","washboard","washbowl","washcloth","washday","washed","washer","washhouse","washing","washout","washroom","washstand","washtub","wasp","wasting","watch","water","waviness","waving","wavy","whacking","whacky","wham","wharf","wheat","whenever","whiff","whimsical","whinny","whiny","whisking","whoever","whole","whomever","whoopee","whooping","whoops","why","wick","widely","widen","widget","widow","width","wieldable","wielder","wife","wifi","wikipedia","wildcard","wildcat","wilder","wildfire","wildfowl","wildland","wildlife","wildly","wildness","willed","willfully","willing","willow","willpower","wilt","wimp","wince","wincing","wind","wing","winking","winner","winnings","winter","wipe","wired","wireless","wiring","wiry","wisdom","wise","wish","wisplike","wispy","wistful","wizard","wobble","wobbling","wobbly","wok","wolf","wolverine","womanhood","womankind","womanless","womanlike","womanly","womb","woof","wooing","wool","woozy","word","work","worried","worrier","worrisome","worry","worsening","worshiper","worst","wound","woven","wow","wrangle","wrath","wreath","wreckage","wrecker","wrecking","wrench","wriggle","wriggly","wrinkle","wrinkly","wrist","writing","written","wrongdoer","wronged","wrongful","wrongly","wrongness","wrought","xbox","xerox","yahoo","yam","yanking","yapping","yard","yarn","yeah","yearbook","yearling","yearly","yearning","yeast","yelling","yelp","yen","yesterday","yiddish","yield","yin","yippee","yo-yo","yodel","yoga","yogurt","yonder","yoyo","yummy","zap","zealous","zebra","zen","zeppelin","zero","zestfully","zesty","zigzagged","zipfile","zipping","zippy","zips","zit","zodiac","zombie","zone","zoning","zookeeper","zoologist","zoology","zoom"]},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.cipherService.upsert(o)}return[2]}})})},n.prototype.deleteWithServer=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.apiService.deleteFolder(n)];case 1:return l.sent(),[4,this.delete(n)];case 2:return l.sent(),[2]}})})},n}();l.FolderService=f},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.userId=l,this.name=n.name,this.id=n.id,this.revisionDate=n.revisionDate}}();l.FolderData=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=e?[4,this.lock()]:[3,6]);case 5:t.sent(),t.label=6;case 6:return[2]}})})},n.prototype.lock=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,Promise.all([this.cryptoService.clearKey(),this.cryptoService.clearOrgKeys(!0),this.cryptoService.clearKeyPair(!0),this.cryptoService.clearEncKey(!0)])];case 1:return n.sent(),this.folderService.clearCache(),this.cipherService.clearCache(),this.collectionService.clearCache(),this.searchService.clearIndex(),this.messagingService.send("locked"),null==this.lockedCallback?[3,3]:[4,this.lockedCallback()];case 2:n.sent(),n.label=3;case 3:return[2]}})})},n.prototype.setLockOption=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.storageService.save(o.ConstantsService.lockOptionKey,n)];case 1:return l.sent(),[4,this.cryptoService.toggleKey()];case 2:return l.sent(),[2]}})})},n}();l.LockService=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0)for(p=0;p0)for(p=0;p0)for(p=0;p0)for(p=0;p1)&&(l.wordSeparator=" "),e=a.EEFLongWordList.length-1,t=new Array(l.numWords),o=0,u.label=1;case 1:return o100&&l.pop(),[4,this.encryptHistory(l)]);case 3:return e=t.sent(),[4,this.storageService.save(c,e)];case 4:return[2,t.sent()]}})})},n.prototype.clear=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.history=[],[4,this.storageService.remove(c)];case 1:return[2,n.sent()]}})})},n.prototype.passwordStrength=function(n,l){if(void 0===l&&(l=null),null==n||0===n.length)return null;var e=["bitwarden","bit","warden"];null!=l&&l.length>0&&(e=e.concat(l));var t=Array.from(new Set(e));return o(n,t)},n.prototype.encryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(o){switch(o.label){case 0:return null==n||0===n.length?[2,Promise.resolve([])]:(l=n.map(function(n){return t(e,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.cryptoService.encrypt(n.password)];case 1:return l=e.sent(),[2,new i.GeneratedPasswordHistory(l.encryptedString,n.date)]}})})}),[4,Promise.all(l)]);case 1:return[2,o.sent()]}})})},n.prototype.decryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(o){switch(o.label){case 0:return null==n||0===n.length?[2,Promise.resolve([])]:(l=n.map(function(n){return t(e,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.cryptoService.decryptToUtf8(new r.CipherString(n.password))];case 1:return l=e.sent(),[2,new i.GeneratedPasswordHistory(l,n.date)]}})})}),[4,Promise.all(l)]);case 1:return[2,o.sent()]}})})},n.prototype.matchesPrevious=function(n,l){return null!=l&&0!==l.length&&l[l.length-1].password===n},n.prototype.shuffleArray=function(n){return t(this,void 0,void 0,function(){var l,e,t;return u(this,function(u){switch(u.label){case 0:e=n.length-1,u.label=1;case 1:return e>0?[4,this.cryptoService.randomNumber(0,e)]:[3,4];case 2:t=u.sent(),l=[n[t],n[e]],n[e]=l[0],n[t]=l[1],u.label=3;case 3:return e--,[3,1];case 4:return[2]}})})},n}();l.PasswordGenerationService=p},,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=n.revisionDate&&(e=!1),r=!1,e&&(l?(e=null!=t,r=!0):null==n.collectionIds||null==n.organizationId?e=null==t:(e=!1,r=!0)),!e&&r&&null!=n.organizationId&&null!=n.collectionIds&&n.collectionIds.length>0?[4,this.collectionService.getAll()]:[3,5];case 4:if(null!=(i=u.sent()))for(a=0;a0&&n.push(l.domains)}),[2,this.settingsService.setEquivalentDomains(n)]})})},n}();l.SyncService=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]10?t=10:c>0&&(t=c)}catch(n){}if(d.has("period")&&null!=d.get("period"))try{(p=parseInt(d.get("period").trim(),null))>0&&(l=p)}catch(n){}d.has("secret")&&null!=d.get("secret")&&(o=d.get("secret")),d.has("algorithm")&&null!=d.get("algorithm")&&("sha1"!==(f=d.get("algorithm").toLowerCase())&&"sha256"!==f&&"sha512"!==f||(e=f))}else s&&(o=n.substr("steam://".length),t=5);return v=Math.round((new Date).getTime()/1e3),h=this.leftPad(this.decToHex(Math.floor(v/l)),16,"0"),g=r.Utils.fromHexToArray(h),(m=this.b32ToBytes(o)).length&&g.length?[4,this.sign(m,g,e)]:[2,null];case 1:if(0===(y=u.sent()).length)return[2,null];if(C=15&y[y.length-1],b=(127&y[C])<<24|(255&y[C+1])<<16|(255&y[C+2])<<8|255&y[C+3],w="",s)for(S=2147483647&b,_=0;_=n.length&&(n=Array(l+1-n.length).join(e)+n),n},n.prototype.decToHex=function(n){return(n<15.5?"0":"")+Math.round(n).toString(16)},n.prototype.b32ToHex=function(n){n=n.toUpperCase();for(var l="",e=0;e0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.u2f.init({appId:l[0].appId,challenge:l[0].challenge,keys:l.map(function(n){return{version:n.version,keyHandle:n.keyHandle}})}),[3,7]):[3,7];case 2:return this.platformUtilsService.getDevice()===o.DeviceType.SafariExtension?[3,7]:(setTimeout(function(){s.init({iframe:void 0,host:n.Host,sig_request:n.Signature,submit_callback:function(n){return t(e,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return null==(l=n.querySelector('input[name="sig_response"]'))?[3,2]:(this.token=l.value,[4,this.submit()]);case 1:e.sent(),e.label=2;case 2:return[2]}})})}})},0),[3,7]);case 3:return this.twoFactorEmail=n.Email,this.authService.twoFactorProviders.size>1?[4,this.sendEmail(!1)]:[3,5];case 4:i.sent(),i.label=5;case 5:case 6:return[3,7];case 7:return[2]}})})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:if(null==this.token||""===this.token)return this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("verificationCodeRequired")),[2];if(this.selectedProviderType===r.TwoFactorProviderType.U2f){if(null==this.u2f)return[2];this.u2f.stop()}else this.selectedProviderType!==r.TwoFactorProviderType.Email&&this.selectedProviderType!==r.TwoFactorProviderType.Authenticator||(this.token=this.token.replace(" ","").trim());n.label=1;case 1:return n.trys.push([1,3,,4]),this.formPromise=this.authService.logInTwoFactor(this.selectedProviderType,this.token,this.remember),[4,this.formPromise];case 2:return n.sent(),null!=this.onSuccessfulLogin&&this.onSuccessfulLogin(),this.platformUtilsService.eventTrack("Logged In From Two-step"),null!=this.onSuccessfulLoginNavigate?this.onSuccessfulLoginNavigate():this.router.navigate([this.successRoute]),[3,4];case 3:return n.sent(),this.selectedProviderType===r.TwoFactorProviderType.U2f&&null!=this.u2f&&this.u2f.start(),[3,4];case 4:return[2]}})})},n.prototype.sendEmail=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:if(this.selectedProviderType!==r.TwoFactorProviderType.Email)return[2];if(null!=this.emailPromise)return[2];e.label=1;case 1:return e.trys.push([1,3,,4]),l=new i.TwoFactorEmailRequest(this.authService.email,this.authService.masterPasswordHash),this.emailPromise=this.apiService.postTwoFactorEmail(l),[4,this.emailPromise];case 2:return e.sent(),n&&this.platformUtilsService.showToast("success",null,this.i18nService.t("verificationCodeEmailSent",this.twoFactorEmail)),[3,4];case 3:return e.sent(),[3,4];case 4:return this.emailPromise=null,[2]}})})},n.prototype.cleanupU2f=function(){null!=this.u2f&&(this.u2f.stop(),this.u2f.cleanup())},n}();l.TwoFactorComponent=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.twoFactor=!1,this.twoFactorProviders=null}}();l.AuthResult=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.type=l.getDevice(),this.name=l.getDeviceString(),this.identifier=n,this.pushToken=null}}();l.DeviceRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.email=n}}();l.PreloginRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n,l,e,t,u,o){this.email=n,this.masterPasswordHash=l,this.token=t,this.provider=e,this.remember=u,this.device=null!=o?o:null}return n.prototype.toIdentityToken=function(n){var l={grant_type:"password",username:this.email,password:this.masterPasswordHash,scope:"api offline_access",client_id:n};return this.device&&(l.deviceType=this.device.type,l.deviceIdentifier=this.device.identifier,l.deviceName=this.device.name),this.token&&null!=this.provider&&(l.twoFactorToken=this.token,l.twoFactorProvider=this.provider,l.twoFactorRemember=this.remember?"1":"0"),l},n}();l.TokenRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n,l,e,t,u){this.win=n,this.webVaultUrl=l,this.successCallback=e,this.errorCallback=t,this.infoCallback=u,this.iframe=null,this.parseFunction=this.parseMessage.bind(this),this.connectorLink=n.document.createElement("a"),this.webVaultUrl=null!=l&&""!==l?l:"https://vault.bitwarden.com"}return n.prototype.init=function(n){this.connectorLink.href=this.webVaultUrl+"/u2f-connector.html?data="+this.base64Encode(JSON.stringify(n))+"&parent="+encodeURIComponent(this.win.document.location.href)+"&v=1",this.iframe=this.win.document.getElementById("u2f_iframe"),this.iframe.src=this.connectorLink.href,this.win.addEventListener("message",this.parseFunction,!1)},n.prototype.stop=function(){this.sendMessage("stop")},n.prototype.start=function(){this.sendMessage("start")},n.prototype.sendMessage=function(n){this.iframe&&this.iframe.src&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage(n,this.iframe.src)},n.prototype.base64Encode=function(n){return btoa(encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,function(n,l){return String.fromCharCode("0x"+l)}))},n.prototype.cleanup=function(){this.win.removeEventListener("message",this.parseFunction,!1)},n.prototype.parseMessage=function(n){if(this.validMessage(n)){var l=n.data.split("|");"success"===l[0]&&this.successCallback?this.successCallback(l[1]):"error"===l[0]&&this.errorCallback?this.errorCallback(l[1]):"info"===l[0]&&this.infoCallback&&this.infoCallback(l[1])}},n.prototype.validMessage=function(n){return null!=n.origin&&""!==n.origin&&n.origin===this.connectorLink.origin&&null!=n.data&&"string"==typeof n.data&&(0===n.data.indexOf("success|")||0===n.data.indexOf("error|")||0===n.data.indexOf("info|"))},n}();l.U2f=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(7),a=e(12),s=e(19),d=e(18),c=e(4),p=e(96),f=e(49),v=e(532),h=e(439),g=e(10),m=e(440),y=e(90),C=e(21),b=e(5),w=e(30),S=e(9),_=e(61),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-thumb-tack"],["type","info"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"info","fa-thumb-tack",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"createOrganizationStep1")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"createOrganizationCreatePersonalAccount")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1),(n()(),t.ɵeld(3,0,null,null,2,"a",[["href","https://bitwarden.com/terms/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,[",\n "])),(n()(),t.ɵeld(7,0,null,null,2,"a",[["href","https://bitwarden.com/privacy/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"submitAgreePolicies"))),n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"termsOfService"))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"privacyPolicy")))})}function A(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,177,"form",[["class","container"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,a.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,a.ControlContainer,null,[a.NgForm]),t.ɵdid(4,16384,null,0,a.NgControlStatusGroup,[[4,a.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,170,"div",[["class","row justify-content-md-center mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,167,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"p",[["class","lead text-center mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,160,"div",[["class","card d-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,157,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(20,16384,null,0,c.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,20,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,9,"input",[["appInputVerbatim","false"],["class","form-control"],["id","email"],["inputmode","email"],["name","Email"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,29)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,29).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,29)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,29)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.email=e)&&u);return u},null,null)),t.ɵdid(29,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(30,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(33,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(35,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(36,81920,null,0,p.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(37,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(40,null,["",""])),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,17,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,6,"input",[["class","form-control"],["id","name"],["name","Name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,51)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,51)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,51)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(51,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(53,671744,null,0,a.NgModel,[[2,a.ControlContainer],[8,null],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(55,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(56,81920,null,0,p.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(59,null,["",""])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,41,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(66,null,["",""])),t.ɵppd(67,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,30,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,14,"div",[["class","w-100"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,8,"input",[["appInputVerbatim",""],["class","text-monospace form-control mb-1"],["id","masterPassword"],["name","MasterPassword"],["required",""]],[[8,"type",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,74)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,74).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,74)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,74)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);"input"===l&&(u=!1!==o.updatePasswordStrength()&&u);return u},null,null)),t.ɵdid(74,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(75,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(78,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(80,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(81,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(83,0,null,null,1,"app-password-strength",[],null,null,null,v.View_PasswordStrengthComponent_0,v.RenderType_PasswordStrengthComponent)),t.ɵdid(84,573440,null,0,h.PasswordStrengthComponent,[r.I18nService],{score:[0,"score"],showText:[1,"showText"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,11,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(89,0,null,null,6,"button",[["class","ml-1 btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword(!1)&&t);return t},null,null)),t.ɵppd(90,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(93,278528,null,0,c.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(94,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(97,0,null,null,0,"div",[["class","progress-bar invisible"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(102,null,["",""])),t.ɵppd(103,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(106,0,null,null,26,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,2,"label",[["for","masterPasswordRetype"]],null,null,null,null,null)),(n()(),t.ɵted(109,null,["",""])),t.ɵppd(110,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(112,0,null,null,19,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(114,0,null,null,8,"input",[["appInputVerbatim",""],["class","text-monospace form-control"],["id","masterPasswordRetype"],["name","MasterPasswordRetype"],["required",""]],[[8,"type",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,115)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,115).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,115)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,115)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.confirmMasterPassword=e)&&u);return u},null,null)),t.ɵdid(115,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(116,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(119,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(121,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(122,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(124,0,null,null,6,"button",[["class","ml-1 btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword(!0)&&t);return t},null,null)),t.ɵppd(125,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(127,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(128,278528,null,0,c.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(129,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(134,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(136,0,null,null,2,"label",[["for","hint"]],null,null,null,null,null)),(n()(),t.ɵted(137,null,["",""])),t.ɵppd(138,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(140,0,null,null,5,"input",[["class","form-control"],["id","hint"],["name","Hint"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,141)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,141).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,141)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,141)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.hint=e)&&u);return u},null,null)),t.ɵdid(141,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(143,671744,null,0,a.NgModel,[[2,a.ControlContainer],[8,null],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(145,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(147,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(148,null,["",""])),t.ɵppd(149,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(152,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(154,0,null,null,16,"div",[["class","d-flex mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(156,0,null,null,8,"button",[["class","btn btn-primary btn-block btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(158,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(159,null,["",""])),t.ɵppd(160,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(162,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(163,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(166,0,null,null,3,"a",[["class","btn btn-outline-secondary btn-block ml-2 mt-0"],["routerLink","/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,167).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(167,671744,null,0,g.RouterLinkWithHref,[g.Router,g.ActivatedRoute,c.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(168,null,["\n ","\n "])),t.ɵppd(169,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(173,16384,null,0,c.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise),n(l,20,0,e.showCreateOrgMessage);n(l,30,0,"");n(l,33,0,"Email",e.email),n(l,36,0,""===e.email);n(l,37,0,"false");n(l,53,0,"Name",e.name),n(l,56,0,""!==e.email);n(l,75,0,"");n(l,78,0,"MasterPassword",e.masterPassword);n(l,81,0,"");n(l,84,0,e.masterPasswordScore,!0);n(l,93,0,"fa fa-lg",n(l,94,0,!e.showPassword,e.showPassword));n(l,116,0,"");n(l,119,0,"MasterPasswordRetype",e.confirmMasterPassword);n(l,122,0,"");n(l,128,0,"fa fa-lg",n(l,129,0,!e.showPassword,e.showPassword));n(l,143,0,"Hint",e.hint);n(l,167,0,"/"),n(l,173,0,e.showTerms)},function(n,l){var e=l.component;n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"createAccount"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"emailAddress"))),n(l,28,0,t.ɵnov(l,30).required?"":null,t.ɵnov(l,35).ngClassUntouched,t.ɵnov(l,35).ngClassTouched,t.ɵnov(l,35).ngClassPristine,t.ɵnov(l,35).ngClassDirty,t.ɵnov(l,35).ngClassValid,t.ɵnov(l,35).ngClassInvalid,t.ɵnov(l,35).ngClassPending),n(l,40,0,t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"emailAddressDesc"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"yourName"))),n(l,50,0,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"yourNameDesc"))),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"masterPass"))),n(l,73,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,75).required?"":null,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending),n(l,89,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l,0),"toggleVisibility")),"")),n(l,102,0,t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l,0),"masterPassDesc"))),n(l,109,0,t.ɵunv(l,109,0,n(l,110,0,t.ɵnov(l,0),"reTypeMasterPass"))),n(l,114,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,116).required?"":null,t.ɵnov(l,121).ngClassUntouched,t.ɵnov(l,121).ngClassTouched,t.ɵnov(l,121).ngClassPristine,t.ɵnov(l,121).ngClassDirty,t.ɵnov(l,121).ngClassValid,t.ɵnov(l,121).ngClassInvalid,t.ɵnov(l,121).ngClassPending),n(l,124,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,124,0,n(l,125,0,t.ɵnov(l,0),"toggleVisibility")),"")),n(l,137,0,t.ɵunv(l,137,0,n(l,138,0,t.ɵnov(l,0),"masterPassHint"))),n(l,140,0,t.ɵnov(l,145).ngClassUntouched,t.ɵnov(l,145).ngClassTouched,t.ɵnov(l,145).ngClassPristine,t.ɵnov(l,145).ngClassDirty,t.ɵnov(l,145).ngClassValid,t.ɵnov(l,145).ngClassInvalid,t.ɵnov(l,145).ngClassPending),n(l,148,0,t.ɵunv(l,148,0,n(l,149,0,t.ɵnov(l,0),"masterPassHintDesc"))),n(l,156,0,t.ɵnov(l,1).loading),n(l,159,0,t.ɵunv(l,159,0,n(l,160,0,t.ɵnov(l,0),"submit"))),n(l,162,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l,0),"loading")),"")),n(l,166,0,t.ɵnov(l,167).target,t.ɵnov(l,167).href),n(l,168,0,t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l,0),"cancel")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-register",[],null,null,null,A,R)),t.ɵdid(1,114688,null,0,m.RegisterComponent,[y.AuthService,g.Router,r.I18nService,C.CryptoService,b.ApiService,g.ActivatedRoute,w.StateService,S.PlatformUtilsService,_.PasswordGenerationService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_RegisterComponent=R,l.View_RegisterComponent_0=A,l.View_RegisterComponent_Host_0=O;var N=t.ɵccf("app-register",m.RegisterComponent,O,{},{},[]);l.RegisterComponentNgFactory=N},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n=n.concat(this.email.substr(0,l).trim().toLowerCase().split(/[^A-Za-z0-9]/))),null!=this.name&&""!==this.name&&(n=n.concat(this.name.trim().toLowerCase().split(" "))),n},n}();l.RegisterComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l,e,t,u,o,r){this.name=l,this.email=n,this.masterPasswordHash=e,this.masterPasswordHint=t||null,this.key=u,this.kdf=o,this.kdfIterations=r}}();l.RegisterRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(96),d=e(49),c=e(10),p=e(4),f=e(442),v=e(5),h=e(9),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,63,"form",[["class","container"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(4,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,56,"div",[["class","row justify-content-md-center mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,53,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"p",[["class","lead text-center mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,46,"div",[["class","card d-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,43,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,20,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim","false"],["class","form-control"],["id","email"],["inputmode","email"],["name","Email"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,26)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,26).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,26)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,26)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.email=e)&&u);return u},null,null)),t.ɵdid(26,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(27,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(30,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(32,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(33,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(34,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,16,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,8,"button",[["class","btn btn-primary btn-block btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"span",[],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,3,"a",[["class","btn btn-outline-secondary btn-block ml-2 mt-0"],["routerLink","/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,56).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(56,671744,null,0,c.RouterLinkWithHref,[c.Router,c.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(57,null,["\n ","\n "])),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,27,0,"");n(l,30,0,"Email",e.email);n(l,33,0,"");n(l,34,0,"false");n(l,56,0,"/")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHint"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l,0),"emailAddress"))),n(l,25,0,t.ɵnov(l,27).required?"":null,t.ɵnov(l,32).ngClassUntouched,t.ɵnov(l,32).ngClassTouched,t.ɵnov(l,32).ngClassPristine,t.ɵnov(l,32).ngClassDirty,t.ɵnov(l,32).ngClassValid,t.ɵnov(l,32).ngClassInvalid,t.ɵnov(l,32).ngClassPending),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"enterEmailToGetHint"))),n(l,45,0,t.ɵnov(l,1).loading),n(l,47,0,t.ɵnov(l,1).loading),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"submit"))),n(l,51,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"loading")),"")),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href),n(l,57,0,t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"cancel")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-hint",[],null,null,null,m,g)),t.ɵdid(1,49152,null,0,f.HintComponent,[c.Router,o.I18nService,v.ApiService,h.PlatformUtilsService],null,null)],null,null)}l.RenderType_HintComponent=g,l.View_HintComponent_0=m,l.View_HintComponent_Host_0=y;var C=t.ɵccf("app-hint",f.HintComponent,y,{},{},[]);l.HintComponentNgFactory=C},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0),n(l,6,0,0===e.ciphers.length)},null)}function D(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(2,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,2,0,l.component.ciphers)},null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-ciphers",[],null,null,null,D,b)),t.ɵdid(1,180224,null,0,v.CiphersComponent,[h.SearchService,g.Angulartics2,m.ToasterService,f.I18nService,y.PlatformUtilsService,C.CipherService],null,null)],null,null)}l.RenderType_CiphersComponent=b,l.View_CiphersComponent_0=D,l.View_CiphersComponent_Host_0=U;var F=t.ɵccf("app-vault-ciphers",v.CiphersComponent,U,{activeCipherId:"activeCipherId",showAddNew:"showAddNew"},{onCipherClicked:"onCipherClicked",onCipherRightClicked:"onCipherRightClicked",onAddCipher:"onAddCipher",onAddCipherOptions:"onAddCipherOptions",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked"},[]);l.CiphersComponentNgFactory=F},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(n){this.el=n}return n.prototype.onError=function(){this.el.nativeElement.src=this.appFallbackSrc},n}();l.FallbackSrcDirective=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.collections.length>0&&this.collections.forEach(function(n){o.collectionIds.indexOf(n.id)>-1&&(n.checked=!0)}),u.label=7;case 7:return t=this,[4,this.folderService.getAllDecrypted()];case 8:return t.folders=u.sent(),[2]}})})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return null==this.cipher.name||""===this.cipher.name?(this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nameRequired")),[2,!1]):(this.editMode||this.cipher.type!==r.CipherType.Login||null==this.cipher.login.uris||1!==this.cipher.login.uris.length||null!=this.cipher.login.uris[0].uri&&""!==this.cipher.login.uris[0].uri||(this.cipher.login.uris=null),this.editMode||null==this.cipher.organizationId||(this.cipher.collectionIds=null==this.collections?[]:this.collections.filter(function(n){return n.checked}).map(function(n){return n.id})),[4,this.encryptCipher()]);case 1:n=l.sent(),l.label=2;case 2:return l.trys.push([2,4,,5]),this.formPromise=this.saveCipher(n),[4,this.formPromise];case 3:return l.sent(),this.cipher.id=n.id,this.platformUtilsService.eventTrack(this.editMode?"Edited Cipher":"Added Cipher"),this.platformUtilsService.showToast("success",null,this.i18nService.t(this.editMode?"editedItem":"addedItem")),this.onSavedCipher.emit(this.cipher),[2,!0];case 4:return l.sent(),[3,5];case 5:return[2,!1]}})})},n.prototype.addUri=function(){this.cipher.type===r.CipherType.Login&&(null==this.cipher.login.uris&&(this.cipher.login.uris=[]),this.cipher.login.uris.push(new h.LoginUriView))},n.prototype.removeUri=function(n){if(this.cipher.type===r.CipherType.Login&&null!=this.cipher.login.uris){var l=this.cipher.login.uris.indexOf(n);l>-1&&this.cipher.login.uris.splice(l,1)}},n.prototype.addField=function(){null==this.cipher.fields&&(this.cipher.fields=[]);var n=new f.FieldView;n.type=this.addFieldType,this.cipher.fields.push(n)},n.prototype.removeField=function(n){var l=this.cipher.fields.indexOf(n);l>-1&&this.cipher.fields.splice(l,1)},n.prototype.cancel=function(){this.onCancelled.emit(this.cipher)},n.prototype.attachments=function(){this.onEditAttachments.emit(this.cipher)},n.prototype.share=function(){this.onShareCipher.emit(this.cipher)},n.prototype.editCollections=function(){this.onEditCollections.emit(this.cipher)},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteItemConfirmation"),this.i18nService.t("deleteItem"),this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.deleteCipher(),[4,this.deletePromise];case 3:return n.sent(),this.platformUtilsService.eventTrack("Deleted Cipher"),this.platformUtilsService.showToast("success",null,this.i18nService.t("deletedItem")),this.onDeletedCipher.emit(this.cipher),[3,5];case 4:return n.sent(),[3,5];case 5:return[2,!0]}})})},n.prototype.generatePassword=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return null!=this.cipher.login&&null!=this.cipher.login.password&&this.cipher.login.password.length?[4,this.platformUtilsService.showDialog(this.i18nService.t("overwritePasswordConfirmation"),this.i18nService.t("overwritePassword"),this.i18nService.t("yes"),this.i18nService.t("no"))]:[3,2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return this.onGeneratePassword.emit(),[2,!0]}})})},n.prototype.togglePassword=function(){this.platformUtilsService.eventTrack("Toggled Password on Edit"),this.showPassword=!this.showPassword,document.getElementById("loginPassword").focus()},n.prototype.toggleCardCode=function(){this.platformUtilsService.eventTrack("Toggled CardCode on Edit"),this.showCardCode=!this.showCardCode,document.getElementById("cardCode").focus()},n.prototype.toggleFieldValue=function(n){var l=n;l.showValue=!l.showValue},n.prototype.toggleUriOptions=function(n){var l=n;l.showOptions=(null!=l.showOptions||null==n.match)&&!l.showOptions},n.prototype.loginUriMatchChanged=function(n){var l=n;l.showOptions=null==l.showOptions||l.showOptions},n.prototype.organizationChanged=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return null!=this.writeableCollections&&this.writeableCollections.forEach(function(n){return n.checked=!1}),null==this.cipher.organizationId?[3,2]:(this.collections=this.writeableCollections.filter(function(n){return n.organizationId===l.cipher.organizationId}),[4,this.userService.getOrganization(this.cipher.organizationId)]);case 1:return null!=(n=e.sent())&&(this.cipher.organizationUseTotp=n.useTotp),[3,3];case 2:this.collections=[],e.label=3;case 3:return[2]}})})},n.prototype.checkPassword=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return null!=this.checkPasswordPromise?[2]:null==this.cipher.login||null==this.cipher.login.password||""===this.cipher.login.password?[2]:(this.platformUtilsService.eventTrack("Check Password"),this.checkPasswordPromise=this.auditService.passwordLeaked(this.cipher.login.password),[4,this.checkPasswordPromise]);case 1:return n=l.sent(),this.checkPasswordPromise=null,n>0?this.platformUtilsService.showToast("warning",null,this.i18nService.t("passwordExposed",n.toString())):this.platformUtilsService.showToast("success",null,this.i18nService.t("passwordSafe")),[2]}})})},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,this.collectionService.getAllDecrypted()];case 1:return[2,n.sent().filter(function(n){return!n.readOnly})]}})})},n.prototype.loadCipher=function(){return this.cipherService.get(this.cipherId)},n.prototype.encryptCipher=function(){return this.cipherService.encrypt(this.cipher)},n.prototype.saveCipher=function(n){return this.cipherService.saveWithServer(n)},n.prototype.deleteCipher=function(){return this.cipherService.deleteWithServer(this.cipher.id)},n}();l.AddEditComponent=C},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]104857600)return this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("maxFileSize")),[2];u.label=1;case 1:return u.trys.push([1,4,,5]),this.formPromise=this.saveCipherAttachment(l[0]),e=this,[4,this.formPromise];case 2:return e.cipherDomain=u.sent(),t=this,[4,this.cipherDomain.decrypt()];case 3:return t.cipher=u.sent(),this.platformUtilsService.eventTrack("Added Attachment"),this.platformUtilsService.showToast("success",null,this.i18nService.t("attachmentSaved")),this.onUploadedAttachment.emit(),[3,5];case 4:return u.sent(),[3,5];case 5:return n.type="",n.type="file",n.value="",[2]}})})},n.prototype.delete=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return null!=this.deletePromises[n.id]?[2]:[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteAttachmentConfirmation"),this.i18nService.t("deleteAttachment"),this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!e.sent())return[2];e.label=2;case 2:return e.trys.push([2,4,,5]),this.deletePromises[n.id]=this.deleteCipherAttachment(n.id),[4,this.deletePromises[n.id]];case 3:return e.sent(),this.platformUtilsService.eventTrack("Deleted Attachment"),this.platformUtilsService.showToast("success",null,this.i18nService.t("deletedAttachment")),(l=this.cipher.attachments.indexOf(n))>-1&&this.cipher.attachments.splice(l,1),[3,5];case 4:return e.sent(),[3,5];case 5:return this.deletePromises[n.id]=null,this.onDeletedAttachment.emit(),[2]}})})},n.prototype.download=function(n){return t(this,void 0,void 0,function(){var l,e,t,o,r,i;return u(this,function(u){switch(u.label){case 0:return(l=n).downloading?[2]:this.canAccessAttachments?(l.downloading=!0,[4,fetch(new Request(n.url,{cache:"no-cache"}))]):(this.platformUtilsService.showToast("error",this.i18nService.t("premiumRequired"),this.i18nService.t("premiumRequiredDesc")),[2]);case 1:if(200!==(e=u.sent()).status)return this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),l.downloading=!1,[2];u.label=2;case 2:return u.trys.push([2,8,,9]),[4,e.arrayBuffer()];case 3:return t=u.sent(),null==n.key?[3,4]:(r=n.key,[3,6]);case 4:return[4,this.cryptoService.getOrgKey(this.cipher.organizationId)];case 5:r=u.sent(),u.label=6;case 6:return o=r,[4,this.cryptoService.decryptFromBytes(t,o)];case 7:return i=u.sent(),this.platformUtilsService.saveFile(this.win,i,null,n.fileName),[3,9];case 8:return u.sent(),this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),[3,9];case 9:return l.downloading=!1,[2]}})})},n.prototype.reuploadCipherAttachment=function(n,l){return t(this,void 0,void 0,function(){var e,o=this;return u(this,function(r){switch(r.label){case 0:if(e=n,null!=n.key||e.downloading||null!=this.reuploadPromises[n.id])return[2];r.label=1;case 1:return r.trys.push([1,3,,4]),this.reuploadPromises[n.id]=Promise.resolve().then(function(){return t(o,void 0,void 0,function(){var t,o,r,i,a,s,d,c,p;return u(this,function(u){switch(u.label){case 0:return e.downloading=!0,[4,fetch(new Request(n.url,{cache:"no-cache"}))];case 1:if(200!==(t=u.sent()).status)return this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),e.downloading=!1,[2];u.label=2;case 2:return u.trys.push([2,11,,12]),[4,t.arrayBuffer()];case 3:return o=u.sent(),null==n.key?[3,4]:(i=n.key,[3,6]);case 4:return[4,this.cryptoService.getOrgKey(this.cipher.organizationId)];case 5:i=u.sent(),u.label=6;case 6:return r=i,[4,this.cryptoService.decryptFromBytes(o,r)];case 7:return a=u.sent(),s=this,[4,this.cipherService.saveAttachmentRawWithServer(this.cipherDomain,n.fileName,a,l)];case 8:return s.cipherDomain=u.sent(),d=this,[4,this.cipherDomain.decrypt()];case 9:return d.cipher=u.sent(),this.deletePromises[n.id]=this.deleteCipherAttachment(n.id),[4,this.deletePromises[n.id]];case 10:return u.sent(),(c=this.cipher.attachments.filter(function(l){return l.id===n.id})).length>0&&(p=this.cipher.attachments.indexOf(c[0]))>-1&&this.cipher.attachments.splice(p,1),this.platformUtilsService.eventTrack("Reuploaded Attachment"),this.platformUtilsService.showToast("success",null,this.i18nService.t("attachmentSaved")),this.onReuploadedAttachment.emit(),[3,12];case 11:return u.sent(),this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),[3,12];case 12:return e.downloading=!1,[2]}})})}),[4,this.reuploadPromises[n.id]];case 2:return r.sent(),[3,4];case 3:return r.sent(),[3,4];case 4:return[2]}})})},n.prototype.loadCipher=function(){return this.cipherService.get(this.cipherId)},n.prototype.saveCipherAttachment=function(n){return this.cipherService.saveAttachmentWithServer(this.cipherDomain,n)},n.prototype.deleteCipherAttachment=function(n){return this.cipherService.deleteAttachmentWithServer(this.cipher.id,n)},n}();l.AttachmentsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1}),[2]}})})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:this.cipherDomain.collectionIds=this.collections.filter(function(n){return!!n.checked}).map(function(n){return n.id}),n.label=1;case 1:return n.trys.push([1,3,,4]),this.formPromise=this.saveCollections(),[4,this.formPromise];case 2:return n.sent(),this.onSavedCollections.emit(),this.platformUtilsService.eventTrack("Edited Cipher Collections"),this.platformUtilsService.showToast("success",null,this.i18nService.t("editedItem")),[3,4];case 3:return n.sent(),[3,4];case 4:return[2]}})})},n.prototype.loadCipher=function(){return this.cipherService.get(this.cipherId)},n.prototype.loadCipherCollections=function(){return this.cipherDomain.collectionIds},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){var n=this;return u(this,function(l){switch(l.label){case 0:return[4,this.collectionService.getAllDecrypted()];case 1:return[2,l.sent().filter(function(l){return!l.readOnly&&l.organizationId===n.cipher.organizationId})]}})})},n.prototype.saveCollections=function(){return this.cipherService.saveCollectionsWithServer(this.cipherDomain)},n}();l.CollectionsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(this.organizationId=this.organizations[0].id),this.filterCollections(),[2]}})})},n.prototype.filterCollections=function(){var n=this;this.writeableCollections.forEach(function(n){return n.checked=!1}),null==this.organizationId||0===this.writeableCollections.length?this.collections=[]:this.collections=this.writeableCollections.filter(function(l){return l.organizationId===n.organizationId})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n,l,e=this;return u(this,function(o){switch(o.label){case 0:return[4,this.cipherService.get(this.cipherId)];case 1:return[4,o.sent().decrypt()];case 2:n=o.sent(),l=this.collections.filter(function(n){return n.checked}).map(function(n){return n.id}),o.label=3;case 3:return o.trys.push([3,5,,6]),this.formPromise=this.cipherService.shareWithServer(n,this.organizationId,l).then(function(){return t(e,void 0,void 0,function(){return u(this,function(n){return this.onSharedCipher.emit(),this.platformUtilsService.eventTrack("Shared Cipher"),this.platformUtilsService.showToast("success",null,this.i18nService.t("sharedItem")),[2]})})}),[4,this.formPromise];case 4:return o.sent(),[3,6];case 5:return o.sent(),[3,6];case 6:return[2]}})})},Object.defineProperty(n.prototype,"canSave",{get:function(){if(null!=this.collections)for(var n=0;n0)},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"domainRules"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"domainRulesDesc"))),n(l,12,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"customEqDomains"))),n(l,28,0,t.ɵnov(l,12).loading),n(l,30,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"loading")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"save"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"globalEqDomains"))),n(l,48,0,t.ɵnov(l,12).loading),n(l,50,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,50,0,n(l,51,0,t.ɵnov(l,0),"loading")),"")),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"save")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-domain-rules",[],null,null,null,R,h)),t.ɵdid(1,114688,null,0,c.DomainRulesComponent,[p.ApiService,a.I18nService,f.Angulartics2,v.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_DomainRulesComponent=h,l.View_DomainRulesComponent_0=R,l.View_DomainRulesComponent_Host_0=I;var k=t.ɵccf("app-domain-rules",c.DomainRulesComponent,I,{},{},[]);l.DomainRulesComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.UpdateDomainsRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(36),a=e(4),s=e(7),d=e(253),c=e(5),p=e(8),f=e(20),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(3,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(7,0,null,0,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.recoveryCode()&&t);return t},null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,0,["\n"]))],function(n,l){n(l,1,0,"warning")},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-fw text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-check text-success fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[r.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,S)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId),n(l,24,0,n(l,25,0,!e.organizationId)),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-setup",[],null,null,null,O,v)),t.ɵdid(1,114688,null,0,d.TwoFactorSetupComponent,[c.ApiService,p.UserService,t.ComponentFactoryResolver,f.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorSetupComponent=v,l.View_TwoFactorSetupComponent_0=O,l.View_TwoFactorSetupComponent_Host_0=N;var E=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,N,{},{},[]);l.TwoFactorSetupComponentNgFactory=E},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorAuthenticatorRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.TwoFactorProviderRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorDuoRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorEmailRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorU2fDeleteRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorU2fRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorYubioOtpRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(12),a=e(19),s=e(18),d=e(464),c=e(159),p=e(9),f=e(7),v=e(4),h=e(465),g=e(5),m=e(6),y=e(13),C=e(70),b=e(10),w=e(20),S=e(62),_=e(8),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-star"],["type","info"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n"])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"info","fa-star",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"youHavePremiumAccess")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"alreadyPremiumFromOrg")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://vault.bitwarden.com/#/settings/premium"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"purchasePremium")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,35,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,28,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,i.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,i.ControlContainer,null,[i.NgForm]),t.ɵdid(9,16384,null,0,i.NgControlStatusGroup,[[4,i.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,a.ApiActionDirective,[t.ElementRef,s.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,10,0,l.component.formPromise)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFilePremium"))),n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_premium_license.json"))),n(l,25,0,t.ɵnov(l,6).loading),n(l,27,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,77,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,i.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,i.ControlContainer,null,[i.NgForm]),t.ɵdid(3,16384,null,0,i.NgControlStatusGroup,[[4,i.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,a.ApiActionDirective,[t.ElementRef,s.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,23,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,20,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","additionalStorage"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,7,"input",[["class","form-control"],["id","additionalStorage"],["max","99"],["min","0"],["name","AdditionalStorageGb"],["step","1"],["type","number"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,20).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,20).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,20).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalStorage=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(20,16384,null,0,i.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[i.DefaultValueAccessor,i.ɵangular_packages_forms_forms_bd]),t.ɵdid(22,671744,null,0,i.NgModel,[[2,i.ControlContainer],[8,null],[8,null],[6,i.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(24,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,2),t.ɵppd(30,1),t.ɵppd(31,4),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(38,null,["\n ",": ","\n "])),t.ɵppd(39,1),t.ɵppd(40,2),(n()(),t.ɵeld(41,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(42,null,[" ",": "," GB × "," = ","\n "])),t.ɵppd(43,1),t.ɵppd(44,2),t.ɵppd(45,2),(n()(),t.ɵeld(46,0,null,null,0,"hr",[["class","my-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,7,"div",[["class","text-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(51,null,["",":"])),t.ɵppd(52,1),(n()(),t.ɵted(53,null,[" "," /","\n "])),t.ɵppd(54,2),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,2,"small",[["class","text-muted font-italic"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["",""])),t.ɵppd(59,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,2,"h2",[["class","spaced-header mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,1,"app-payment",[],null,null,null,d.View_PaymentComponent_0,d.RenderType_PaymentComponent)),t.ɵdid(66,245760,[[1,4]],0,c.PaymentComponent,[r.I18nService,p.PlatformUtilsService],{hideBank:[0,"hideBank"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(71,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(74,null,["",""])),t.ɵppd(75,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise);n(l,22,0,"AdditionalStorageGb",e.additionalStorage);n(l,66,0,!0)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"addons"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"additionalStorageGb"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,25,0,t.ɵnov(l.parent,0),"additionalStorageGbDesc")),""),t.ɵnov(l,24).ngClassUntouched,t.ɵnov(l,24).ngClassTouched,t.ɵnov(l,24).ngClassPristine,t.ɵnov(l,24).ngClassDirty,t.ɵnov(l,24).ngClassValid,t.ɵnov(l,24).ngClassInvalid,t.ɵnov(l,24).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,31,0,t.ɵnov(l.parent,0),"additionalStorageIntervalDesc","1 GB",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent,1),e.storageGbPrice,"$")),t.ɵunv(l,28,0,n(l,30,0,t.ɵnov(l.parent,0),"year"))))),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent,0),"summary"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent,0),"premiumMembership")),t.ɵunv(l,38,1,n(l,40,0,t.ɵnov(l.parent,1),e.premiumPrice,"$"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"additionalStorageGb")),e.additionalStorage||0,t.ɵunv(l,42,2,n(l,44,0,t.ɵnov(l.parent,1),e.storageGbPrice,"$")),t.ɵunv(l,42,3,n(l,45,0,t.ɵnov(l.parent,1),e.additionalStorageTotal,"$"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"total"))),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l.parent,1),e.total,"USD $")),t.ɵunv(l,53,1,n(l,55,0,t.ɵnov(l.parent,0),"year"))),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"paymentChargedAnnually"))),n(l,62,0,t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"paymentInformation"))),n(l,68,0,t.ɵnov(l,0).loading),n(l,70,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,74,0,t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"submit")))})}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,v.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,55,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(14,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(16,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(20,0,null,0,37,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(25,null,["\n ","\n "])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["\n ","\n "])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["\n ","\n "])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["\n ","\n "])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(59,0,null,0,5,"p",[["class","text-lg"]],null,null,null,null,null)),t.ɵdid(60,278528,null,0,v.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(61,{"mb-0":0}),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,2),t.ɵppd(64,2),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(67,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(71,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(74,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.canAccessPremium);n(l,14,0,"success");n(l,60,0,"text-lg",n(l,61,0,!e.selfHosted)),n(l,67,0,e.selfHosted),n(l,71,0,e.selfHosted),n(l,74,0,!e.selfHosted)},function(n,l){var e=l.component;n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"goPremium"))),n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"premiumUpgradeUnlockFeatures"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"premiumSignUpStorage"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"premiumSignUpTwoStep"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"premiumSignUpReports"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"premiumSignUpTotp"))),n(l,49,0,t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"premiumSignUpSupport"))),n(l,55,0,t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"premiumSignUpFuture"))),n(l,62,0,t.ɵunv(l,62,0,n(l,64,0,t.ɵnov(l,0),"premiumPrice",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,1),e.premiumPrice,"$")))))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-premium",[],null,null,null,N,R)),t.ɵdid(1,114688,null,0,h.PremiumComponent,[g.ApiService,r.I18nService,m.Angulartics2,y.ToasterService,p.PlatformUtilsService,C.TokenService,b.Router,w.MessagingService,S.SyncService,_.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PremiumComponent=R,l.View_PremiumComponent_0=N,l.View_PremiumComponent_Host_0=E;var T=t.ɵccf("app-premium",h.PremiumComponent,E,{},{},[]);l.PremiumComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(19),a=e(18),s=e(4),d=e(558),c=e(466),p=e(5),f=e(6),v=e(13),h=e(559),g=e(467),m=e(560),y=e(468),C=e(7),b=e(470),w=e(70),S=e(9),_=e(10),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(4,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(8,0,[["reinstateBtn",1]],0,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reinstate()&&t);return t},null,null)),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"")),n(l,9,0,e.reinstatePromise)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"))),n(l,8,0,t.ɵnov(l,8).loading),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,2)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(7,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(10,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,e.billing.expiration),n(l,10,0,!e.billing.expiration)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"expiration")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"pendingCancellation")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n "," "," @ ","\n "])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,l.context.$implicit.name,l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.quantity*l.context.$implicit.amount,"$")),t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval)))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,"div",[["class","col-8"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[["class","d-block mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"table",[["class","table"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(11,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,11,0,l.component.subscription.items)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,26,"div",[["class","col-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,23,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,7,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,1,"span",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(16,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,3,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["","\n "])),t.ɵppd(25,2),t.ɵppd(26,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(31,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,16,0,e.subscriptionMarkedForCancel),n(l,31,0,e.subscription)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"status"))),n(l,13,0,e.subscription&&e.subscription.status||"-"),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"nextCharge"))),n(l,24,0,e.nextInvoice?t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent,1),e.nextInvoice.date,"mediumDate"))+", "+t.ɵunv(l,24,0,n(l,26,0,t.ɵnov(l.parent.parent,2),e.nextInvoice.amount,"$")):"-")})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","card mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h3",[["class","card-body-header"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"app-update-license",[],null,[[null,"onUpdated"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onUpdated"===l&&(t=!1!==u.closeUpdateLicense(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeUpdateLicense(!1)&&t);return t},d.View_UpdateLicenseComponent_0,d.RenderType_UpdateLicenseComponent)),t.ɵdid(9,49152,null,0,c.UpdateLicenseComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],null,{onUpdated:"onUpdated",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.updateLicense()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://vault.bitwarden.com/#/settings/billing"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,14,0,l.component.showUpdateLicense)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.downloadLicense()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["cancelBtn",1]],null,9,"button",[["class","btn btn-outline-danger btn-submit ml-auto"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.cancel()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.cancelPromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription")))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","ml-1 btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-storage",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeStorage(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeStorage(!1)&&t);return t},h.View_AdjustStorageComponent_0,h.RenderType_AdjustStorageComponent)),t.ɵdid(1,49152,null,0,g.AdjustStorageComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{storageGbPrice:[0,"storageGbPrice"],add:[1,"add"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){n(l,1,0,4,l.component.adjustStorageAdd)},null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustStorage),n(l,8,0,e.showAdjustStorage)},null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod")))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(3,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(4,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2}),(n()(),t.ɵted(5,null,["\n ","\n "]))],function(n,l){var e=l.component;n(l,3,0,"fa fa-fw",n(l,4,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal))},function(n,l){n(l,5,0,l.component.paymentSource.description)})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePayment()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod")))})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-adjust-payment",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closePayment(!0)&&t);"onCanceled"===l&&(t=!1!==u.closePayment(!1)&&t);return t},m.View_AdjustPaymentComponent_0,m.RenderType_AdjustPaymentComponent)),t.ɵdid(1,49152,null,0,y.AdjustPaymentComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{currentType:[0,"currentType"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,null!=e.paymentSource?e.paymentSource.type:null)},null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCharges")))})}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"td",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(13,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(14,{"text-strike":0}),t.ɵppd(15,1),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,13,0,n(l,14,0,l.context.$implicit.refunded))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"))),n(l,7,0,l.context.$implicit.paymentSource?l.context.$implicit.paymentSource.description:"-"),n(l,10,0,l.context.$implicit.status),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,15,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"")),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$")))})}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(5,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.charges)},null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,60,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,7,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,4,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["class","progress-bar bg-success"],["role","progressbar"]],[[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(22,278528,null,0,s.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(23,{width:0}),(n()(),t.ɵted(24,null,["",""])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(29,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(36,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(39,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(42,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(45,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(52,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(55,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["* ",""])),t.ɵppd(59,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.subscription||!e.subscription.cancelled),n(l,8,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel),n(l,22,0,n(l,23,0,e.storageProgressWidth+"%")),n(l,29,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel&&e.paymentSource),n(l,36,0,!e.paymentSource),n(l,39,0,e.paymentSource),n(l,42,0,!e.showAdjustPayment),n(l,45,0,e.showAdjustPayment),n(l,52,0,!e.charges||!e.charges.length),n(l,55,0,e.charges&&e.charges.length)},function(n,l){var e=l.component;n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent,0),"storage"))),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent,0),"subscriptionStorage",e.billing.maxStorageGb||0,e.billing.storageName||"0 MB"))),n(l,21,0,e.storagePercentage),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100))),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent.parent,0),"paymentMethod"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"charges"))),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN")))})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,30,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(3,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(6,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(20,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(23,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(26,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(29,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,e.subscription&&e.subscription.cancelled),n(l,6,0,e.subscriptionMarkedForCancel),n(l,20,0,e.selfHosted),n(l,23,0,!e.selfHosted),n(l,26,0,e.selfHosted),n(l,29,0,!e.selfHosted)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"subscription"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"premiumMembership")))})}function X(n){return t.ɵvid(0,[t.ɵpid(0,C.I18nPipe,[r.I18nService]),t.ɵpid(0,s.DatePipe,[t.LOCALE_ID]),t.ɵpid(0,s.CurrencyPipe,[t.LOCALE_ID]),t.ɵpid(0,s.PercentPipe,[t.LOCALE_ID]),(n()(),t.ɵeld(4,0,null,null,11,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵeld(9,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(21,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.firstLoaded&&e.loading),n(l,18,0,!e.firstLoaded&&e.loading),n(l,21,0,e.billing)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing")))})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-billing",[],null,null,null,X,R)),t.ɵdid(1,114688,null,0,b.UserBillingComponent,[w.TokenService,p.ApiService,S.PlatformUtilsService,r.I18nService,f.Angulartics2,v.ToasterService,_.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserBillingComponent=R,l.View_UserBillingComponent_0=X,l.View_UserBillingComponent_Host_0=Q;var nn=t.ɵccf("app-user-billing",b.UserBillingComponent,Q,{},{},[]);l.UserBillingComponentNgFactory=nn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StorageRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PaymentRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(19),r=e(18),i=e(4),a=e(464),s=e(159),d=e(3),c=e(9),p=e(7),f=e(471),v=e(5),h=e(6),g=e(13),m=e(21),y=e(10),C=e(62),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,35,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,28,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,10,0,l.component.formPromise)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFileOrg"))),n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_organization_license.json"))),n(l,25,0,t.ɵnov(l,6).loading),n(l,27,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,12,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","businessName"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,5,"input",[["class","form-control"],["id","businessName"],["name","BusinessName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.businessName=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(11,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(13,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,11,0,"BusinessName",l.component.businessName)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"businessName"))),n(l,8,0,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,29,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["class","form-check-input"],["id","planFree"],["name","PlanType"],["type","radio"],["value","free"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,4).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,4).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(4,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(6,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(8,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,18,"label",[["class","form-check-label"],["for","planFree"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵeld(13,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["• ",""])),t.ɵppd(19,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(22,null,["• ",""])),t.ɵppd(23,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"PlanType","free");n(l,6,0,"PlanType",e.plan)},function(n,l){n(l,2,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFree"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFree","1"))),n(l,18,0,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"limitedUsers","2"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"limitedCollections","2"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"freeForever")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,47,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["class","form-check-input"],["id","planFamilies"],["name","PlanType"],["type","radio"],["value","families"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,4).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,4).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(4,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(6,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(8,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,36,"label",[["class","form-check-label"],["for","planFamilies"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵeld(13,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["• ",""])),t.ɵppd(19,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(22,null,["• ",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(26,null,["• ",""])),t.ɵppd(27,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(30,null,["• ",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["• ",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["• ",""])),t.ɵppd(39,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(42,null,[""," /",", ",""])),t.ɵppd(43,2),t.ɵppd(44,1),t.ɵppd(45,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"PlanType","families");n(l,6,0,"PlanType",e.plan)},function(n,l){n(l,2,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFamilies"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFamilies"))),n(l,18,0,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"addShareLimitedUsers","5"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"createUnlimitedCollections"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"gbEncryptedFileStorage","1 GB"))),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent,0),"onPremHostingOptional"))),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l.parent.parent,0),"priorityCustomerSupport"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent.parent,0),"xDayFreeTrial","7"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,1),1,"$")),t.ɵunv(l,42,1,n(l,44,0,t.ɵnov(l.parent.parent,0),"month")),t.ɵunv(l,42,2,n(l,45,0,t.ɵnov(l.parent.parent,0),"includesXUsers",5)))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,30,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,23,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,20,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","additionalSeats"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,9,"input",[["class","form-control"],["id","additionalSeats"],["max","100000"],["min","1"],["name","AdditionalSeats"],["required",""],["type","number"]],[[8,"placeholder",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,15)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,15)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,15)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,16).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,16).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,16).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalSeats=e)&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(16,16384,null,0,u.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(17,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.ɵangular_packages_forms_forms_bd]),t.ɵdid(20,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(22,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,17,0,"");n(l,20,0,"AdditionalSeats",e.additionalSeats)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"users"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"userSeats"))),n(l,14,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,23,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),""),t.ɵnov(l,17).required?"":null,t.ɵnov(l,22).ngClassUntouched,t.ɵnov(l,22).ngClassTouched,t.ɵnov(l,22).ngClassPristine,t.ɵnov(l,22).ngClassDirty,t.ɵnov(l,22).ngClassValid,t.ɵnov(l,22).ngClassInvalid,t.ɵnov(l,22).ngClassPending),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsHowManyDesc")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,22,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,19,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","additionalSeats"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,7,"input",[["class","form-control"],["id","additionalSeats"],["max","100000"],["min","0"],["name","AdditionalSeats"],["type","number"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,10).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,10).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,10).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalSeats=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(10,16384,null,0,u.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.ɵangular_packages_forms_forms_bd]),t.ɵdid(12,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(14,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,3,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),t.ɵppd(19,2),t.ɵppd(20,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,"AdditionalSeats",l.component.additionalSeats)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"additionalUserSeats"))),n(l,8,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),""),t.ɵnov(l,14).ngClassUntouched,t.ɵnov(l,14).ngClassTouched,t.ɵnov(l,14).ngClassPristine,t.ɵnov(l,14).ngClassDirty,t.ɵnov(l,14).ngClassValid,t.ɵnov(l,14).ngClassInvalid,t.ɵnov(l,14).ngClassPending),n(l,18,0,t.ɵunv(l,18,0,n(l,20,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsAdditionalDesc",e.plans[e.plan].baseSeats,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].seatPrice,"$")))))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,12,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,5,"input",[["class","form-check-input"],["id","premiumAccess"],["name","PremiumAccessAddon"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.premiumAccessAddon=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"label",[["class","form-check-label bold"],["for","premiumAccess"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,4,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,2),t.ɵppd(19,1),t.ɵppd(20,3),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,"PremiumAccessAddon",l.component.premiumAccessAddon)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess"))),n(l,17,0,t.ɵunv(l,17,0,n(l,20,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccessDesc",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent.parent,1),3.33,"$")),t.ɵunv(l,17,0,n(l,19,0,t.ɵnov(l.parent.parent.parent,0),"month")))))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",": "," ×12 "," = ","\n /","\n "])),t.ɵppd(2,1),t.ɵppd(3,2),t.ɵppd(4,1),t.ɵppd(5,2),t.ɵppd(6,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"basePrice")),t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].basePrice,"$")),t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),e.baseTotal(!0),"$")),t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"additionalUsers")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"users")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(3,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(6,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(7,null,["\n "," × "," ×12 "," = "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,1),t.ɵppd(10,2),t.ɵppd(11,1)],function(n,l){var e=l.component;n(l,3,0,e.plans[e.plan].baseSeats),n(l,6,0,!e.plans[e.plan].baseSeats)},function(n,l){var e=l.component;n(l,7,0,e.additionalSeats||0,t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].seatPrice,"$")),t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent,1),e.seatTotal(!0),"$")),t.ɵunv(l,7,4,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"year")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",":\n "," ×12 "," = "," /","\n "])),t.ɵppd(2,1),t.ɵppd(3,2),t.ɵppd(4,1),t.ɵppd(5,2),t.ɵppd(6,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess")),t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),3.33,"$")),t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),40,"$")),t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",": "," /","\n "])),t.ɵppd(2,1),t.ɵppd(3,2),t.ɵppd(4,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"basePrice")),t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,1),e.baseTotal(!1),"$")),t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"month")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"additionalUsers")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"users")))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(3,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(6,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(7,null,["\n "," × "," = "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,2),t.ɵppd(10,1)],function(n,l){var e=l.component;n(l,3,0,e.plans[e.plan].baseSeats),n(l,6,0,!e.plans[e.plan].baseSeats)},function(n,l){var e=l.component;n(l,7,0,e.additionalSeats||0,t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,1),e.plans[e.plan].monthlySeatPrice,"$")),t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,1),e.seatTotal(!1),"$")),t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent.parent,0),"month")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["class","form-check-input"],["id","intervalMonthly"],["name","BillingInterval"],["type","radio"],["value","month"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,4).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,4).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.interval=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(4,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(6,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(8,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,15,"label",[["class","form-check-label"],["for","intervalMonthly"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(14,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(17,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"small",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["\n ",": "," × "," = "," /","\n "])),t.ɵppd(21,1),t.ɵppd(22,2),t.ɵppd(23,2),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"BillingInterval","month");n(l,6,0,"BillingInterval",e.interval),n(l,14,0,e.plans[e.plan].monthlyBasePrice),n(l,17,0,!e.plans[e.plan].noAdditionalSeats)},function(n,l){var e=l.component;n(l,2,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"monthly"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"additionalStorageGb")),e.additionalStorage||0,t.ɵunv(l,20,2,n(l,22,0,t.ɵnov(l.parent.parent.parent,1),e.storageGb.monthlyPrice,"$")),t.ɵunv(l,20,3,n(l,23,0,t.ɵnov(l.parent.parent.parent,1),e.additionalStorageTotal(!1),"$")),t.ɵunv(l,20,4,n(l,24,0,t.ɵnov(l.parent.parent.parent,0),"month")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,104,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(3,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(10,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,23,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,20,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,2,"label",[["for","additionalStorage"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,7,"input",[["class","form-control"],["id","additionalStorage"],["max","99"],["min","0"],["name","AdditionalStorageGb"],["step","1"],["type","number"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,21)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,21).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,21)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,21)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,22).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,22).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,22).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalStorage=e)&&u);return u},null,null)),t.ɵdid(21,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(22,16384,null,0,u.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.ɵangular_packages_forms_forms_bd]),t.ɵdid(24,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(26,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,4,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,2),t.ɵppd(32,1),t.ɵppd(33,4),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,4,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(40,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,30,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,6,"input",[["class","form-check-input"],["id","intervalAnnually"],["name","BillingInterval"],["type","radio"],["value","year"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,50)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,50).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,50)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,50)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,51).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.interval=e)&&u);return u},null,null)),t.ɵdid(50,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(51,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(53,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(55,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,19,"label",[["class","form-check-label"],["for","intervalAnnually"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["\n ","\n "])),t.ɵppd(59,1),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(61,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(64,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,6,"small",[],null,null,null,null,null)),(n()(),t.ɵted(67,null,["\n ",": "," × "," ×12 "," = "," /","\n "])),t.ɵppd(68,1),t.ɵppd(69,2),t.ɵppd(70,1),t.ɵppd(71,2),t.ɵppd(72,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(75,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(80,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,0,"hr",[["class","my-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,7,"div",[["class","text-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(87,null,["",":"])),t.ɵppd(88,1),(n()(),t.ɵted(89,null,[" "," /","\n "])),t.ɵppd(90,2),t.ɵppd(91,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,3,"small",[["class","text-muted font-italic"]],null,null,null,null,null)),(n()(),t.ɵted(94,null,["",""])),t.ɵppd(95,1),t.ɵppd(96,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(98,0,null,null,2,"h2",[["class","spaced-header mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(99,null,["",""])),t.ɵppd(100,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,1,"app-payment",[],null,null,null,a.View_PaymentComponent_0,a.RenderType_PaymentComponent)),t.ɵdid(103,245760,[[1,4]],0,s.PaymentComponent,[d.I18nService,c.PlatformUtilsService],{hidePaypal:[0,"hidePaypal"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.plans[e.plan].noAdditionalSeats&&!e.plans[e.plan].baseSeats),n(l,10,0,!e.plans[e.plan].noAdditionalSeats&&e.plans[e.plan].baseSeats);n(l,24,0,"AdditionalStorageGb",e.additionalStorage),n(l,40,0,e.plans[e.plan].canBuyPremiumAccessAddon);n(l,51,0,"BillingInterval","year");n(l,53,0,"BillingInterval",e.interval),n(l,61,0,e.plans[e.plan].annualBasePrice),n(l,64,0,!e.plans[e.plan].noAdditionalSeats),n(l,75,0,e.plans[e.plan].canBuyPremiumAccessAddon&&e.premiumAccessAddon),n(l,80,0,e.plans[e.plan].monthlySeatPrice);n(l,103,0,!0)},function(n,l){var e=l.component;n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"addons"))),n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb"))),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"additionalStorageGbDesc")),""),t.ɵnov(l,26).ngClassUntouched,t.ɵnov(l,26).ngClassTouched,t.ɵnov(l,26).ngClassPristine,t.ɵnov(l,26).ngClassDirty,t.ɵnov(l,26).ngClassValid,t.ɵnov(l,26).ngClassInvalid,t.ɵnov(l,26).ngClassPending),n(l,30,0,t.ɵunv(l,30,0,n(l,33,0,t.ɵnov(l.parent.parent,0),"additionalStorageIntervalDesc","1 GB",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent,1),e.storageGb.price,"$")),t.ɵunv(l,30,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"month"))))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l.parent.parent,0),"summary"))),n(l,49,0,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"annually"))),n(l,67,0,t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb")),e.additionalStorage||0,t.ɵunv(l,67,2,n(l,69,0,t.ɵnov(l.parent.parent,1),e.storageGb.price,"$")),t.ɵunv(l,67,3,n(l,70,0,t.ɵnov(l.parent.parent,0),"monthAbbr")),t.ɵunv(l,67,4,n(l,71,0,t.ɵnov(l.parent.parent,1),e.additionalStorageTotal(!0),"$")),t.ɵunv(l,67,5,n(l,72,0,t.ɵnov(l.parent.parent,0),"year"))),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"total"))),n(l,89,0,t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l.parent.parent,1),e.total,"USD $")),t.ɵunv(l,89,1,n(l,91,0,t.ɵnov(l.parent.parent,0),e.interval))),n(l,94,0,t.ɵunv(l,94,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"paymentChargedWithTrial",t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent.parent,0),e.interval))))),n(l,99,0,t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l.parent.parent,0),"paymentInformation")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,202,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(3,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,33,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,14,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(20,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(23,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(25,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,14,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"label",[["for","billingEmail"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"input",[["class","form-control"],["id","billingEmail"],["name","BillingEmail"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,35)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,35).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,35)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,35)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.billingEmail=e)&&u);return u},null,null)),t.ɵdid(35,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(36,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(39,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(41,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,12,"div",[["class","form-group form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,5,"input",[["class","form-check-input"],["id","ownedBusiness"],["name","OwnedBusiness"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,48).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.ownedBusiness=e)&&u);"change"===l&&(u=!1!==o.changedOwnedBusiness()&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,2,"label",[["class","form-check-label"],["for","ownedBusiness"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["",""])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(60,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(67,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(70,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,46,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(74,0,null,null,6,"input",[["class","form-check-input"],["id","planTeams"],["name","PlanType"],["type","radio"],["value","teams"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,75)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,75).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,75)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,75)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,76).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,76).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(75,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(76,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(78,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(80,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,35,"label",[["class","form-check-label"],["for","planTeams"]],null,null,null,null,null)),(n()(),t.ɵted(83,null,["\n ","\n "])),t.ɵppd(84,1),(n()(),t.ɵeld(85,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(86,null,["",""])),t.ɵppd(87,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(89,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(90,null,["• ",""])),t.ɵppd(91,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(94,null,["• ",""])),t.ɵppd(95,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(97,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(98,null,["• ",""])),t.ɵppd(99,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(102,null,["• ",""])),t.ɵppd(103,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(105,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(106,null,["• ",""])),t.ɵppd(107,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(109,0,null,null,7,"span",[],null,null,null,null,null)),(n()(),t.ɵted(110,null,[""," /",", ",", ","\n "," /",""])),t.ɵppd(111,2),t.ɵppd(112,1),t.ɵppd(113,2),t.ɵppd(114,1),t.ɵppd(115,2),t.ɵppd(116,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(120,0,null,null,63,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(122,0,null,null,6,"input",[["class","form-check-input"],["id","planEnterprise"],["name","PlanType"],["type","radio"],["value","enterprise"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,123)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,123).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,123)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,123)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,124).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,124).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(123,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(124,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(126,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(128,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(130,0,null,null,52,"label",[["class","form-check-label"],["for","planEnterprise"]],null,null,null,null,null)),(n()(),t.ɵted(131,null,["\n ","\n "])),t.ɵppd(132,1),(n()(),t.ɵeld(133,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(134,null,["",""])),t.ɵppd(135,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(137,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(138,null,["• ",""])),t.ɵppd(139,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(141,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(142,null,["• ",""])),t.ɵppd(143,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(145,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(146,null,["• ",""])),t.ɵppd(147,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(149,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(150,null,["• ",""])),t.ɵppd(151,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(153,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(154,null,["• ",""])),t.ɵppd(155,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(157,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(158,null,["• ",""])),t.ɵppd(159,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(161,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(162,null,["• ",""])),t.ɵppd(163,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(165,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(166,null,["• ",""])),t.ɵppd(167,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(169,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(170,null,["• ",""])),t.ɵppd(171,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(173,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(174,null,["• ",""])),t.ɵppd(175,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(177,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(178,null,[""," /",""])),t.ɵppd(179,2),t.ɵppd(180,2),t.ɵppd(181,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(186,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(188,0,null,null,13,"div",[],null,null,null,null,null)),t.ɵdid(189,278528,null,0,i.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(190,{"mt-4":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(192,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(194,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(195,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(197,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(198,null,["",""])),t.ɵppd(199,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise);n(l,20,0,"");n(l,23,0,"Name",e.name);n(l,36,0,"");n(l,39,0,"BillingEmail",e.billingEmail);n(l,50,0,"OwnedBusiness",e.ownedBusiness),n(l,60,0,e.ownedBusiness),n(l,67,0,!e.ownedBusiness),n(l,70,0,!e.ownedBusiness);n(l,76,0,"PlanType","teams");n(l,78,0,"PlanType",e.plan);n(l,124,0,"PlanType","enterprise");n(l,126,0,"PlanType",e.plan),n(l,186,0,!e.plans[e.plan].noPayment),n(l,189,0,n(l,190,0,e.plans[e.plan].noPayment))},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"generalInformation"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"organizationName"))),n(l,18,0,t.ɵnov(l,20).required?"":null,t.ɵnov(l,25).ngClassUntouched,t.ɵnov(l,25).ngClassTouched,t.ɵnov(l,25).ngClassPristine,t.ɵnov(l,25).ngClassDirty,t.ɵnov(l,25).ngClassValid,t.ɵnov(l,25).ngClassInvalid,t.ɵnov(l,25).ngClassPending),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"billingEmail"))),n(l,34,0,t.ɵnov(l,36).required?"":null,t.ɵnov(l,41).ngClassUntouched,t.ɵnov(l,41).ngClassTouched,t.ɵnov(l,41).ngClassPristine,t.ɵnov(l,41).ngClassDirty,t.ɵnov(l,41).ngClassValid,t.ɵnov(l,41).ngClassInvalid,t.ɵnov(l,41).ngClassPending),n(l,47,0,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,55,0,t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"accountOwnedBusiness"))),n(l,63,0,t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent,0),"chooseYourPlan"))),n(l,74,0,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending),n(l,83,0,t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l.parent,0),"planNameTeams"))),n(l,86,0,t.ɵunv(l,86,0,n(l,87,0,t.ɵnov(l.parent,0),"planDescTeams"))),n(l,90,0,t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"))),n(l,94,0,t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"))),n(l,98,0,t.ɵunv(l,98,0,n(l,99,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"))),n(l,102,0,t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"))),n(l,106,0,t.ɵunv(l,106,0,n(l,107,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"))),n(l,110,0,t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,1),5,"$")),t.ɵunv(l,110,1,n(l,112,0,t.ɵnov(l.parent,0),"month")),t.ɵunv(l,110,2,n(l,113,0,t.ɵnov(l.parent,0),"includesXUsers",5)),t.ɵunv(l,110,3,n(l,114,0,t.ɵnov(l.parent,0),"additionalUsers")).toLowerCase(),t.ɵunv(l,110,4,n(l,115,0,t.ɵnov(l.parent,1),2,"$")),t.ɵunv(l,110,5,n(l,116,0,t.ɵnov(l.parent,0),"month"))),n(l,122,0,t.ɵnov(l,128).ngClassUntouched,t.ɵnov(l,128).ngClassTouched,t.ɵnov(l,128).ngClassPristine,t.ɵnov(l,128).ngClassDirty,t.ɵnov(l,128).ngClassValid,t.ɵnov(l,128).ngClassInvalid,t.ɵnov(l,128).ngClassPending),n(l,131,0,t.ɵunv(l,131,0,n(l,132,0,t.ɵnov(l.parent,0),"planNameEnterprise"))),n(l,134,0,t.ɵunv(l,134,0,n(l,135,0,t.ɵnov(l.parent,0),"planDescEnterprise"))),n(l,138,0,t.ɵunv(l,138,0,n(l,139,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"))),n(l,142,0,t.ɵunv(l,142,0,n(l,143,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"))),n(l,146,0,t.ɵunv(l,146,0,n(l,147,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"))),n(l,150,0,t.ɵunv(l,150,0,n(l,151,0,t.ɵnov(l.parent,0),"controlAccessWithGroups"))),n(l,154,0,t.ɵunv(l,154,0,n(l,155,0,t.ɵnov(l.parent,0),"trackAuditLogs"))),n(l,158,0,t.ɵunv(l,158,0,n(l,159,0,t.ɵnov(l.parent,0),"syncUsersFromDirectory"))),n(l,162,0,t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l.parent,0),"onPremHostingOptional"))),n(l,166,0,t.ɵunv(l,166,0,n(l,167,0,t.ɵnov(l.parent,0),"usersGetPremium"))),n(l,170,0,t.ɵunv(l,170,0,n(l,171,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"))),n(l,174,0,t.ɵunv(l,174,0,n(l,175,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"))),n(l,178,0,t.ɵunv(l,178,0,n(l,180,0,t.ɵnov(l.parent,0),"costPerUser",t.ɵunv(l,178,0,n(l,179,0,t.ɵnov(l.parent,1),3,"$")))),t.ɵunv(l,178,1,n(l,181,0,t.ɵnov(l.parent,0),"month"))),n(l,192,0,t.ɵnov(l,0).loading),n(l,194,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,194,0,n(l,195,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,198,0,t.ɵunv(l,198,0,n(l,199,0,t.ɵnov(l.parent,0),"submit")))})}function z(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[d.I18nService]),t.ɵpid(0,i.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(18,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,e.selfHosted),n(l,18,0,!e.selfHosted)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"newOrganization"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"newOrganizationDesc")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-create-organization",[],null,null,null,z,b)),t.ɵdid(1,114688,null,0,f.CreateOrganizationComponent,[v.ApiService,d.I18nService,h.Angulartics2,g.ToasterService,c.PlatformUtilsService,m.CryptoService,y.Router,C.SyncService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CreateOrganizationComponent=b,l.View_CreateOrganizationComponent_0=z,l.View_CreateOrganizationComponent_Host_0=G;var j=t.ɵccf("app-create-organization",f.CreateOrganizationComponent,G,{},{},[]);l.CreateOrganizationComponentNgFactory=j},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationCreateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(7),r=e(3),i=e(4),a=e(10),s=e(472),d=e(8),c=e(20),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"premium")))})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"span",[["class","badge badge-success"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1),t.ɵppd(3,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,3,0,t.ɵnov(l.parent,1),t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"free")))))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),t.ɵpid(0,i.UpperCasePipe,[]),(n()(),t.ɵeld(2,0,null,null,117,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,114,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,105,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,32,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,25,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"a",[["class","list-group-item"],["routerLink","generator"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,17).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(17,671744,[[2,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(18,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(21,null,["\n ","\n "])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,25).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(25,671744,[[4,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(26,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(29,null,["\n ","\n "])),t.ɵppd(30,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,33).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(33,671744,[[6,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(34,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,68,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(45,null,["\n ","\n "])),t.ɵppd(46,1),(n()(),t.ɵeld(47,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(50,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,55,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,57).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(57,671744,[[8,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(58,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,65).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(65,671744,[[10,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(66,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(69,null,["\n ","\n "])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,73).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(73,671744,[[12,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(74,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,81).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(81,671744,[[14,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(82,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(85,null,["\n ","\n "])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,89).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(89,671744,[[16,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(90,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,15,{links:1}),t.ɵqud(603979776,16,{linksWithHrefs:1}),(n()(),t.ɵted(93,null,["\n ","\n "])),t.ɵppd(94,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,12,"a",[["class","list-group-item d-flex"],["routerLink","breach-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,97).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(97,671744,[[18,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(98,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,17,{links:1}),t.ɵqud(603979776,18,{linksWithHrefs:1}),(n()(),t.ɵted(101,null,["\n ","\n "])),t.ɵppd(102,1),(n()(),t.ɵeld(103,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(106,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(113,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(115,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(116,212992,null,0,a.RouterOutlet,[a.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,17,0,"generator");n(l,18,0,"active");n(l,25,0,"import");n(l,26,0,"active");n(l,33,0,"export");n(l,34,0,"active"),n(l,50,0,!e.canAccessPremium);n(l,57,0,"exposed-passwords-report");n(l,58,0,"active");n(l,65,0,"reused-passwords-report");n(l,66,0,"active");n(l,73,0,"weak-passwords-report");n(l,74,0,"active");n(l,81,0,"unsecured-websites-report");n(l,82,0,"active");n(l,89,0,"inactive-two-factor-report");n(l,90,0,"active");n(l,97,0,"breach-report");n(l,98,0,"active"),n(l,106,0,!e.canAccessPremium),n(l,116,0)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"tools"))),n(l,16,0,t.ɵnov(l,17).target,t.ɵnov(l,17).href),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"passwordGenerator"))),n(l,24,0,t.ɵnov(l,25).target,t.ɵnov(l,25).href),n(l,29,0,t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"importData"))),n(l,32,0,t.ɵnov(l,33).target,t.ɵnov(l,33).href),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"exportVault"))),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"reports"))),n(l,56,0,t.ɵnov(l,57).target,t.ɵnov(l,57).href),n(l,61,0,t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"exposedPasswordsReport"))),n(l,64,0,t.ɵnov(l,65).target,t.ɵnov(l,65).href),n(l,69,0,t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l,0),"reusedPasswordsReport"))),n(l,72,0,t.ɵnov(l,73).target,t.ɵnov(l,73).href),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"weakPasswordsReport"))),n(l,80,0,t.ɵnov(l,81).target,t.ɵnov(l,81).href),n(l,85,0,t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"unsecuredWebsitesReport"))),n(l,88,0,t.ɵnov(l,89).target,t.ɵnov(l,89).href),n(l,93,0,t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"inactive2faReport"))),n(l,96,0,t.ɵnov(l,97).target,t.ɵnov(l,97).href),n(l,101,0,t.ɵunv(l,101,0,n(l,102,0,t.ɵnov(l,0),"dataBreachReport")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-tools",[],null,null,null,h,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=h,l.View_ToolsComponent_Host_0=g;var m=t.ɵccf("app-tools",s.ToolsComponent,g,{},{},[]);l.ToolsComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(31),i=e(28),a=e(3),s=e(7),d=e(19),c=e(18),p=e(254),f=e(6),v=e(13),h=e(225),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"option",[["disabled",""],["value","-"]],null,null,null,null,null)),t.ɵdid(3,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(4,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(7,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaferPass browser extension, click the hamburger icon in the top left corner and navigate to "Settings". Click\n the "Export accounts" button to save the CSV file.\n ']))],null,null)}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Meldium web vault, navigate to "Settings". Locate the "Export data" function and click "Show me my data" to save\n the CSV file.\n ']))],null,null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Keeper web vault (keepersecurity.com/vault). Navigate to "Backup" (top right) and find the "Export to .csv File"\n option. Click "Export Now" to save the CSV file.\n ']))],null,null)}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n The process is exactly the same as importing from Google Chrome.\n "]))],null,null)}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2sMldAI"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,110,"app-callout",[["type","info"]],null,null,null,r.View_CalloutComponent_0,r.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,_)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,R)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,I)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,A)),t.ɵdid(22,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,O)),t.ɵdid(25,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,N)),t.ɵdid(28,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,E)),t.ɵdid(31,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,T)),t.ɵdid(34,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,P)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,x)),t.ɵdid(40,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,M)),t.ɵdid(43,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,D)),t.ɵdid(46,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,U)),t.ɵdid(49,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,F)),t.ɵdid(52,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,L)),t.ɵdid(55,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,z)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,G)),t.ɵdid(61,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,j)),t.ɵdid(64,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,q)),t.ɵdid(67,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,B)),t.ɵdid(70,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,K)),t.ɵdid(73,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,H)),t.ɵdid(76,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,$)),t.ɵdid(79,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,W)),t.ɵdid(82,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Y)),t.ɵdid(85,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,X)),t.ɵdid(94,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Q)),t.ɵdid(97,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,nn)),t.ɵdid(100,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,ln)),t.ɵdid(103,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format)},null)}function on(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(8,0,[["form",1]],null,76,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,9).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,9).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(9,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(11,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(12,540672,null,0,d.ApiActionDirective,[t.ElementRef,c.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,24,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,21,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["1. ",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,14,"select",[["class","form-control"],["id","type"],["name","Format"],["required",""]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(26,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(29,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(31,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(34,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,10,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,7,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(53,null,["2. ",""])),t.ɵppd(54,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"label",[["for","fileContents"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,5,"textarea",[["class","form-control"],["id","fileContents"],["name","FileContents"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.fileContents=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(70,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(72,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(77,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(81,null,["",""])),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.formPromise);n(l,26,0,"");n(l,29,0,"Format",e.format),n(l,34,0,e.featuredImportOptions),n(l,37,0,e.importOptions&&e.importOptions.length),n(l,44,0,e.format);n(l,70,0,"FileContents",e.fileContents)},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"))),n(l,8,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"))),n(l,24,0,t.ɵnov(l,26).required?"":null,t.ɵnov(l,31).ngClassUntouched,t.ɵnov(l,31).ngClassTouched,t.ɵnov(l,31).ngClassPristine,t.ɵnov(l,31).ngClassDirty,t.ɵnov(l,31).ngClassValid,t.ɵnov(l,31).ngClassInvalid,t.ɵnov(l,31).ngClassPending),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"))),n(l,67,0,t.ɵnov(l,72).ngClassUntouched,t.ɵnov(l,72).ngClassTouched,t.ɵnov(l,72).ngClassPristine,t.ɵnov(l,72).ngClassDirty,t.ɵnov(l,72).ngClassValid,t.ɵnov(l,72).ngClassInvalid,t.ɵnov(l,72).ngClassPending),n(l,75,0,t.ɵnov(l,8).loading),n(l,77,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"")),n(l,81,0,t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData")))})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-import",[],null,null,null,on,m)),t.ɵdid(1,114688,null,0,p.ImportComponent,[a.I18nService,f.Angulartics2,v.ToasterService,h.ImportService,g.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ImportComponent=m,l.View_ImportComponent_0=on,l.View_ImportComponent_Host_0=rn;var an=t.ɵccf("app-import",p.ImportComponent,rn,{},{},[]);l.ImportComponentNgFactory=an},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(49),p=e(255),f=e(21),v=e(9),h=e(226),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(4,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(19,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.SelectControlValueAccessor]),t.ɵdid(34,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(36,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(66,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"))),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"")),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-export",[],null,null,null,m,g)),t.ɵdid(1,49152,null,0,p.ExportComponent,[f.CryptoService,o.I18nService,v.PlatformUtilsService,h.ExportService],null,null)],null,null)}l.RenderType_ExportComponent=g,l.View_ExportComponent_0=m,l.View_ExportComponent_Host_0=y;var C=t.ɵccf("app-export",p.ExportComponent,y,{},{onSaved:"onSaved"},[]);l.ExportComponentNgFactory=C},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]128&&(this.options.length=128),this.options.minNumber?this.options.minNumber>this.options.length?this.options.minNumber=this.options.length:this.options.minNumber>9&&(this.options.minNumber=9):this.options.minNumber=0,this.options.minSpecial?this.options.minSpecial>this.options.length?this.options.minSpecial=this.options.length:this.options.minSpecial>9&&(this.options.minSpecial=9):this.options.minSpecial=0,this.options.minSpecial+this.options.minNumber>this.options.length&&(this.options.minSpecial=this.options.length-this.options.minNumber),null==this.options.numWords||this.options.length<3?this.options.numWords=3:this.options.numWords>20&&(this.options.numWords=20),null!=this.options.wordSeparator&&this.options.wordSeparator.length>1&&(this.options.wordSeparator=this.options.wordSeparator[0])},n}();l.PasswordGeneratorComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0),n(l,6,0,0===e.ciphers.length)},null)}function U(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(2,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,2,0,l.component.ciphers)},null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-ciphers",[],null,null,null,U,w)),t.ɵdid(1,180224,null,0,v.CiphersComponent,[h.SearchService,g.Angulartics2,m.ToasterService,f.I18nService,y.PlatformUtilsService,C.CipherService,b.ApiService],null,null)],null,null)}l.RenderType_CiphersComponent=w,l.View_CiphersComponent_0=U,l.View_CiphersComponent_Host_0=F;var L=t.ɵccf("app-org-vault-ciphers",v.CiphersComponent,F,{activeCipherId:"activeCipherId",showAddNew:"showAddNew"},{onCipherClicked:"onCipherClicked",onCipherRightClicked:"onCipherRightClicked",onAddCipher:"onAddCipher",onAddCipherOptions:"onAddCipherOptions",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked",onEventsClicked:"onEventsClicked"},[]);l.CiphersComponentNgFactory=L},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.User_LoggedIn=1e3]="User_LoggedIn",n[n.User_ChangedPassword=1001]="User_ChangedPassword",n[n.User_Updated2fa=1002]="User_Updated2fa",n[n.User_Disabled2fa=1003]="User_Disabled2fa",n[n.User_Recovered2fa=1004]="User_Recovered2fa",n[n.User_FailedLogIn=1005]="User_FailedLogIn",n[n.User_FailedLogIn2fa=1006]="User_FailedLogIn2fa",n[n.Cipher_Created=1100]="Cipher_Created",n[n.Cipher_Updated=1101]="Cipher_Updated",n[n.Cipher_Deleted=1102]="Cipher_Deleted",n[n.Cipher_AttachmentCreated=1103]="Cipher_AttachmentCreated",n[n.Cipher_AttachmentDeleted=1104]="Cipher_AttachmentDeleted",n[n.Cipher_Shared=1105]="Cipher_Shared",n[n.Cipher_UpdatedCollections=1106]="Cipher_UpdatedCollections",n[n.Collection_Created=1300]="Collection_Created",n[n.Collection_Updated=1301]="Collection_Updated",n[n.Collection_Deleted=1302]="Collection_Deleted",n[n.Group_Created=1400]="Group_Created",n[n.Group_Updated=1401]="Group_Updated",n[n.Group_Deleted=1402]="Group_Deleted",n[n.OrganizationUser_Invited=1500]="OrganizationUser_Invited",n[n.OrganizationUser_Confirmed=1501]="OrganizationUser_Confirmed",n[n.OrganizationUser_Updated=1502]="OrganizationUser_Updated",n[n.OrganizationUser_Removed=1503]="OrganizationUser_Removed",n[n.OrganizationUser_UpdatedGroups=1504]="OrganizationUser_UpdatedGroups",n[n.Organization_Updated=1600]="Organization_Updated",n[n.Organization_PurgedVault=1601]="Organization_PurgedVault"}(l.EventType||(l.EventType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(7),r=e(3),i=e(10),a=e(4),s=e(482),d=e(8),c=e(20),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"upgrade")))})}function v(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,95,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,92,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,83,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,24,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,17,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(28,null,["\n ","\n "])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,54,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["\n ","\n "])),t.ɵppd(37,1),(n()(),t.ɵeld(38,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(41,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,41,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,48).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(48,671744,[[6,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(49,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(52,null,["\n ","\n "])),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,56).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(56,671744,[[8,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(57,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(60,null,["\n ","\n "])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,64).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(64,671744,[[10,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(65,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(68,null,["\n ","\n "])),t.ɵppd(69,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,72).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(72,671744,[[12,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(73,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,80).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(80,671744,[[14,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(81,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(84,null,["\n ","\n "])),t.ɵppd(85,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(93,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,16,0,"import");n(l,17,0,"active");n(l,24,0,"export");n(l,25,0,"active"),n(l,41,0,!e.accessReports);n(l,48,0,"exposed-passwords-report");n(l,49,0,"active");n(l,56,0,"reused-passwords-report");n(l,57,0,"active");n(l,64,0,"weak-passwords-report");n(l,65,0,"active");n(l,72,0,"unsecured-websites-report");n(l,73,0,"active");n(l,80,0,"inactive-two-factor-report");n(l,81,0,"active"),n(l,93,0)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"tools"))),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"importData"))),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"exportVault"))),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"reports"))),n(l,47,0,t.ɵnov(l,48).target,t.ɵnov(l,48).href),n(l,52,0,t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"exposedPasswordsReport"))),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"reusedPasswordsReport"))),n(l,63,0,t.ɵnov(l,64).target,t.ɵnov(l,64).href),n(l,68,0,t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,0),"weakPasswordsReport"))),n(l,71,0,t.ɵnov(l,72).target,t.ɵnov(l,72).href),n(l,76,0,t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l,0),"unsecuredWebsitesReport"))),n(l,79,0,t.ɵnov(l,80).target,t.ɵnov(l,80).href),n(l,84,0,t.ɵunv(l,84,0,n(l,85,0,t.ɵnov(l,0),"inactive2faReport")))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-tools",[],null,null,null,v,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[i.ActivatedRoute,d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=v,l.View_ToolsComponent_Host_0=h;var g=t.ɵccf("app-org-tools",s.ToolsComponent,h,{},{},[]);l.ToolsComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(31),i=e(28),a=e(3),s=e(7),d=e(19),c=e(18),p=e(483),f=e(6),v=e(13),h=e(225),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"option",[["disabled",""],["value","-"]],null,null,null,null,null)),t.ɵdid(3,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(4,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(7,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaferPass browser extension, click the hamburger icon in the top left corner and navigate to "Settings". Click\n the "Export accounts" button to save the CSV file.\n ']))],null,null)}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Meldium web vault, navigate to "Settings". Locate the "Export data" function and click "Show me my data" to save\n the CSV file.\n ']))],null,null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Keeper web vault (keepersecurity.com/vault). Navigate to "Backup" (top right) and find the "Export to .csv File"\n option. Click "Export Now" to save the CSV file.\n ']))],null,null)}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n The process is exactly the same as importing from Google Chrome.\n "]))],null,null)}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2sMldAI"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,110,"app-callout",[["type","info"]],null,null,null,r.View_CalloutComponent_0,r.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,_)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,R)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,I)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,A)),t.ɵdid(22,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,O)),t.ɵdid(25,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,N)),t.ɵdid(28,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,E)),t.ɵdid(31,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,T)),t.ɵdid(34,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,P)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,x)),t.ɵdid(40,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,M)),t.ɵdid(43,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,D)),t.ɵdid(46,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,U)),t.ɵdid(49,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,F)),t.ɵdid(52,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,L)),t.ɵdid(55,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,z)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,G)),t.ɵdid(61,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,j)),t.ɵdid(64,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,q)),t.ɵdid(67,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,B)),t.ɵdid(70,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,K)),t.ɵdid(73,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,H)),t.ɵdid(76,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,$)),t.ɵdid(79,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,W)),t.ɵdid(82,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Y)),t.ɵdid(85,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,X)),t.ɵdid(94,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Q)),t.ɵdid(97,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,nn)),t.ɵdid(100,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,ln)),t.ɵdid(103,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format)},null)}function on(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(8,0,[["form",1]],null,76,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,9).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,9).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(9,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(11,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(12,540672,null,0,d.ApiActionDirective,[t.ElementRef,c.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,24,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,21,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["1. ",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,14,"select",[["class","form-control"],["id","type"],["name","Format"],["required",""]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(26,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(29,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(31,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(34,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,10,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,7,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(53,null,["2. ",""])),t.ɵppd(54,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"label",[["for","fileContents"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,5,"textarea",[["class","form-control"],["id","fileContents"],["name","FileContents"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.fileContents=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(70,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(72,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(77,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(81,null,["",""])),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.formPromise);n(l,26,0,"");n(l,29,0,"Format",e.format),n(l,34,0,e.featuredImportOptions),n(l,37,0,e.importOptions&&e.importOptions.length),n(l,44,0,e.format);n(l,70,0,"FileContents",e.fileContents)},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"))),n(l,8,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"))),n(l,24,0,t.ɵnov(l,26).required?"":null,t.ɵnov(l,31).ngClassUntouched,t.ɵnov(l,31).ngClassTouched,t.ɵnov(l,31).ngClassPristine,t.ɵnov(l,31).ngClassDirty,t.ɵnov(l,31).ngClassValid,t.ɵnov(l,31).ngClassInvalid,t.ɵnov(l,31).ngClassPending),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"))),n(l,67,0,t.ɵnov(l,72).ngClassUntouched,t.ɵnov(l,72).ngClassTouched,t.ɵnov(l,72).ngClassPristine,t.ɵnov(l,72).ngClassDirty,t.ɵnov(l,72).ngClassValid,t.ɵnov(l,72).ngClassInvalid,t.ɵnov(l,72).ngClassPending),n(l,75,0,t.ɵnov(l,8).loading),n(l,77,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"")),n(l,81,0,t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData")))})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-import",[],null,null,null,on,m)),t.ɵdid(1,114688,null,0,p.ImportComponent,[a.I18nService,f.Angulartics2,v.ToasterService,h.ImportService,g.Router,g.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ImportComponent=m,l.View_ImportComponent_0=on,l.View_ImportComponent_Host_0=rn;var an=t.ɵccf("app-org-import",p.ImportComponent,rn,{},{},[]);l.ImportComponentNgFactory=an},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(49),p=e(484),f=e(21),v=e(9),h=e(226),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(4,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(19,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.SelectControlValueAccessor]),t.ɵdid(34,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(36,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(66,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"))),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"")),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-export",[],null,null,null,y,m)),t.ɵdid(1,114688,null,0,p.ExportComponent,[f.CryptoService,o.I18nService,v.PlatformUtilsService,h.ExportService,g.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ExportComponent=m,l.View_ExportComponent_0=y,l.View_ExportComponent_Host_0=C;var b=t.ɵccf("app-org-export",p.ExportComponent,C,{},{onSaved:"onSaved"},[]);l.ExportComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(485),h=e(23),g=e(104),m=e(20),y=e(8),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noExposedPasswords")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,34,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,6,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,3,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),t.ɵppd(32,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component;n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,30,0,t.ɵunv(l,30,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"exposedXTimes",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,1),e.exposedPasswordMap.get(l.context.$implicit.id))))))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(14,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.load()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,25,0,l.component.hasLoaded)},function(n,l){var e=l.component;n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"exposedPasswordsReport"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"exposedPasswordsReportDesc"))),n(l,14,0,e.loading),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"loading")),"")),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"checkExposedPasswords")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-exposed-passwords-report",[],null,null,null,O,b)),t.ɵdid(1,114688,null,0,v.ExposedPasswordsReportComponent,[h.CipherService,g.AuditService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ExposedPasswordsReportComponent=b,l.View_ExposedPasswordsReportComponent_0=O,l.View_ExposedPasswordsReportComponent_Host_0=N;var E=t.ɵccf("app-exposed-passwords-report",v.ExposedPasswordsReportComponent,N,{},{},[]);l.ExposedPasswordsReportComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(486),h=e(23),g=e(20),m=e(8),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noInactive2fa")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"a",[["class","badge badge-primary"],["rel","noopener"],["target","_blank"]],[[8,"href",4]],null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",""])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",e.cipherDocs.get(l.parent.context.$implicit.id),"")),n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"instructions")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(30,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments),n(l,30,0,e.cipherDocs.has(l.context.$implicit.id))},function(n,l){n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"inactive2faFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"inactive2faFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function E(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"inactive2faReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"inactive2faReportDesc")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-inactive-two-factor-report",[],null,null,null,E,C)),t.ɵdid(1,114688,null,0,v.InactiveTwoFactorReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_InactiveTwoFactorReportComponent=C,l.View_InactiveTwoFactorReportComponent_0=E,l.View_InactiveTwoFactorReportComponent_Host_0=T;var P=t.ɵccf("app-inactive-two-factor-report",v.InactiveTwoFactorReportComponent,T,{},{},[]);l.InactiveTwoFactorReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(487),h=e(23),g=e(20),m=e(8),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noReusedPasswords")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component;n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"reusedXTimes",e.passwordUseMap.get(l.context.$implicit.login.password))))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"reusedPasswordsReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"reusedPasswordsReportDesc")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-reused-passwords-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.ReusedPasswordsReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ReusedPasswordsReportComponent=C,l.View_ReusedPasswordsReportComponent_0=N,l.View_ReusedPasswordsReportComponent_Host_0=E;var T=t.ɵccf("app-reused-passwords-report",v.ReusedPasswordsReportComponent,E,{},{},[]);l.ReusedPasswordsReportComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(488),h=e(23),g=e(20),m=e(8),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUnsecuredWebsites")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"unsecuredWebsitesReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"unsecuredWebsitesReportDesc")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-unsecured-websites-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.UnsecuredWebsitesReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UnsecuredWebsitesReportComponent=C,l.View_UnsecuredWebsitesReportComponent_0=N,l.View_UnsecuredWebsitesReportComponent_Host_0=E;var T=t.ɵccf("app-unsecured-websites-report",v.UnsecuredWebsitesReportComponent,E,{},{},[]);l.UnsecuredWebsitesReportComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(489),h=e(23),g=e(61),m=e(20),y=e(8),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noWeakPasswords")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component;n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,29,0,t.ɵinlineInterpolate(1,"badge badge-",e.passwordStrengthMap.get(l.context.$implicit.id)[1],"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),e.passwordStrengthMap.get(l.context.$implicit.id)[0])))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function E(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"weakPasswordsReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"weakPasswordsReportDesc")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-weak-passwords-report",[],null,null,null,E,b)),t.ɵdid(1,114688,null,0,v.WeakPasswordsReportComponent,[h.CipherService,g.PasswordGenerationService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_WeakPasswordsReportComponent=b,l.View_WeakPasswordsReportComponent_0=E,l.View_WeakPasswordsReportComponent_Host_0=T;var P=t.ɵccf("app-weak-passwords-report",v.WeakPasswordsReportComponent,T,{},{},[]);l.WeakPasswordsReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),o=e(4),r=e(7),i=e(3),a=e(490),s=e(8),d=t.ɵcrt({encapsulation:2,styles:[],data:{}});function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","people"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[2,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"people");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"people")))})}function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","groups"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[6,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"groups");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"groups")))})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","events"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[8,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"events");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"eventLogs")))})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,18,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,c)),t.ɵdid(9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,6,"a",[["class","list-group-item"],["routerLink","collections"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,12).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(12,671744,[[4,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(13,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(16,null,["\n ","\n "])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,p)),t.ɵdid(20,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(23,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,e.organization.isAdmin);n(l,12,0,"collections");n(l,13,0,"active"),n(l,20,0,e.organization.isAdmin&&e.accessGroups),n(l,23,0,e.organization.isAdmin&&e.accessEvents)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"manage"))),n(l,11,0,t.ɵnov(l,12).target,t.ɵnov(l,12).href),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent,0),"collections")))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,16,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,4,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(8,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(14,212992,null,0,u.RouterOutlet,[u.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,8,0,l.component.organization),n(l,14,0)},null)}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-manage",[],null,null,null,h,d)),t.ɵdid(1,114688,null,0,a.ManageComponent,[u.ActivatedRoute,s.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ManageComponent=d,l.View_ManageComponent_0=h,l.View_ManageComponent_Host_0=g;var m=t.ɵccf("app-org-manage",a.ManageComponent,g,{},{},[]);l.ManageComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(4),r=e(7),i=e(3),a=e(262),s=e(12),d=e(491),c=e(5),p=e(10),f=e(43),v=e(6),h=e(13),g=e(9),m=e(8),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-spin text-muted"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==o.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(6,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,26,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,23,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,15,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==o.users(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(21,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-fw fa-users"]],null,null,null,null,null)),(n()(),t.ɵted(24,null,["\n ","\n "])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(28,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-fw fa-trash-o"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,6,0,l.context.$implicit.name),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.parent.context.ngIf)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),t.ɵpid(0,a.SearchPipe,[]),t.ɵqud(402653184,1,{addEditModalRef:0}),t.ɵqud(402653184,2,{usersModalRef:0}),(n()(),t.ɵeld(4,0,null,null,29,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,22,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,13,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(23,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.add()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,_)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(40,4),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["usersTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,21,0,e.searchText),n(l,36,0,e.loading),n(l,39,0,!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.collections,e.searchText,"name","id")))},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"collections"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newCollection")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-manage-collections",[],null,null,null,k,y)),t.ɵdid(1,114688,null,0,d.CollectionsComponent,[c.ApiService,p.ActivatedRoute,f.CollectionService,t.ComponentFactoryResolver,v.Angulartics2,h.ToasterService,i.I18nService,g.PlatformUtilsService,m.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=y,l.View_CollectionsComponent_0=k,l.View_CollectionsComponent_Host_0=A;var O=t.ɵccf("app-org-manage-collections",d.CollectionsComponent,A,{},{},[]);l.CollectionsComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(19),r=e(18),i=e(7),a=e(3),s=e(12),d=e(493),c=e(5),p=e(10),f=e(229),v=e(13),h=e(8),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[],[[8,"className",0],[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"span",[],[[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,0,"td",[],[[8,"innerHTML",1]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"))),n(l,8,0,t.ɵinlineInterpolate(1,"text-muted fa fa-lg ",l.context.$implicit.appIcon,""),t.ɵinlineInterpolate(2,"",l.context.$implicit.appName,", ",l.context.$implicit.ip,"")),n(l,13,0,t.ɵinlineInterpolate(1,"",l.context.$implicit.userEmail,"")),n(l,14,0,l.context.$implicit.userName),n(l,17,0,l.context.$implicit.message)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"table",[["class","table table-hover"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,23,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,20,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"th",[["class","border-top-0"],["width","210"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"th",[["class","border-top-0"],["width","40"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"span",[["class","sr-only"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,2,"th",[["class","border-top-0"],["width","150"]],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"th",[["class","border-top-0"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(30,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,30,0,l.component.events)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"))),n(l,18,0,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"user"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"event")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["moreBtn",1]],null,9,"button",[["class","btn btn-block btn-link btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!1)&&t);return t},null,null)),t.ɵdid(1,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.morePromise)},function(n,l){n(l,0,0,l.component.loaded&&t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(6,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.events||!e.events.length),n(l,6,0,e.events&&e.events.length),n(l,9,0,e.continuationToken)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,40,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,28,"div",[["class","form-inline"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"label",[["class","sr-only"],["for","start"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","start"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,17)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,17).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,17)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,17)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.start=e)&&u);return u},null,null)),t.ɵdid(17,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(19,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(21,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["class","mx-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["-"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["class","sr-only"],["for","end"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","end"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.end=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(36,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,[["refreshBtn",1]],null,7,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!0)&&t);return t},null,null)),t.ɵdid(41,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(44,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(45,{"fa-spin":0}),(n()(),t.ɵted(46,null,["\n ","\n "])),t.ɵppd(47,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(52,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(55,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,19,0,e.start),n(l,34,0,e.end),n(l,41,0,e.refreshPromise);n(l,44,0,"fa fa-refresh fa-fw",n(l,45,0,e.loaded&&t.ɵnov(l,40).loading)),n(l,52,0,!e.loaded),n(l,55,0,e.loaded)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l,0),"eventLogs"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"startDate"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,22,0,t.ɵnov(l,0),"startDate")),""),t.ɵnov(l,21).ngClassUntouched,t.ɵnov(l,21).ngClassTouched,t.ɵnov(l,21).ngClassPristine,t.ɵnov(l,21).ngClassDirty,t.ɵnov(l,21).ngClassValid,t.ɵnov(l,21).ngClassInvalid,t.ɵnov(l,21).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"endDate"))),n(l,31,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,37,0,t.ɵnov(l,0),"endDate")),""),t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,40,0,e.loaded&&t.ɵnov(l,40).loading),n(l,46,0,t.ɵunv(l,46,0,n(l,47,0,t.ɵnov(l,0),"refresh")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-events",[],null,null,null,_,g)),t.ɵdid(1,114688,null,0,d.EventsComponent,[c.ApiService,p.ActivatedRoute,f.EventService,a.I18nService,v.ToasterService,h.UserService,p.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EventsComponent=g,l.View_EventsComponent_0=_,l.View_EventsComponent_Host_0=R;var I=t.ɵccf("app-org-events",d.EventsComponent,R,{},{},[]);l.EventsComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(4),r=e(7),i=e(3),a=e(262),s=e(12),d=e(494),c=e(5),p=e(10),f=e(6),v=e(13),h=e(9),g=e(8),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==o.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(6,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,26,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,23,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,15,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==o.users(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(21,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-fw fa-users"]],null,null,null,null,null)),(n()(),t.ɵted(24,null,["\n ","\n "])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(28,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-fw fa-trash-o"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,6,0,l.context.$implicit.name),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.parent.context.ngIf)},null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),t.ɵpid(0,a.SearchPipe,[]),t.ɵqud(402653184,1,{addEditModalRef:0}),t.ɵqud(402653184,2,{usersModalRef:0}),(n()(),t.ɵeld(4,0,null,null,29,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,22,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,13,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(23,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.add()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,S)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(40,4),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["usersTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,21,0,e.searchText),n(l,36,0,e.loading),n(l,39,0,!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.groups,e.searchText,"name","id")))},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"groups"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newGroup")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-groups",[],null,null,null,I,m)),t.ɵdid(1,114688,null,0,d.GroupsComponent,[c.ApiService,p.ActivatedRoute,i.I18nService,t.ComponentFactoryResolver,f.Angulartics2,v.ToasterService,h.PlatformUtilsService,g.UserService,p.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_GroupsComponent=m,l.View_GroupsComponent_0=I,l.View_GroupsComponent_Host_0=k;var A=t.ɵccf("app-org-groups",d.GroupsComponent,k,{},{},[]);l.GroupsComponentNgFactory=A},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.collections=[]}}();l.GroupRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(36),a=e(157),s=e(137),d=e(41),c=e(103),p=e(30),f=e(4),v=e(7),h=e(262),g=e(12),m=e(495),y=e(5),C=e(10),b=e(9),w=e(6),S=e(13),_=e(21),R=e(8),I=e(67),k=t.ɵcrt({encapsulation:2,styles:[],data:{}});function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[["class","badge badge-pill badge-info"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.invitedCount)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[["class","badge badge-pill badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.acceptedCount)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noUsersInList")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","info"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"info","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"confirmUsers")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"usersNeedConfirmed")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-secondary"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted d-block"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-lock"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"userUsingTwoStep")),""))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user")))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.reinvite(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-envelope-o"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"resendInvitation")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-success"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.confirm(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-check"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"confirm")))})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.groups(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-sitemap"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"groups")))})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.events(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-file-text-o"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"eventLogs")))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,77,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["width","30"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-avatar",[["size","25"]],null,null,null,a.View_AvatarComponent_0,a.RenderType_AvatarComponent)),t.ɵdid(5,638976,null,0,s.AvatarComponent,[d.DomSanitizer,c.CryptoFunctionService,p.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(12,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(15,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(18,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(21,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(27,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,13,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(33,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(36,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(39,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(42,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,31,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,28,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,20,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(57,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(60,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(63,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(66,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,69).onClick(e)&&u);"click"===l&&(u=!1!==o.remove(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,0,"i",[["class","fa fa-fw fa-remove"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["\n ","\n "])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit.name||l.context.$implicit.email,l.context.$implicit.email,"25",14,!0),n(l,15,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,18,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,21,0,l.context.$implicit.name),n(l,27,0,l.context.$implicit.twoFactorEnabled),n(l,33,0,l.context.$implicit.type===e.organizationUserType.Owner),n(l,36,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,39,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,42,0,l.context.$implicit.type===e.organizationUserType.User),n(l,57,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,60,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,63,0,e.accessGroups),n(l,66,0,e.accessEvents&&l.context.$implicit.status===e.organizationUserStatusType.Confirmed)},function(n,l){n(l,12,0,l.context.$implicit.email),n(l,72,0,t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent.parent.parent,0),"remove")))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,13,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(3,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(10,278528,null,0,f.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.showConfirmUsers),n(l,10,0,l.parent.context.ngIf)},null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(3,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(6,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Z(n){return t.ɵvid(0,[t.ɵpid(0,v.I18nPipe,[r.I18nService]),t.ɵpid(0,h.SearchPipe,[]),t.ɵqud(402653184,1,{addEditModalRef:0}),t.ɵqud(402653184,2,{groupsModalRef:0}),t.ɵqud(402653184,3,{eventsModalRef:0}),t.ɵqud(402653184,4,{confirmModalRef:0}),(n()(),t.ɵeld(6,0,null,null,56,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,49,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,25,"div",[["class","btn-group btn-group-sm"],["role","group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filter(null)&&t);return t},null,null)),t.ɵdid(17,278528,null,0,f.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(18,{active:0}),(n()(),t.ɵted(19,null,["\n ","\n "])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,7,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filter(u.organizationUserStatusType.Invited)&&t);return t},null,null)),t.ɵdid(23,278528,null,0,f.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(24,{active:0}),(n()(),t.ɵted(25,null,["\n ","\n "])),t.ɵppd(26,1),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(28,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,7,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filter(u.organizationUserStatusType.Accepted)&&t);return t},null,null)),t.ɵdid(32,278528,null,0,f.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(33,{active:0}),(n()(),t.ɵted(34,null,["\n ","\n "])),t.ɵppd(35,1),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(37,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,13,"div",[["class","ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,48)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,48)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,48)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,g.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,g.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,g.NG_VALUE_ACCESSOR,function(n){return[n]},[g.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,g.NgModel,[[8,null],[8,null],[8,null],[6,g.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,g.NgControl,null,[g.NgModel]),t.ɵdid(52,16384,null,0,g.NgControlStatus,[[4,g.NgControl]],null,null),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.invite()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(59,null,["\n ","\n "])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(65,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,H)),t.ɵdid(68,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(69,5),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["groupsTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["eventsTemplate",2]],null,0,null,Y)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["confirmTemplate",2]],null,0,null,J)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,17,0,"btn btn-outline-secondary",n(l,18,0,null==e.status));n(l,23,0,"btn btn-outline-secondary",n(l,24,0,e.status==e.organizationUserStatusType.Invited)),n(l,28,0,e.invitedCount);n(l,32,0,"btn btn-outline-secondary",n(l,33,0,e.status==e.organizationUserStatusType.Accepted)),n(l,37,0,e.acceptedCount),n(l,50,0,e.searchText),n(l,65,0,e.loading),n(l,68,0,!e.loading&&t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id")))},function(n,l){n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"people"))),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"all"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"invited"))),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"accepted"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"search"))),n(l,47,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,53,0,t.ɵnov(l,0),"search")),""),t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"inviteUser")))})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-people",[],null,null,null,Z,k)),t.ɵdid(1,114688,null,0,m.PeopleComponent,[y.ApiService,C.ActivatedRoute,r.I18nService,t.ComponentFactoryResolver,b.PlatformUtilsService,w.Angulartics2,S.ToasterService,_.CryptoService,R.UserService,C.Router,I.StorageService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PeopleComponent=k,l.View_PeopleComponent_0=Z,l.View_PeopleComponent_Host_0=X;var Q=t.ɵccf("app-org-people",m.PeopleComponent,X,{},{},[]);l.PeopleComponentNgFactory=Q},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.emails=[],this.collections=[]}}();l.OrganizationUserInviteRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.collections=[]}}();l.OrganizationUserUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.groupIds=[]}}();l.OrganizationUserUpdateGroupsRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),o=e(4),r=e(7),i=e(3),a=e(496),s=e(8),d=t.ɵcrt({encapsulation:2,styles:[],data:{}});function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","two-factor"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[6,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"two-factor");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"twoStepLogin")))})}function p(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,42,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,39,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,30,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,27,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,20,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,6,"a",[["class","list-group-item"],["routerLink","account"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,6,"a",[["class","list-group-item"],["routerLink","billing"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(28,null,["\n ","\n "])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,c)),t.ɵdid(32,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(40,212992,null,0,u.RouterOutlet,[u.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,16,0,"account");n(l,17,0,"active");n(l,24,0,"billing");n(l,25,0,"active"),n(l,32,0,e.access2fa),n(l,40,0)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"settings"))),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"myOrganization"))),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"billingAndLicensing")))})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-settings",[],null,null,null,p,d)),t.ɵdid(1,114688,null,0,a.SettingsComponent,[u.ActivatedRoute,s.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_SettingsComponent=d,l.View_SettingsComponent_0=p,l.View_SettingsComponent_Host_0=f;var v=t.ɵccf("app-org-settings",a.SettingsComponent,f,{},{},[]);l.SettingsComponentNgFactory=v},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(19),r=e(18),i=e(157),a=e(137),s=e(41),d=e(103),c=e(30),p=e(7),f=e(3),v=e(4),h=e(497),g=e(5),m=e(6),y=e(13),C=e(10),b=e(62),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,69,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(3,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,52,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,43,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"input",[["class","form-control"],["id","name"],["name","Name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,17)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,17).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,17)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,17)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.org.name=e)&&u);return u},null,null)),t.ɵdid(17,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(19,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(21,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"label",[["for","billingEmail"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,5,"input",[["class","form-control"],["id","billingEmail"],["name","BillingEmail"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,31)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,31).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,31)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,31)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.org.billingEmail=e)&&u);return u},null,null)),t.ɵdid(31,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(33,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(35,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"label",[["for","businessName"]],null,null,null,null,null)),(n()(),t.ɵted(41,null,["",""])),t.ɵppd(42,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,5,"input",[["class","form-control"],["id","businessName"],["name","BusinessName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,45)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,45).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,45)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,45)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.org.businessName=e)&&u);return u},null,null)),t.ɵdid(45,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(47,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(49,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,4,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"app-avatar",[["dynamic","true"],["fontSize","35"],["size","75"]],null,null,null,i.View_AvatarComponent_0,i.RenderType_AvatarComponent)),t.ɵdid(56,638976,null,0,a.AvatarComponent,[s.DomSanitizer,d.CryptoFunctionService,c.StateService],{data:[0,"data"],size:[1,"size"],fontSize:[2,"fontSize"],dynamic:[3,"dynamic"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(66,null,["",""])),t.ɵppd(67,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise);n(l,19,0,"Name",e.org.name);n(l,33,0,"BillingEmail",e.org.billingEmail);n(l,47,0,"BusinessName",e.org.businessName);n(l,56,0,t.ɵinlineInterpolate(1,"",e.org.name,""),"75","35","true")},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent,0),"organizationName"))),n(l,16,0,t.ɵnov(l,21).ngClassUntouched,t.ɵnov(l,21).ngClassTouched,t.ɵnov(l,21).ngClassPristine,t.ɵnov(l,21).ngClassDirty,t.ɵnov(l,21).ngClassValid,t.ɵnov(l,21).ngClassInvalid,t.ɵnov(l,21).ngClassPending),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"billingEmail"))),n(l,30,0,t.ɵnov(l,35).ngClassUntouched,t.ɵnov(l,35).ngClassTouched,t.ɵnov(l,35).ngClassPristine,t.ɵnov(l,35).ngClassDirty,t.ɵnov(l,35).ngClassValid,t.ɵnov(l,35).ngClassInvalid,t.ɵnov(l,35).ngClassPending),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l.parent,0),"businessName"))),n(l,44,0,t.ɵnov(l,49).ngClassUntouched,t.ɵnov(l,49).ngClassTouched,t.ɵnov(l,49).ngClassPristine,t.ɵnov(l,49).ngClassDirty,t.ɵnov(l,49).ngClassValid,t.ɵnov(l,49).ngClassInvalid,t.ɵnov(l,49).ngClassPending),n(l,60,0,t.ɵnov(l,0).loading),n(l,62,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l.parent,0),"save")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵqud(402653184,1,{deleteModalRef:0}),t.ɵqud(402653184,2,{purgeModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(14,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(16,0,null,null,5,"div",[["class","secondary-header border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",""])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(27,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://bitwarden.com/contact/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["\n ","\n"])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(31,0,null,null,5,"div",[["class","secondary-header text-danger border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(38,0,null,null,16,"div",[["class","card border-danger"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,13,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.deleteOrganization()&&t);return t},null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.purgeVault()&&t);return t},null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["deleteOrganizationTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["purgeOrganizationTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.loading),n(l,14,0,e.org&&!e.loading)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"myOrganization"))),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"taxInformation"))),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l,0),"taxInformationDesc"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"contactSupport"))),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"dangerZone"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"dangerZoneDesc"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"deleteOrganization"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"purgeVault")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-account",[],null,null,null,k,w)),t.ɵdid(1,114688,null,0,h.AccountComponent,[t.ComponentFactoryResolver,g.ApiService,f.I18nService,m.Angulartics2,y.ToasterService,C.ActivatedRoute,b.SyncService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AccountComponent=w,l.View_AccountComponent_0=k,l.View_AccountComponent_Host_0=A;var O=t.ɵccf("app-org-account",h.AccountComponent,A,{},{},[]);l.AccountComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(36),a=e(4),s=e(7),d=e(498),c=e(5),p=e(8),f=e(20),v=e(10),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(3,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(7,0,null,0,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.recoveryCode()&&t);return t},null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,0,["\n"]))],function(n,l){n(l,1,0,"warning")},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-fw text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-check text-success fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[r.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId),n(l,24,0,n(l,25,0,!e.organizationId)),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-setup",[],null,null,null,N,h)),t.ɵdid(1,114688,null,0,d.TwoFactorSetupComponent,[c.ApiService,p.UserService,t.ComponentFactoryResolver,f.MessagingService,v.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorSetupComponent=h,l.View_TwoFactorSetupComponent_0=N,l.View_TwoFactorSetupComponent_Host_0=E;var T=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,E,{},{},[]);l.TwoFactorSetupComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(19),a=e(18),s=e(4),d=e(558),c=e(466),p=e(5),f=e(6),v=e(13),h=e(874),g=e(595),m=e(559),y=e(467),C=e(12),b=e(560),w=e(468),S=e(36),_=e(7),R=e(499),I=e(70),k=e(9),A=e(10),O=t.ɵcrt({encapsulation:2,styles:[],data:{}});function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(4,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(8,0,[["reinstateBtn",1]],0,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reinstate()&&t);return t},null,null)),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"")),n(l,9,0,e.reinstatePromise)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"))),n(l,8,0,t.ɵnov(l,8).loading),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[["class","text-danger ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-exclamation-triangle"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"licenseIsExpired")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,2),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(4,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,4,0,l.component.isExpired)},function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires")))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(17,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,14,0,e.billing.expiration),n(l,17,0,!e.billing.expiration)},function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"billingPlan"))),n(l,7,0,e.billing.plan),n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent,0),"expiration")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"pendingCancellation")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,23,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"span",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,3,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["","\n "])),t.ɵppd(21,2),t.ɵppd(22,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,l.component.subscriptionMarkedForCancel)},function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"status"))),n(l,9,0,e.subscription.status||"-"),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent,0),"nextCharge"))),n(l,20,0,e.nextInvoice?t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,1),e.nextInvoice.date,"mediumDate"))+", "+t.ɵunv(l,20,0,n(l,22,0,t.ɵnov(l.parent.parent.parent,2),e.nextInvoice.amount,"$")):"-")})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n "," "," @ ","\n "])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,l.context.$implicit.name,l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.quantity*l.context.$implicit.amount,"$")),t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval)))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,"div",[["class","col-8"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[["class","d-block mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"table",[["class","table"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(11,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,11,0,l.component.subscription.items)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,14,"div",[["class","col-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,11,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,1,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(19,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,14,0,e.subscription),n(l,19,0,e.subscription)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"billingPlan"))),n(l,11,0,e.billing.plan)})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","card mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h3",[["class","card-body-header"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"app-update-license",[],null,[[null,"onUpdated"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onUpdated"===l&&(t=!1!==u.closeUpdateLicense(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeUpdateLicense(!1)&&t);return t},d.View_UpdateLicenseComponent_0,d.RenderType_UpdateLicenseComponent)),t.ɵdid(9,49152,null,0,c.UpdateLicenseComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{organizationId:[0,"organizationId"]},{onUpdated:"onUpdated",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,9,0,l.component.organizationId)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense")))})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.updateLicense()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://vault.bitwarden.com"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,14,0,l.component.showUpdateLicense)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription")))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["licenseBtn",1]],null,9,"button",[["class","btn btn-outline-secondary btn-submit ml-1"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.downloadLicense()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.licensePromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense")))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["cancelBtn",1]],null,9,"button",[["class","btn btn-outline-danger btn-submit ml-auto"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.cancel()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.cancelPromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription")))})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustSeats(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-outline-secondary ml-1"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustSeats(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addSeats"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeSeats")))})}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-seats",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeSeats(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeSeats(!1)&&t);return t},h.View_AdjustSeatsComponent_0,h.RenderType_AdjustSeatsComponent)),t.ɵdid(1,49152,null,0,g.AdjustSeatsComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{seatPrice:[0,"seatPrice"],add:[1,"add"],organizationId:[2,"organizationId"],interval:[3,"interval"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){var e=l.component;n(l,1,0,e.seatPrice,e.adjustSeatsAdd,e.organizationId,e.billingInterval)},null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustSeats),n(l,8,0,e.showAdjustSeats)},null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-outline-secondary ml-1"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage")))})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-storage",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeStorage(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeStorage(!1)&&t);return t},m.View_AdjustStorageComponent_0,m.RenderType_AdjustStorageComponent)),t.ɵdid(1,49152,null,0,y.AdjustStorageComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{storageGbPrice:[0,"storageGbPrice"],add:[1,"add"],organizationId:[2,"organizationId"],interval:[3,"interval"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){var e=l.component;n(l,1,0,e.storageGbPrice,e.adjustStorageAdd,e.organizationId,e.billingInterval)},null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustStorage),n(l,8,0,e.showAdjustStorage)},null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod")))})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,71,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(4,0,null,0,3,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,[""," ",""])),t.ɵppd(6,1),t.ɵppd(7,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(9,0,[["verifyForm",1]],0,61,"form",[["class","form-inline"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,10).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,10).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.verifyBank()&&u);return u},null,null)),t.ɵdid(10,4210688,null,0,C.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,C.ControlContainer,null,[C.NgForm]),t.ɵdid(12,16384,null,0,C.NgControlStatusGroup,[[4,C.ControlContainer]],null,null),t.ɵdid(13,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"label",[["class","sr-only"],["for","verifyAmount1"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,17,"div",[["class","input-group mr-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,4,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["$0."])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,8,"input",[["class","form-control"],["id","verifyAmount1"],["max","99"],["min","1"],["name","Amount1"],["placeholder","xx"],["required",""],["step","1"],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,28)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,28).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,28)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,28)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,29).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,29).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,29).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.verifyAmount1=e)&&u);return u},null,null)),t.ɵdid(28,16384,null,0,C.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,C.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(29,16384,null,0,C.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(30,16384,null,0,C.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,C.NG_VALIDATORS,function(n){return[n]},[C.RequiredValidator]),t.ɵprd(1024,null,C.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[C.DefaultValueAccessor,C.ɵangular_packages_forms_forms_bd]),t.ɵdid(33,671744,null,0,C.NgModel,[[2,C.ControlContainer],[6,C.NG_VALIDATORS],[8,null],[6,C.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,C.NgControl,null,[C.NgModel]),t.ɵdid(35,16384,null,0,C.NgControlStatus,[[4,C.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"label",[["class","sr-only"],["for","verifyAmount2"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,17,"div",[["class","input-group mr-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,4,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["$0."])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,8,"input",[["class","form-control"],["id","verifyAmount2"],["max","99"],["min","1"],["name","Amount2"],["placeholder","xx"],["required",""],["step","1"],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,51)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,51)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,51)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,52).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,52).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,52).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.verifyAmount2=e)&&u);return u},null,null)),t.ɵdid(51,16384,null,0,C.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,C.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(52,16384,null,0,C.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(53,16384,null,0,C.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,C.NG_VALIDATORS,function(n){return[n]},[C.RequiredValidator]),t.ɵprd(1024,null,C.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[C.DefaultValueAccessor,C.ɵangular_packages_forms_forms_bd]),t.ɵdid(56,671744,null,0,C.NgModel,[[2,C.ControlContainer],[6,C.NG_VALIDATORS],[8,null],[6,C.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,C.NgControl,null,[C.NgModel]),t.ɵdid(58,16384,null,0,C.NgControlStatus,[[4,C.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,8,"button",[["class","btn btn-outline-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(67,null,["",""])),t.ɵppd(68,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount")),"")),n(l,13,0,e.verifyBankPromise);n(l,30,0,"");n(l,33,0,"Amount1",e.verifyAmount1);n(l,53,0,"");n(l,56,0,"Amount2",e.verifyAmount2)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountDesc")),t.ɵunv(l,5,1,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountFailureWarning"))),n(l,9,0,t.ɵnov(l,12).ngClassUntouched,t.ɵnov(l,12).ngClassTouched,t.ɵnov(l,12).ngClassPristine,t.ɵnov(l,12).ngClassDirty,t.ɵnov(l,12).ngClassValid,t.ɵnov(l,12).ngClassInvalid,t.ɵnov(l,12).ngClassPending),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","1"))),n(l,27,0,t.ɵnov(l,30).required?"":null,t.ɵnov(l,35).ngClassUntouched,t.ɵnov(l,35).ngClassTouched,t.ɵnov(l,35).ngClassPristine,t.ɵnov(l,35).ngClassDirty,t.ɵnov(l,35).ngClassValid,t.ɵnov(l,35).ngClassInvalid,t.ɵnov(l,35).ngClassPending),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","2"))),n(l,50,0,t.ɵnov(l,53).required?"":null,t.ɵnov(l,58).ngClassUntouched,t.ɵnov(l,58).ngClassTouched,t.ɵnov(l,58).ngClassPristine,t.ɵnov(l,58).ngClassDirty,t.ɵnov(l,58).ngClassValid,t.ɵnov(l,58).ngClassInvalid,t.ɵnov(l,58).ngClassPending),n(l,61,0,t.ɵnov(l,9).loading),n(l,63,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),"")),n(l,67,0,t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount")))})}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),t.ɵdid(3,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(8,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(9,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2}),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.paymentSource.type===e.paymentMethodType.BankAccount&&e.paymentSource.needsVerification);n(l,8,0,"fa fa-fw",n(l,9,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal))},function(n,l){n(l,10,0,l.component.paymentSource.description)})}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePayment()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod")))})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-adjust-payment",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closePayment(!0)&&t);"onCanceled"===l&&(t=!1!==u.closePayment(!1)&&t);return t},b.View_AdjustPaymentComponent_0,b.RenderType_AdjustPaymentComponent)),t.ɵdid(1,49152,null,0,w.AdjustPaymentComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{currentType:[0,"currentType"],organizationId:[1,"organizationId"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,null!=e.paymentSource?e.paymentSource.type:null,e.organizationId)},null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCharges")))})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,28,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,5,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==o.viewInvoice(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,S.StopClickDirective,[],null,null),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[["class","fa fa-file-pdf-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"td",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(23,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(24,{"text-strike":0}),t.ɵppd(25,1),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,23,0,n(l,24,0,l.context.$implicit.refunded))},function(n,l){n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,6,0,t.ɵnov(l.parent.parent.parent.parent,0),"invoice")),"")),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"))),n(l,17,0,l.context.$implicit.paymentSource?l.context.$implicit.paymentSource.description:"-"),n(l,20,0,l.context.$implicit.status),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,25,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"")),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$")))})}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(5,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.charges)},null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,75,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePlan()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(9,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(24,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,4,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["class","progress-bar bg-success"],["role","progressbar"]],[[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(37,278528,null,0,s.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(38,{width:0}),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(44,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(51,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(54,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(57,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(60,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(67,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,on)),t.ɵdid(70,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["* ",""])),t.ɵppd(74,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,e.canDownloadLicense),n(l,12,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel),n(l,24,0,e.subscription&&e.canAdjustSeats),n(l,37,0,n(l,38,0,e.storageProgressWidth+"%")),n(l,44,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel&&e.paymentSource),n(l,51,0,!e.paymentSource),n(l,54,0,e.paymentSource),n(l,57,0,!e.showAdjustPayment),n(l,60,0,e.showAdjustPayment),n(l,67,0,!e.charges||!e.charges.length),n(l,70,0,e.charges&&e.charges.length)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"changeBillingPlan"))),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent,0),"userSeats"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"subscriptionUserSeats",e.billing.seats))),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent.parent,0),"storage"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"subscriptionStorage",e.billing.maxStorageGb||0,e.billing.storageName||"0 MB"))),n(l,36,0,e.storagePercentage),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent,0),"paymentMethod"))),n(l,63,0,t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent,0),"charges"))),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN")))})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(3,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(6,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(9,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(15,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,rn)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,e.subscription&&e.subscription.cancelled),n(l,6,0,e.subscriptionMarkedForCancel),n(l,9,0,e.selfHosted),n(l,12,0,!e.selfHosted),n(l,15,0,e.selfHosted),n(l,18,0,!e.selfHosted)},null)}function sn(n){return t.ɵvid(0,[t.ɵpid(0,_.I18nPipe,[r.I18nService]),t.ɵpid(0,s.DatePipe,[t.LOCALE_ID]),t.ɵpid(0,s.CurrencyPipe,[t.LOCALE_ID]),t.ɵpid(0,s.PercentPipe,[t.LOCALE_ID]),(n()(),t.ɵeld(4,0,null,null,11,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵeld(9,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,an)),t.ɵdid(21,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.firstLoaded&&e.loading),n(l,18,0,!e.firstLoaded&&e.loading),n(l,21,0,e.billing)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing")))})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-billing",[],null,null,null,sn,O)),t.ɵdid(1,114688,null,0,R.OrganizationBillingComponent,[I.TokenService,p.ApiService,k.PlatformUtilsService,r.I18nService,f.Angulartics2,v.ToasterService,A.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_OrganizationBillingComponent=O,l.View_OrganizationBillingComponent_0=sn,l.View_OrganizationBillingComponent_Host_0=dn;var cn=t.ɵccf("app-org-billing",R.OrganizationBillingComponent,dn,{},{},[]);l.OrganizationBillingComponentNgFactory=cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(4),i=e(12),a=e(19),s=e(18),d=e(595),c=e(5),p=e(6),f=e(13),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,"div",[["class","mb-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,[" "," × "," = "," /","\n "])),t.ɵppd(6,2),t.ɵppd(7,2),t.ɵppd(8,1)],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"total"))),n(l,5,0,e.seatAdjustment||0,t.ɵunv(l,5,1,n(l,6,0,t.ɵnov(l.parent,1),e.seatPrice,"$")),t.ɵunv(l,5,2,n(l,7,0,t.ɵnov(l.parent,1),e.adjustedSeatTotal,"$")),t.ɵunv(l,5,3,n(l,8,0,t.ɵnov(l.parent,0),e.interval)))})}function g(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),t.ɵpid(0,r.CurrencyPipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,[["form",1]],null,53,"form",[["class","card"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,3).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,3).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(3,4210688,null,0,i.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,i.ControlContainer,null,[i.NgForm]),t.ɵdid(5,16384,null,0,i.NgControlStatusGroup,[[4,i.ControlContainer]],null,null),t.ɵdid(6,540672,null,0,a.ApiActionDirective,[t.ElementRef,s.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,46,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"h3",[["class","card-body-header"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,2,"label",[["for","seatAdjustment"]],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",""])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,8,"input",[["class","form-control"],["id","seatAdjustment"],["min","0"],["name","SeatAdjustment"],["required",""],["step","1"],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,23)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,23).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,23)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,23)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,24).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,24).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,24).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.seatAdjustment=e)&&u);return u},null,null)),t.ɵdid(23,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(24,16384,null,0,i.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(25,16384,null,0,i.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,i.NG_VALIDATORS,function(n){return[n]},[i.RequiredValidator]),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[i.DefaultValueAccessor,i.ɵangular_packages_forms_forms_bd]),t.ɵdid(28,671744,null,0,i.NgModel,[[2,i.ControlContainer],[6,i.NG_VALIDATORS],[8,null],[6,i.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(30,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(35,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.cancel()&&t);return t},null,null)),(n()(),t.ɵted(48,null,["\n ","\n "])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,2,"small",[["class","d-block text-muted mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(52,null,["\n ","\n "])),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,6,0,e.formPromise);n(l,25,0,"");n(l,28,0,"SeatAdjustment",e.seatAdjustment),n(l,35,0,e.add)},function(n,l){var e=l.component;n(l,2,0,t.ɵnov(l,5).ngClassUntouched,t.ɵnov(l,5).ngClassTouched,t.ɵnov(l,5).ngClassPristine,t.ɵnov(l,5).ngClassDirty,t.ɵnov(l,5).ngClassValid,t.ɵnov(l,5).ngClassInvalid,t.ɵnov(l,5).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),e.add?"addSeats":"removeSeats"))),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),e.add?"seatsToAdd":"seatsToRemove"))),n(l,22,0,t.ɵnov(l,25).required?"":null,t.ɵnov(l,30).ngClassUntouched,t.ɵnov(l,30).ngClassTouched,t.ɵnov(l,30).ngClassPristine,t.ɵnov(l,30).ngClassDirty,t.ɵnov(l,30).ngClassValid,t.ɵnov(l,30).ngClassInvalid,t.ɵnov(l,30).ngClassPending),n(l,37,0,t.ɵnov(l,2).loading),n(l,39,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"")),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"submit"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"))),n(l,52,0,t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),e.add?"seatsAddNote":"seatsRemoveNote")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-seats",[],null,null,null,g,v)),t.ɵdid(1,49152,null,0,d.AdjustSeatsComponent,[c.ApiService,o.I18nService,p.Angulartics2,f.ToasterService],null,null)],null,null)}l.RenderType_AdjustSeatsComponent=v,l.View_AdjustSeatsComponent_0=g,l.View_AdjustSeatsComponent_Host_0=m;var y=t.ɵccf("app-adjust-seats",d.AdjustSeatsComponent,m,{seatPrice:"seatPrice",add:"add",organizationId:"organizationId",interval:"interval"},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"},[]);l.AdjustSeatsComponentNgFactory=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SeatRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.VerifyBankRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(36),i=e(596),a=e(49),s=e(19),d=e(18),c=e(597),p=e(7),f=e(3),v=e(251),h=e(23),g=e(55),m=e(9),y=e(104),C=e(30),b=e(8),w=e(43),S=e(222),_=e(61),R=e(20),I=t.ɵcrt({encapsulation:2,styles:[],data:{}});function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"select",[["class","form-control"],["id","type"],["name","Type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,9).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.type=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(11,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(13,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(16,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"))),n(l,8,0,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[["for","folder"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,9,"select",[["class","form-control"],["id","folder"],["name","FolderId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,7).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,7).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.folderId=e)&&u);return u},null,null)),t.ɵdid(7,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(9,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(11,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(14,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"))),n(l,6,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"img",[["class","ml-2"],["src","images/totp-countdown.png"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,6,0,!e.organization&&!e.cipher.organizationId&&!e.canAccessPremium),n(l,9,0,e.organization&&!e.organization.useTotp||!e.organization&&!e.canAccessPremium&&e.cipher.organizationId&&!e.cipher.organizationUseTotp)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),""))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,29,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"span",[["class","totp-countdown mr-3 ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"span",[["class","totp-sec"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,":svg:svg",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,":svg:g",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,":svg:circle",[["class","totp-circle inner"],["cx","16"],["cy","16"],["r","12.6"]],null,null,null,null,null)),t.ɵdid(12,278528,null,0,o.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(13,{"stroke-dashoffset.px":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,":svg:circle",[["class","totp-circle outer"],["cx","16"],["cy","16"],["r","14"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"span",[["class","totp-code mr-2"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(22,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.totpCode,"verificationCodeTotp","TOTP")&&t);return t},null,null)),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,0,"i",[["class","fa fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,n(l,13,0,l.component.totpDash))},function(n,l){var e=l.component;n(l,5,0,e.totpSec),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"")),n(l,22,0,e.totpCodeFormatted),n(l,24,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),""))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,72,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,32,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,25,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,7,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,12)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,12).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,12)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,12)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.uri=e)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(14,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(16,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(17,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,13,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.launch(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-share"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.context.$implicit.uri,"uri","URI")&&t);return t},null,null)),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,34,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(42,null,["\n ","\n "])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/uri-match-detection/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,18,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,9,"select",[["class","form-control"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,55).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,55).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.match=e)&&u);"change"===l&&(u=!1!==o.loginUriMatchChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(55,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(57,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(59,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(62,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeUri(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,14,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Uri"),l.context.$implicit.uri);n(l,17,0,""),n(l,57,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Match"),l.context.$implicit.match),n(l,62,0,e.uriMatchOptions)},function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,"")),n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1))),n(l,11,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com"),t.ɵnov(l,16).ngClassUntouched,t.ɵnov(l,16).ngClassTouched,t.ɵnov(l,16).ngClassPristine,t.ɵnov(l,16).ngClassDirty,t.ɵnov(l,16).ngClassValid,t.ɵnov(l,16).ngClassInvalid,t.ɵnov(l,16).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),""),!l.context.$implicit.canLaunch),n(l,28,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"")),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,"")),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"))),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"")),n(l,54,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""),t.ɵnov(l,59).ngClassUntouched,t.ɵnov(l,59).ngClassTouched,t.ɵnov(l,59).ngClassPristine,t.ɵnov(l,59).ngClassDirty,t.ɵnov(l,59).ngClassValid,t.ɵnov(l,59).ngClassInvalid,t.ɵnov(l,59).ngClassPending),n(l,65,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),""))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.login.uris)},null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,129,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,87,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","loginUsername"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","loginUsername"],["name","Login.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,13)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,13)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,13)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.username=e)&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(18,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.username,"username","Username")&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,57,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,26,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"label",[["for","loginPassword"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,19,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,5,"a",[["appStopClick",""],["class","d-block mr-2"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==o.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-refresh"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,[["checkPasswordBtn",1]],null,9,"a",[["appStopClick",""],["class","d-block"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==o.checkPassword()&&u);return u},null,null)),t.ɵdid(49,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(50,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(51,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-check-circle"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-lg fa-fw fa-spinner fa-spin"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","loginPassword"],["name","Login.Password"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,64)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,64).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,64)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,64)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.password=e)&&u);return u},null,null)),t.ɵdid(64,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(66,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(68,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(69,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword()&&t);return t},null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(77,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(78,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.password,"password","Password")&&t);return t},null,null)),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(95,0,null,null,2,"label",[["for","loginTotp"]],null,null,null,null,null)),(n()(),t.ɵted(96,null,["",""])),t.ɵppd(97,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(99,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control text-monospace"],["id","loginTotp"],["name","Login.Totp"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,100)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,100).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,100)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,100)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.totp=e)&&u);return u},null,null)),t.ɵdid(100,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(102,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(104,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(105,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,9,"div",[["class","col-6 form-group totp d-flex align-items-end"]],null,null,null,null,null)),t.ɵdid(109,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(110,{low:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(113,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(116,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(121,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==o.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(126,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(127,null,[" ","\n "])),t.ɵppd(128,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,15,0,"Login.Username",e.cipher.login.username);n(l,18,0,""),n(l,49,0,e.checkPasswordPromise);n(l,66,0,"Login.Password",e.cipher.login.password);n(l,69,0,"");n(l,77,0,"fa fa-lg",n(l,78,0,!e.showPassword,e.showPassword));n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");n(l,109,0,"col-6 form-group totp d-flex align-items-end",n(l,110,0,e.totpLow)),n(l,113,0,!e.cipher.login.totp||!e.totpCode),n(l,116,0,e.cipher.login.totp&&e.totpCode),n(l,121,0,e.cipher.login.hasUris)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,12,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"))),n(l,41,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"")),n(l,48,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"")),n(l,53,0,t.ɵnov(l,48).loading),n(l,55,0,!t.ɵnov(l,48).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,63,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,68).ngClassUntouched,t.ɵnov(l,68).ngClassTouched,t.ɵnov(l,68).ngClassPristine,t.ɵnov(l,68).ngClassDirty,t.ɵnov(l,68).ngClassValid,t.ɵnov(l,68).ngClassInvalid,t.ɵnov(l,68).ngClassPending),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,81,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"")),n(l,96,0,t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"))),n(l,99,0,t.ɵnov(l,104).ngClassUntouched,t.ɵnov(l,104).ngClassTouched,t.ɵnov(l,104).ngClassPristine,t.ɵnov(l,104).ngClassDirty,t.ɵnov(l,104).ngClassValid,t.ɵnov(l,104).ngClassInvalid,t.ɵnov(l,104).ngClassPending),n(l,127,0,t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,137,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,33,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","cardCardholderName"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"input",[["class","form-control"],["id","cardCardholderName"],["name","Card.CardCardholderName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.cardholderName=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","cardBrand"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,9,"select",[["class","form-control"],["id","cardBrand"],["name","Card.Brand"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.brand=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(27,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(29,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(32,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,61,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","cardNumber"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","cardNumber"],["name","Card.Number"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,48)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,48)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,48)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.number=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(53,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.number,"number","Number")&&t);return t},null,null)),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,16,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,2,"label",[["for","cardExpMonth"]],null,null,null,null,null)),(n()(),t.ɵted(69,null,["",""])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,9,"select",[["class","form-control"],["id","cardExpMonth"],["name","Card.ExpMonth"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,73).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,73).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expMonth=e)&&u);return u},null,null)),t.ɵdid(73,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(75,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(77,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(80,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,13,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,2,"label",[["for","cardExpYear"]],null,null,null,null,null)),(n()(),t.ɵted(87,null,["",""])),t.ɵppd(88,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,6,"input",[["class","form-control"],["id","cardExpYear"],["name","Card.ExpYear"],["type","text"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,91)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,91).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,91)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,91)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expYear=e)&&u);return u},null,null)),t.ɵdid(91,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(93,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(95,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(96,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,36,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,33,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","cardCode"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(110,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","cardCode"],["name","Card.Code"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,111)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,111).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,111)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,111)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.code=e)&&u);return u},null,null)),t.ɵdid(111,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(113,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(115,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(116,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(118,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(120,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleCardCode()&&t);return t},null,null)),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(124,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(125,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(128,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.code,"securityCode","Security Code")&&t);return t},null,null)),t.ɵppd(129,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(131,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Card.CardCardholderName",e.cipher.card.cardholderName);n(l,27,0,"Card.Brand",e.cipher.card.brand),n(l,32,0,e.cardBrandOptions);n(l,50,0,"Card.Number",e.cipher.card.number);n(l,53,0,"");n(l,75,0,"Card.ExpMonth",e.cipher.card.expMonth),n(l,80,0,e.cardExpMonthOptions);n(l,93,0,"Card.ExpYear",e.cipher.card.expYear);n(l,113,0,"Card.Code",e.cipher.card.code);n(l,116,0,"");n(l,124,0,"fa fa-lg",n(l,125,0,!e.showCardCode,e.showCardCode))},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"))),n(l,24,0,t.ɵnov(l,29).ngClassUntouched,t.ɵnov(l,29).ngClassTouched,t.ɵnov(l,29).ngClassPristine,t.ɵnov(l,29).ngClassDirty,t.ɵnov(l,29).ngClassValid,t.ɵnov(l,29).ngClassInvalid,t.ɵnov(l,29).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"))),n(l,47,0,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,57,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"")),n(l,69,0,t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"))),n(l,72,0,t.ɵnov(l,77).ngClassUntouched,t.ɵnov(l,77).ngClassTouched,t.ɵnov(l,77).ngClassPristine,t.ɵnov(l,77).ngClassDirty,t.ɵnov(l,77).ngClassValid,t.ɵnov(l,77).ngClassInvalid,t.ɵnov(l,77).ngClassPending),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"))),n(l,90,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019"),t.ɵnov(l,95).ngClassUntouched,t.ɵnov(l,95).ngClassTouched,t.ɵnov(l,95).ngClassPristine,t.ɵnov(l,95).ngClassDirty,t.ɵnov(l,95).ngClassValid,t.ɵnov(l,95).ngClassInvalid,t.ɵnov(l,95).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"))),n(l,110,0,t.ɵinlineInterpolate(1,"",e.showCardCode?"text":"password",""),t.ɵnov(l,115).ngClassUntouched,t.ɵnov(l,115).ngClassTouched,t.ɵnov(l,115).ngClassPristine,t.ɵnov(l,115).ngClassDirty,t.ɵnov(l,115).ngClassValid,t.ɵnov(l,115).ngClassInvalid,t.ɵnov(l,115).ngClassPending),n(l,120,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,128,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),""))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,289,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,16,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","idTitle"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,9,"select",[["class","form-control"],["id","idTitle"],["name","Identity.Title"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,11).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.title=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(18,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,43,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","idFirstName"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,5,"input",[["class","form-control"],["id","idFirstName"],["name","Identity.FirstName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.firstName=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(36,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","idMiddleName"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"input",[["class","form-control"],["id","idMiddleName"],["name","Identity.MiddleName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.middleName=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","idLastName"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,5,"input",[["class","form-control"],["id","idLastName"],["name","Identity.LastName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.lastName=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(62,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(64,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,2,"label",[["for","idUsername"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["",""])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idUsername"],["name","Identity.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,77)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,77).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,77)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,77)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.username=e)&&u);return u},null,null)),t.ɵdid(77,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(79,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(81,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(82,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"label",[["for","idCompany"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["",""])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,5,"input",[["class","form-control"],["id","idCompany"],["name","Identity.Company"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,92)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,92).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,92)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,92)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.company=e)&&u);return u},null,null)),t.ɵdid(92,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(94,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(96,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,46,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","idSsn"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idSsn"],["name","Identity.SSN"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,109)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,109).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,109)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,109)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.ssn=e)&&u);return u},null,null)),t.ɵdid(109,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(111,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(113,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(114,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(117,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(119,0,null,null,2,"label",[["for","idPassportNumber"]],null,null,null,null,null)),(n()(),t.ɵted(120,null,["",""])),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idPassportNumber"],["name","Identity.PassportNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,124)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,124).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,124)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,124)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.passportNumber=e)&&u);return u},null,null)),t.ɵdid(124,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(126,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(128,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(129,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(132,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(134,0,null,null,2,"label",[["for","idLicenseNumber"]],null,null,null,null,null)),(n()(),t.ɵted(135,null,["",""])),t.ɵppd(136,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(138,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idLicenseNumber"],["name","Identity.LicenseNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,139)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,139).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,139)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,139)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.licenseNumber=e)&&u);return u},null,null)),t.ɵdid(139,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(141,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(143,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(144,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(148,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(150,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(152,0,null,null,2,"label",[["for","idEmail"]],null,null,null,null,null)),(n()(),t.ɵted(153,null,["",""])),t.ɵppd(154,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(156,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idEmail"],["name","Identity.Email"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,157)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,157).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,157)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,157)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.email=e)&&u);return u},null,null)),t.ɵdid(157,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(159,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(161,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(162,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(165,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(167,0,null,null,2,"label",[["for","idPhone"]],null,null,null,null,null)),(n()(),t.ɵted(168,null,["",""])),t.ɵppd(169,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(171,0,null,null,5,"input",[["class","form-control"],["id","idPhone"],["name","Identity.Phone"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,172)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,172).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,172)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,172)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.phone=e)&&u);return u},null,null)),t.ɵdid(172,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(174,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(176,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(180,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(182,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(184,0,null,null,2,"label",[["for","idAddress1"]],null,null,null,null,null)),(n()(),t.ɵted(185,null,["",""])),t.ɵppd(186,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(188,0,null,null,5,"input",[["class","form-control"],["id","idAddress1"],["name","Identity.Address1"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,189)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,189).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,189)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,189)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address1=e)&&u);return u},null,null)),t.ɵdid(189,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(191,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(193,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(196,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(198,0,null,null,2,"label",[["for","idAddress2"]],null,null,null,null,null)),(n()(),t.ɵted(199,null,["",""])),t.ɵppd(200,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(202,0,null,null,5,"input",[["class","form-control"],["id","idAddress2"],["name","Identity.Address2"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,203)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,203).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,203)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,203)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address2=e)&&u);return u},null,null)),t.ɵdid(203,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(205,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(207,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(211,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(213,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(215,0,null,null,2,"label",[["for","idAddress3"]],null,null,null,null,null)),(n()(),t.ɵted(216,null,["",""])),t.ɵppd(217,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(219,0,null,null,5,"input",[["class","form-control"],["id","idAddress3"],["name","Identity.Address3"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,220)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,220).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,220)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,220)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address3=e)&&u);return u},null,null)),t.ɵdid(220,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(222,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(224,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(227,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(229,0,null,null,2,"label",[["for","idCity"]],null,null,null,null,null)),(n()(),t.ɵted(230,null,["",""])),t.ɵppd(231,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(233,0,null,null,5,"input",[["class","form-control"],["id","idCity"],["name","Identity.City"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,234)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,234).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,234)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,234)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.city=e)&&u);return u},null,null)),t.ɵdid(234,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(236,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(238,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(242,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(244,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(246,0,null,null,2,"label",[["for","idState"]],null,null,null,null,null)),(n()(),t.ɵted(247,null,["",""])),t.ɵppd(248,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(250,0,null,null,5,"input",[["class","form-control"],["id","idState"],["name","Identity.State"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,251)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,251).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,251)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,251)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.state=e)&&u);return u},null,null)),t.ɵdid(251,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(253,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(255,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(258,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(260,0,null,null,2,"label",[["for","idPostalCode"]],null,null,null,null,null)),(n()(),t.ɵted(261,null,["",""])),t.ɵppd(262,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(264,0,null,null,5,"input",[["class","form-control"],["id","idPostalCode"],["name","Identity.PostalCode"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,265)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,265).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,265)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,265)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.postalCode=e)&&u);return u},null,null)),t.ɵdid(265,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(267,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(269,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(273,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(275,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(277,0,null,null,2,"label",[["for","idCountry"]],null,null,null,null,null)),(n()(),t.ɵted(278,null,["",""])),t.ɵppd(279,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(281,0,null,null,5,"input",[["class","form-control"],["id","idCountry"],["name","Identity.Country"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,282)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,282).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,282)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,282)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.country=e)&&u);return u},null,null)),t.ɵdid(282,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(284,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(286,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Identity.Title",e.cipher.identity.title),n(l,18,0,e.identityTitleOptions);n(l,34,0,"Identity.FirstName",e.cipher.identity.firstName);n(l,48,0,"Identity.MiddleName",e.cipher.identity.middleName);n(l,62,0,"Identity.LastName",e.cipher.identity.lastName);n(l,79,0,"Identity.Username",e.cipher.identity.username);n(l,82,0,"");n(l,94,0,"Identity.Company",e.cipher.identity.company);n(l,111,0,"Identity.SSN",e.cipher.identity.ssn);n(l,114,0,"");n(l,126,0,"Identity.PassportNumber",e.cipher.identity.passportNumber);n(l,129,0,"");n(l,141,0,"Identity.LicenseNumber",e.cipher.identity.licenseNumber);n(l,144,0,"");n(l,159,0,"Identity.Email",e.cipher.identity.email);n(l,162,0,"");n(l,174,0,"Identity.Phone",e.cipher.identity.phone);n(l,191,0,"Identity.Address1",e.cipher.identity.address1);n(l,205,0,"Identity.Address2",e.cipher.identity.address2);n(l,222,0,"Identity.Address3",e.cipher.identity.address3);n(l,236,0,"Identity.City",e.cipher.identity.city);n(l,253,0,"Identity.State",e.cipher.identity.state);n(l,267,0,"Identity.PostalCode",e.cipher.identity.postalCode);n(l,284,0,"Identity.Country",e.cipher.identity.country)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"))),n(l,59,0,t.ɵnov(l,64).ngClassUntouched,t.ɵnov(l,64).ngClassTouched,t.ɵnov(l,64).ngClassPristine,t.ɵnov(l,64).ngClassDirty,t.ɵnov(l,64).ngClassValid,t.ɵnov(l,64).ngClassInvalid,t.ɵnov(l,64).ngClassPending),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,76,0,t.ɵnov(l,81).ngClassUntouched,t.ɵnov(l,81).ngClassTouched,t.ɵnov(l,81).ngClassPristine,t.ɵnov(l,81).ngClassDirty,t.ɵnov(l,81).ngClassValid,t.ɵnov(l,81).ngClassInvalid,t.ɵnov(l,81).ngClassPending),n(l,88,0,t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"))),n(l,91,0,t.ɵnov(l,96).ngClassUntouched,t.ɵnov(l,96).ngClassTouched,t.ɵnov(l,96).ngClassPristine,t.ɵnov(l,96).ngClassDirty,t.ɵnov(l,96).ngClassValid,t.ɵnov(l,96).ngClassInvalid,t.ɵnov(l,96).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"))),n(l,108,0,t.ɵnov(l,113).ngClassUntouched,t.ɵnov(l,113).ngClassTouched,t.ɵnov(l,113).ngClassPristine,t.ɵnov(l,113).ngClassDirty,t.ɵnov(l,113).ngClassValid,t.ɵnov(l,113).ngClassInvalid,t.ɵnov(l,113).ngClassPending),n(l,120,0,t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"))),n(l,123,0,t.ɵnov(l,128).ngClassUntouched,t.ɵnov(l,128).ngClassTouched,t.ɵnov(l,128).ngClassPristine,t.ɵnov(l,128).ngClassDirty,t.ɵnov(l,128).ngClassValid,t.ɵnov(l,128).ngClassInvalid,t.ɵnov(l,128).ngClassPending),n(l,135,0,t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"))),n(l,138,0,t.ɵnov(l,143).ngClassUntouched,t.ɵnov(l,143).ngClassTouched,t.ɵnov(l,143).ngClassPristine,t.ɵnov(l,143).ngClassDirty,t.ɵnov(l,143).ngClassValid,t.ɵnov(l,143).ngClassInvalid,t.ɵnov(l,143).ngClassPending),n(l,153,0,t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,156,0,t.ɵnov(l,161).ngClassUntouched,t.ɵnov(l,161).ngClassTouched,t.ɵnov(l,161).ngClassPristine,t.ɵnov(l,161).ngClassDirty,t.ɵnov(l,161).ngClassValid,t.ɵnov(l,161).ngClassInvalid,t.ɵnov(l,161).ngClassPending),n(l,168,0,t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"))),n(l,171,0,t.ɵnov(l,176).ngClassUntouched,t.ɵnov(l,176).ngClassTouched,t.ɵnov(l,176).ngClassPristine,t.ɵnov(l,176).ngClassDirty,t.ɵnov(l,176).ngClassValid,t.ɵnov(l,176).ngClassInvalid,t.ɵnov(l,176).ngClassPending),n(l,185,0,t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"))),n(l,188,0,t.ɵnov(l,193).ngClassUntouched,t.ɵnov(l,193).ngClassTouched,t.ɵnov(l,193).ngClassPristine,t.ɵnov(l,193).ngClassDirty,t.ɵnov(l,193).ngClassValid,t.ɵnov(l,193).ngClassInvalid,t.ɵnov(l,193).ngClassPending),n(l,199,0,t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"))),n(l,202,0,t.ɵnov(l,207).ngClassUntouched,t.ɵnov(l,207).ngClassTouched,t.ɵnov(l,207).ngClassPristine,t.ɵnov(l,207).ngClassDirty,t.ɵnov(l,207).ngClassValid,t.ɵnov(l,207).ngClassInvalid,t.ɵnov(l,207).ngClassPending),n(l,216,0,t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"))),n(l,219,0,t.ɵnov(l,224).ngClassUntouched,t.ɵnov(l,224).ngClassTouched,t.ɵnov(l,224).ngClassPristine,t.ɵnov(l,224).ngClassDirty,t.ɵnov(l,224).ngClassValid,t.ɵnov(l,224).ngClassInvalid,t.ɵnov(l,224).ngClassPending),n(l,230,0,t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"))),n(l,233,0,t.ɵnov(l,238).ngClassUntouched,t.ɵnov(l,238).ngClassTouched,t.ɵnov(l,238).ngClassPristine,t.ɵnov(l,238).ngClassDirty,t.ɵnov(l,238).ngClassValid,t.ɵnov(l,238).ngClassInvalid,t.ɵnov(l,238).ngClassPending),n(l,247,0,t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"))),n(l,250,0,t.ɵnov(l,255).ngClassUntouched,t.ɵnov(l,255).ngClassTouched,t.ɵnov(l,255).ngClassPristine,t.ɵnov(l,255).ngClassDirty,t.ɵnov(l,255).ngClassValid,t.ɵnov(l,255).ngClassInvalid,t.ɵnov(l,255).ngClassPending),n(l,261,0,t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"))),n(l,264,0,t.ɵnov(l,269).ngClassUntouched,t.ɵnov(l,269).ngClassTouched,t.ɵnov(l,269).ngClassPristine,t.ɵnov(l,269).ngClassDirty,t.ɵnov(l,269).ngClassValid,t.ɵnov(l,269).ngClassInvalid,t.ɵnov(l,269).ngClassPending),n(l,278,0,t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"))),n(l,281,0,t.ɵnov(l,286).ngClassUntouched,t.ɵnov(l,286).ngClassTouched,t.ɵnov(l,286).ngClassPristine,t.ɵnov(l,286).ngClassDirty,t.ɵnov(l,286).ngClassValid,t.ɵnov(l,286).ngClassInvalid,t.ɵnov(l,286).ngClassPending)})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"")},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"]],[[8,"id",0],[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFieldValue(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(16,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(17,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"");n(l,16,0,"fa fa-lg",n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue))},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.showValue?"text":"password",""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"")),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"input",[["appTrueFalseValue",""],["falseValue","false"],["trueValue","true"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,1).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,1).onTouched()&&u);"change"===l&&(u=!1!==t.ɵnov(n,2).onHostChange(e)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(2,16384,null,0,c.TrueFalseValueDirective,[t.ElementRef,t.Renderer2],{trueValue:[0,"trueValue"],falseValue:[1,"falseValue"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.CheckboxControlValueAccessor,c.TrueFalseValueDirective]),t.ɵdid(4,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(6,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null)],function(n,l){n(l,2,0,"true","false"),n(l,4,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,6).ngClassUntouched,t.ɵnov(l,6).ngClassTouched,t.ɵnov(l,6).ngClassPristine,t.ɵnov(l,6).ngClassDirty,t.ɵnov(l,6).ngClassValid,t.ɵnov(l,6).ngClassInvalid,t.ɵnov(l,6).ngClassPending)})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,54,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,22,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/custom-fields/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.name=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(24,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,26,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,19,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,4,"div",[["class","flex-fill"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeField(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,21,0,t.ɵinlineInterpolate(1,"Field.Name",l.context.index,""),l.context.$implicit.name);n(l,24,0,""),n(l,36,0,l.context.$implicit.type===e.fieldType.Text),n(l,39,0,l.context.$implicit.type===e.fieldType.Hidden),n(l,44,0,l.context.$implicit.type===e.fieldType.Boolean)},function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,"")),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"")),n(l,18,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,29,0,t.ɵinlineInterpolate(1,"fieldValue",l.context.index,"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"))),n(l,47,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),""))})}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.fields)},null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","organizationId"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,9,"select",[["class","form-control"],["id","organizationId"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,15).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==o.organizationChanged()&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(22,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,17,0,"OrganizationId",e.cipher.organizationId),n(l,22,0,e.ownershipOptions)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"))),n(l,14,0,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"input",[["class","form-check-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,3).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"label",[["class","form-check-label"]],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,9,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,"")),n(l,10,0,l.context.$implicit.name)})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.collections)},null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,!e.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections")))})}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,2)],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"))),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium")))})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==o.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"))),n(l,6,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"")),n(l,9,0,e.cipher.passwordHistory.length)})}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n "," -\n "])),t.ɵppd(2,2),(n()(),t.ɵeld(3,0,null,null,1,"span",[["class","text-monospace ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"))),n(l,4,0,l.context.$implicit.password)})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.passwordHistory)},null)}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,18,"div",[["class","small text-muted mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",":"])),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.showRevisionDate),n(l,16,0,e.hasPasswordHistory),n(l,19,0,e.viewingPasswordHistory)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium")))})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,96,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,20,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,14,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,14)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,14).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,14)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,14)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.name=e)&&u);return u},null,null)),t.ɵdid(14,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(15,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(18,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(20,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(24,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(29,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(33,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","notes"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"textarea",[["class","form-control"],["id","notes"],["name","Notes"],["rows","6"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.notes=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(54,null,["",""])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-2"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==o.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,[" ","\n "])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,2,"label",[["class","sr-only"],["for","addFieldType"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["",""])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,9,"select",[["class","form-control"],["id","addFieldType"],["name","AddFieldType"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,76).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,76).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.addFieldType=e)&&u);return u},null,null)),t.ɵdid(76,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(78,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(80,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(83,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(89,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(92,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,on)),t.ɵdid(95,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.editMode);n(l,15,0,"");n(l,18,0,"Name",e.cipher.name),n(l,24,0,!e.organization),n(l,29,0,e.cipher.type===e.cipherType.Login),n(l,33,0,e.cipher.type===e.cipherType.Card),n(l,37,0,e.cipher.type===e.cipherType.Identity);n(l,48,0,"Notes",e.cipher.notes),n(l,58,0,e.cipher.hasFields);n(l,78,0,"AddFieldType",e.addFieldType),n(l,83,0,e.addFieldTypeOptions),n(l,89,0,!e.editMode&&!e.organization&&e.ownershipOptions&&e.ownershipOptions.length>1),n(l,92,0,!e.editMode&&e.cipher.organizationId),n(l,95,0,e.editMode)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"))),n(l,13,0,t.ɵnov(l,15).required?"":null,t.ɵnov(l,20).ngClassUntouched,t.ɵnov(l,20).ngClassTouched,t.ɵnov(l,20).ngClassPristine,t.ɵnov(l,20).ngClassDirty,t.ɵnov(l,20).ngClassValid,t.ɵnov(l,20).ngClassInvalid,t.ɵnov(l,20).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"))),n(l,72,0,t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"))),n(l,75,0,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending)})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFavorite()&&t);return t},null,null)),t.ɵppd(1,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(4,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(5,{"fa-star":0,"fa-star-o":1}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"fa fa-lg",n(l,5,0,e.cipher.favorite,!e.cipher.favorite))},function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),""))})}function sn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,an)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,sn)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.organization),n(l,6,0,e.editMode)},null)}function cn(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵpid(0,o.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,44,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,41,"form",[["autocomplete","off"],["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,rn)),t.ɵdid(26,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(41,null,["\n ","\n "])),t.ɵppd(42,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,dn)),t.ɵdid(45,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,26,0,e.cipher),n(l,45,0,e.cipher)},function(n,l){var e=l.component;n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,e.title),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵnov(l,6).loading),n(l,32,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"))),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel")))})}function pn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-add-edit",[],null,null,null,cn,I)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=I,l.View_AddEditComponent_0=cn,l.View_AddEditComponent_Host_0=pn;var fn=t.ɵccf("app-vault-add-edit",v.AddEditComponent,pn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=fn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(4),i=e(36),a=e(7),s=e(3),d=e(12),c=e(456),p=e(23),f=e(21),v=e(8),h=e(9),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-fw fa-lg fa-file-o"]],null,null,null,null,null))],null,null)}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-lg fa-fw fa-spin"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"a",[["href","https://help.bitwarden.com/article/attachments/#fixing-old-attachments"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-exclamation-triangle text-warning"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["reuploadBtn",1]],null,3,"button",[["class","btn btn-outline-primary btn-sm m-0 py-0 px-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reupload(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵdid(8,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,8,0,l.component.reuploadPromises[l.parent.context.$implicit.id])},function(n,l){n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"")),n(l,7,0,t.ɵnov(l,7).loading),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(5,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(8,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==o.download(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(16,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(20,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,12,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,[["deleteBtn",1]],null,9,"button",[["appStopClick",""],["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(31,16384,null,0,i.StopClickDirective,[],null,null),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!l.context.$implicit.downloading),n(l,8,0,l.context.$implicit.downloading),n(l,20,0,e.showFixOldAttachments(l.context.$implicit)),n(l,30,0,e.deletePromises[l.context.$implicit.id])},function(n,l){n(l,17,0,l.context.$implicit.fileName),n(l,24,0,l.context.$implicit.sizeName),n(l,29,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading),n(l,36,0,!t.ɵnov(l,29).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.cipher.attachments)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),(n()(),t.ɵeld(1,0,null,null,66,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,63,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,60,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,d.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,d.ControlContainer,null,[d.NgForm]),t.ɵdid(8,16384,null,0,d.NgControlStatusGroup,[[4,d.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),t.ɵppd(15,1),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(17,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(31,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"label",[["class","sr-only"],["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(61,1),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,17,0,e.cipher),n(l,31,0,e.cipher&&e.cipher.hasAttachments)},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"))),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"))),n(l,50,0,t.ɵnov(l,5).loading),n(l,52,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"")),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"))),n(l,60,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"")),n(l,62,0,t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-attachments",[],null,null,null,_,g)),t.ɵdid(1,114688,null,0,c.AttachmentsComponent,[p.CipherService,s.I18nService,f.CryptoService,v.UserService,h.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AttachmentsComponent=g,l.View_AttachmentsComponent_0=_,l.View_AttachmentsComponent_Host_0=R;var I=t.ɵccf("app-vault-attachments",c.AttachmentsComponent,R,{cipherId:"cipherId"},{onUploadedAttachment:"onUploadedAttachment",onDeletedAttachment:"onDeletedAttachment",onReuploadedAttachment:"onReuploadedAttachment"},[]);l.AttachmentsComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(540),d=e(6),c=e(23),p=e(13),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,48,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,45,"div",[["class","modal-dialog modal-sm"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,42,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,r.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(9,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["\n ","\n "])),t.ɵppd(28,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,8,"button",[["appAutoFocus",""],["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(43,1),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,10,0,l.component.formPromise)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"deleteSelected"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"")),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"deleteSelectedItemsDesc",e.cipherIds.length))),n(l,32,0,t.ɵnov(l,5).loading),n(l,34,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"")),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"delete"))),n(l,42,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"cancel")),"")),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"cancel")))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-bulk-delete",[],null,null,null,v,f)),t.ɵdid(1,49152,null,0,s.BulkDeleteComponent,[d.Angulartics2,c.CipherService,p.ToasterService,o.I18nService],null,null)],null,null)}l.RenderType_BulkDeleteComponent=f,l.View_BulkDeleteComponent_0=v,l.View_BulkDeleteComponent_Host_0=h;var g=t.ɵccf("app-vault-bulk-delete",s.BulkDeleteComponent,h,{cipherIds:"cipherIds"},{onDeleted:"onDeleted"},[]);l.BulkDeleteComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(7),r=e(3),i=e(19),a=e(18),s=e(4),d=e(541),c=e(6),p=e(23),f=e(13),v=e(55),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function m(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog modal-sm"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,23,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(29,null,["",""])),t.ɵppd(30,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,2,"label",[["for","folder"]],null,null,null,null,null)),(n()(),t.ɵted(35,null,["",""])),t.ɵppd(36,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,9,"select",[["class","form-control"],["id","folder"],["name","FolderId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,39).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,39).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.folderId=e)&&u);return u},null,null)),t.ɵdid(39,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(41,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(43,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(46,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(59,null,["",""])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(64,1),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise);n(l,41,0,"FolderId",e.folderId),n(l,46,0,e.folders)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"moveSelected"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"")),n(l,29,0,t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"moveSelectedItemsDesc",e.cipherIds.length))),n(l,35,0,t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"folder"))),n(l,38,0,t.ɵnov(l,43).ngClassUntouched,t.ɵnov(l,43).ngClassTouched,t.ɵnov(l,43).ngClassPristine,t.ɵnov(l,43).ngClassDirty,t.ɵnov(l,43).ngClassValid,t.ɵnov(l,43).ngClassInvalid,t.ɵnov(l,43).ngClassPending),n(l,53,0,t.ɵnov(l,5).loading),n(l,55,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"")),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"save"))),n(l,63,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l,0),"cancel")),"")),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-bulk-move",[],null,null,null,m,h)),t.ɵdid(1,114688,null,0,d.BulkMoveComponent,[c.Angulartics2,p.CipherService,f.ToasterService,r.I18nService,v.FolderService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_BulkMoveComponent=h,l.View_BulkMoveComponent_0=m,l.View_BulkMoveComponent_Host_0=y;var C=t.ɵccf("app-vault-bulk-move",d.BulkMoveComponent,y,{cipherIds:"cipherIds"},{onMoved:"onMoved"},[]);l.BulkMoveComponentNgFactory=C},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(542),p=e(6),f=e(23),v=e(13),h=e(43),g=e(8),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,91,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,88,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,85,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,43,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(29,null,["",""])),t.ɵppd(30,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(33,null,["",""])),t.ɵppd(34,4),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"label",[["for","organization"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,9,"select",[["class","form-control"],["id","organization"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,43).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,43).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.organizationId=e)&&u);"change"===l&&(u=!1!==o.filterCollections()&&u);return u},null,null)),t.ɵdid(43,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(45,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(47,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(50,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(57,null,["",""])),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(61,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(65,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(68,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,10,"button",[["class","btn btn-primary btn-submit manual"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),t.ɵdid(74,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(75,{loading:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(77,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(81,null,["",""])),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(86,1),(n()(),t.ɵted(87,null,["",""])),t.ɵppd(88,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise);n(l,45,0,"OrganizationId",e.organizationId),n(l,50,0,e.organizations),n(l,61,0,e.collections&&e.collections.length),n(l,65,0,!e.collections||!e.collections.length),n(l,68,0,e.collections&&e.collections.length);n(l,74,0,"btn btn-primary btn-submit manual",n(l,75,0,t.ɵnov(l,5).loading))},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"shareSelected"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"")),n(l,29,0,t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"shareManyDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"shareSelectedItemsCountDesc",e.ciphers.length,e.shareableCiphers.length,e.nonShareableCount))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"organization"))),n(l,42,0,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,57,0,t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"collections"))),n(l,73,0,t.ɵnov(l,5).loading||!e.canSave),n(l,77,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"")),n(l,81,0,t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"save"))),n(l,85,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"cancel")),"")),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l,0),"cancel")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-bulk-share",[],null,null,null,_,m)),t.ɵdid(1,245760,null,0,c.BulkShareComponent,[p.Angulartics2,f.CipherService,v.ToasterService,a.I18nService,h.CollectionService,g.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_BulkShareComponent=m,l.View_BulkShareComponent_0=_,l.View_BulkShareComponent_Host_0=R;var I=t.ɵccf("app-vault-bulk-share",c.BulkShareComponent,R,{ciphers:"ciphers",organizationId:"organizationId"},{onShared:"onShared"},[]);l.BulkShareComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(457),p=e(43),f=e(9),v=e(23),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function w(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,21,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(42,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(46,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.cipher),n(l,42,0,e.collections&&e.collections.length),n(l,46,0,!e.collections||!e.collections.length),n(l,49,0,e.collections&&e.collections.length)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"))),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-collections",[],null,null,null,w,h)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=h,l.View_CollectionsComponent_0=w,l.View_CollectionsComponent_Host_0=S;var _=t.ɵccf("app-vault-collections",c.CollectionsComponent,S,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=_},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(49),p=e(551),f=e(5),v=e(6),h=e(13),g=e(21),m=e(20),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,68,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,65,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,62,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,24,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,8,"input",[["appAutoFocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(59,null,["",""])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deauthorizeSessions"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deauthorizeSessionsDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deauthorizeSessionsWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,53,0,t.ɵnov(l,5).loading),n(l,55,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"")),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"deauthorizeSessions"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"close")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-deauthorize-sessions",[],null,null,null,C,y)),t.ɵdid(1,49152,null,0,p.DeauthorizeSessionsComponent,[f.ApiService,o.I18nService,v.Angulartics2,h.ToasterService,g.CryptoService,m.MessagingService],null,null)],null,null)}l.RenderType_DeauthorizeSessionsComponent=y,l.View_DeauthorizeSessionsComponent_0=C,l.View_DeauthorizeSessionsComponent_Host_0=b;var w=t.ɵccf("app-deauthorize-sessions",p.DeauthorizeSessionsComponent,b,{},{},[]);l.DeauthorizeSessionsComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(552),v=e(5),h=e(6),g=e(13),m=e(21),y=e(20),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(49,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"");n(l,49,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteAccount"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteAccountDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteAccountWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteAccount"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-account",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteAccountComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService],null,null)],null,null)}l.RenderType_DeleteAccountComponent=C,l.View_DeleteAccountComponent_0=b,l.View_DeleteAccountComponent_Host_0=w;var S=t.ɵccf("app-delete-account",f.DeleteAccountComponent,w,{},{},[]);l.DeleteAccountComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(594),v=e(5),h=e(6),g=e(13),m=e(21),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(49,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"");n(l,49,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteOrganization"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteOrganizationDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteOrganizationWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteOrganization"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-organization",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteOrganizationComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_DeleteOrganizationComponent=C,l.View_DeleteOrganizationComponent_0=b,l.View_DeleteOrganizationComponent_Host_0=w;var S=t.ɵccf("app-delete-organization",f.DeleteOrganizationComponent,w,{},{},[]);l.DeleteOrganizationComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(7),i=e(3),a=e(12),s=e(4),d=e(543),c=e(55),p=e(9),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,64,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,61,"div",[["class","modal-dialog modal-sm"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,58,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,a.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,a.ControlContainer,null,[a.NgForm]),t.ɵdid(8,16384,null,0,a.NgControlStatusGroup,[[4,a.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,14,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,31)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,31).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,31)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,31)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.folder.name=e)&&u);return u},null,null)),t.ɵdid(31,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(32,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(35,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(37,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,22,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(53,1),(n()(),t.ɵted(54,null,["",""])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(60,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"");n(l,35,0,"Name",e.folder.name),n(l,60,0,e.editMode)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,e.title),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"")),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"name"))),n(l,30,0,t.ɵnov(l,32).required?"":null,t.ɵnov(l,37).ngClassUntouched,t.ɵnov(l,37).ngClassTouched,t.ɵnov(l,37).ngClassPristine,t.ɵnov(l,37).ngClassDirty,t.ɵnov(l,37).ngClassValid,t.ɵnov(l,37).ngClassInvalid,t.ɵnov(l,37).ngClassPending),n(l,42,0,t.ɵnov(l,5).loading),n(l,44,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"loading")),"")),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"save"))),n(l,52,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"cancel")),"")),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"cancel")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-folder-add-edit",[],null,null,null,h,f)),t.ɵdid(1,114688,null,0,d.FolderAddEditComponent,[c.FolderService,i.I18nService,p.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_FolderAddEditComponent=f,l.View_FolderAddEditComponent_0=h,l.View_FolderAddEditComponent_Host_0=g;var m=t.ɵccf("app-folder-add-edit",d.FolderAddEditComponent,g,{folderId:"folderId"},{onSavedFolder:"onSavedFolder",onDeletedFolder:"onDeletedFolder"},[]);l.FolderAddEditComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(97),o=t.ɵcrt({encapsulation:2,styles:[],data:{}});function r(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function i(n){return t.ɵvid(0,[t.ɵqud(402653184,1,{container:0}),(n()(),t.ɵand(16777216,[[1,3],["container",2]],null,0,null,r))],null,null)}function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-modal",[],null,null,null,i,o)),t.ɵdid(1,180224,null,0,u.ModalComponent,[t.ComponentFactoryResolver],null,null)],null,null)}l.RenderType_ModalComponent=o,l.View_ModalComponent_0=i,l.View_ModalComponent_Host_0=a;var s=t.ɵccf("app-modal",u.ModalComponent,a,{},{onClose:"onClose",onClosed:"onClosed",onShow:"onShow",onShown:"onShown"},[]);l.ModalComponentNgFactory=s},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(36),i=e(596),a=e(49),s=e(19),d=e(18),c=e(597),p=e(7),f=e(3),v=e(475),h=e(23),g=e(55),m=e(9),y=e(104),C=e(30),b=e(8),w=e(43),S=e(222),_=e(61),R=e(5),I=e(20),k=t.ɵcrt({encapsulation:2,styles:[],data:{}});function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"select",[["class","form-control"],["id","type"],["name","Type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,9).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.type=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(11,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(13,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(16,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"))),n(l,8,0,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[["for","folder"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,9,"select",[["class","form-control"],["id","folder"],["name","FolderId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,7).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,7).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.folderId=e)&&u);return u},null,null)),t.ɵdid(7,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(9,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(11,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(14,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"))),n(l,6,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"img",[["class","ml-2"],["src","images/totp-countdown.png"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,6,0,!e.organization&&!e.cipher.organizationId&&!e.canAccessPremium),n(l,9,0,e.organization&&!e.organization.useTotp||!e.organization&&!e.canAccessPremium&&e.cipher.organizationId&&!e.cipher.organizationUseTotp)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),""))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,29,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"span",[["class","totp-countdown mr-3 ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"span",[["class","totp-sec"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,":svg:svg",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,":svg:g",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,":svg:circle",[["class","totp-circle inner"],["cx","16"],["cy","16"],["r","12.6"]],null,null,null,null,null)),t.ɵdid(12,278528,null,0,o.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(13,{"stroke-dashoffset.px":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,":svg:circle",[["class","totp-circle outer"],["cx","16"],["cy","16"],["r","14"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"span",[["class","totp-code mr-2"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(22,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.totpCode,"verificationCodeTotp","TOTP")&&t);return t},null,null)),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,0,"i",[["class","fa fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,n(l,13,0,l.component.totpDash))},function(n,l){var e=l.component;n(l,5,0,e.totpSec),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"")),n(l,22,0,e.totpCodeFormatted),n(l,24,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),""))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,72,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,32,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,25,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,7,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,12)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,12).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,12)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,12)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.uri=e)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(14,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(16,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(17,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,13,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.launch(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-share"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.context.$implicit.uri,"uri","URI")&&t);return t},null,null)),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,34,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(42,null,["\n ","\n "])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/uri-match-detection/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,18,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,9,"select",[["class","form-control"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,55).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,55).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.match=e)&&u);"change"===l&&(u=!1!==o.loginUriMatchChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(55,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(57,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(59,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(62,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeUri(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,14,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Uri"),l.context.$implicit.uri);n(l,17,0,""),n(l,57,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Match"),l.context.$implicit.match),n(l,62,0,e.uriMatchOptions)},function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,"")),n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1))),n(l,11,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com"),t.ɵnov(l,16).ngClassUntouched,t.ɵnov(l,16).ngClassTouched,t.ɵnov(l,16).ngClassPristine,t.ɵnov(l,16).ngClassDirty,t.ɵnov(l,16).ngClassValid,t.ɵnov(l,16).ngClassInvalid,t.ɵnov(l,16).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),""),!l.context.$implicit.canLaunch),n(l,28,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"")),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,"")),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"))),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"")),n(l,54,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""),t.ɵnov(l,59).ngClassUntouched,t.ɵnov(l,59).ngClassTouched,t.ɵnov(l,59).ngClassPristine,t.ɵnov(l,59).ngClassDirty,t.ɵnov(l,59).ngClassValid,t.ɵnov(l,59).ngClassInvalid,t.ɵnov(l,59).ngClassPending),n(l,65,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),""))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.login.uris)},null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,129,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,87,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","loginUsername"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","loginUsername"],["name","Login.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,13)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,13)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,13)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.username=e)&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(18,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.username,"username","Username")&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,57,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,26,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"label",[["for","loginPassword"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,19,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,5,"a",[["appStopClick",""],["class","d-block mr-2"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==o.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-refresh"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,[["checkPasswordBtn",1]],null,9,"a",[["appStopClick",""],["class","d-block"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==o.checkPassword()&&u);return u},null,null)),t.ɵdid(49,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(50,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(51,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-check-circle"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-lg fa-fw fa-spinner fa-spin"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","loginPassword"],["name","Login.Password"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,64)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,64).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,64)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,64)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.password=e)&&u);return u},null,null)),t.ɵdid(64,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(66,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(68,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(69,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword()&&t);return t},null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(77,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(78,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.password,"password","Password")&&t);return t},null,null)),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(95,0,null,null,2,"label",[["for","loginTotp"]],null,null,null,null,null)),(n()(),t.ɵted(96,null,["",""])),t.ɵppd(97,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(99,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control text-monospace"],["id","loginTotp"],["name","Login.Totp"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,100)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,100).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,100)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,100)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.totp=e)&&u);return u},null,null)),t.ɵdid(100,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(102,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(104,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(105,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,9,"div",[["class","col-6 form-group totp d-flex align-items-end"]],null,null,null,null,null)),t.ɵdid(109,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(110,{low:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(113,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(116,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(121,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==o.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(126,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(127,null,[" ","\n "])),t.ɵppd(128,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,15,0,"Login.Username",e.cipher.login.username);n(l,18,0,""),n(l,49,0,e.checkPasswordPromise);n(l,66,0,"Login.Password",e.cipher.login.password);n(l,69,0,"");n(l,77,0,"fa fa-lg",n(l,78,0,!e.showPassword,e.showPassword));n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");n(l,109,0,"col-6 form-group totp d-flex align-items-end",n(l,110,0,e.totpLow)),n(l,113,0,!e.cipher.login.totp||!e.totpCode),n(l,116,0,e.cipher.login.totp&&e.totpCode),n(l,121,0,e.cipher.login.hasUris)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,12,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"))),n(l,41,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"")),n(l,48,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"")),n(l,53,0,t.ɵnov(l,48).loading),n(l,55,0,!t.ɵnov(l,48).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,63,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,68).ngClassUntouched,t.ɵnov(l,68).ngClassTouched,t.ɵnov(l,68).ngClassPristine,t.ɵnov(l,68).ngClassDirty,t.ɵnov(l,68).ngClassValid,t.ɵnov(l,68).ngClassInvalid,t.ɵnov(l,68).ngClassPending),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,81,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"")),n(l,96,0,t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"))),n(l,99,0,t.ɵnov(l,104).ngClassUntouched,t.ɵnov(l,104).ngClassTouched,t.ɵnov(l,104).ngClassPristine,t.ɵnov(l,104).ngClassDirty,t.ɵnov(l,104).ngClassValid,t.ɵnov(l,104).ngClassInvalid,t.ɵnov(l,104).ngClassPending),n(l,127,0,t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,137,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,33,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","cardCardholderName"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"input",[["class","form-control"],["id","cardCardholderName"],["name","Card.CardCardholderName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.cardholderName=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","cardBrand"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,9,"select",[["class","form-control"],["id","cardBrand"],["name","Card.Brand"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.brand=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(27,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(29,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(32,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,61,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","cardNumber"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","cardNumber"],["name","Card.Number"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,48)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,48)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,48)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.number=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(53,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.number,"number","Number")&&t);return t},null,null)),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,16,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,2,"label",[["for","cardExpMonth"]],null,null,null,null,null)),(n()(),t.ɵted(69,null,["",""])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,9,"select",[["class","form-control"],["id","cardExpMonth"],["name","Card.ExpMonth"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,73).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,73).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expMonth=e)&&u);return u},null,null)),t.ɵdid(73,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(75,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(77,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(80,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,13,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,2,"label",[["for","cardExpYear"]],null,null,null,null,null)),(n()(),t.ɵted(87,null,["",""])),t.ɵppd(88,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,6,"input",[["class","form-control"],["id","cardExpYear"],["name","Card.ExpYear"],["type","text"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,91)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,91).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,91)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,91)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expYear=e)&&u);return u},null,null)),t.ɵdid(91,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(93,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(95,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(96,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,36,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,33,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","cardCode"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(110,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","cardCode"],["name","Card.Code"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,111)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,111).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,111)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,111)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.code=e)&&u);return u},null,null)),t.ɵdid(111,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(113,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(115,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(116,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(118,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(120,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleCardCode()&&t);return t},null,null)),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(124,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(125,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(128,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.code,"securityCode","Security Code")&&t);return t},null,null)),t.ɵppd(129,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(131,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Card.CardCardholderName",e.cipher.card.cardholderName);n(l,27,0,"Card.Brand",e.cipher.card.brand),n(l,32,0,e.cardBrandOptions);n(l,50,0,"Card.Number",e.cipher.card.number);n(l,53,0,"");n(l,75,0,"Card.ExpMonth",e.cipher.card.expMonth),n(l,80,0,e.cardExpMonthOptions);n(l,93,0,"Card.ExpYear",e.cipher.card.expYear);n(l,113,0,"Card.Code",e.cipher.card.code);n(l,116,0,"");n(l,124,0,"fa fa-lg",n(l,125,0,!e.showCardCode,e.showCardCode))},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"))),n(l,24,0,t.ɵnov(l,29).ngClassUntouched,t.ɵnov(l,29).ngClassTouched,t.ɵnov(l,29).ngClassPristine,t.ɵnov(l,29).ngClassDirty,t.ɵnov(l,29).ngClassValid,t.ɵnov(l,29).ngClassInvalid,t.ɵnov(l,29).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"))),n(l,47,0,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,57,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"")),n(l,69,0,t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"))),n(l,72,0,t.ɵnov(l,77).ngClassUntouched,t.ɵnov(l,77).ngClassTouched,t.ɵnov(l,77).ngClassPristine,t.ɵnov(l,77).ngClassDirty,t.ɵnov(l,77).ngClassValid,t.ɵnov(l,77).ngClassInvalid,t.ɵnov(l,77).ngClassPending),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"))),n(l,90,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019"),t.ɵnov(l,95).ngClassUntouched,t.ɵnov(l,95).ngClassTouched,t.ɵnov(l,95).ngClassPristine,t.ɵnov(l,95).ngClassDirty,t.ɵnov(l,95).ngClassValid,t.ɵnov(l,95).ngClassInvalid,t.ɵnov(l,95).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"))),n(l,110,0,t.ɵinlineInterpolate(1,"",e.showCardCode?"text":"password",""),t.ɵnov(l,115).ngClassUntouched,t.ɵnov(l,115).ngClassTouched,t.ɵnov(l,115).ngClassPristine,t.ɵnov(l,115).ngClassDirty,t.ɵnov(l,115).ngClassValid,t.ɵnov(l,115).ngClassInvalid,t.ɵnov(l,115).ngClassPending),n(l,120,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,128,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),""))})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,289,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,16,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","idTitle"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,9,"select",[["class","form-control"],["id","idTitle"],["name","Identity.Title"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,11).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.title=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(18,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,43,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","idFirstName"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,5,"input",[["class","form-control"],["id","idFirstName"],["name","Identity.FirstName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.firstName=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(36,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","idMiddleName"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"input",[["class","form-control"],["id","idMiddleName"],["name","Identity.MiddleName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.middleName=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","idLastName"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,5,"input",[["class","form-control"],["id","idLastName"],["name","Identity.LastName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.lastName=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(62,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(64,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,2,"label",[["for","idUsername"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["",""])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idUsername"],["name","Identity.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,77)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,77).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,77)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,77)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.username=e)&&u);return u},null,null)),t.ɵdid(77,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(79,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(81,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(82,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"label",[["for","idCompany"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["",""])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,5,"input",[["class","form-control"],["id","idCompany"],["name","Identity.Company"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,92)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,92).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,92)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,92)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.company=e)&&u);return u},null,null)),t.ɵdid(92,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(94,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(96,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,46,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","idSsn"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idSsn"],["name","Identity.SSN"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,109)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,109).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,109)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,109)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.ssn=e)&&u);return u},null,null)),t.ɵdid(109,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(111,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(113,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(114,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(117,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(119,0,null,null,2,"label",[["for","idPassportNumber"]],null,null,null,null,null)),(n()(),t.ɵted(120,null,["",""])),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idPassportNumber"],["name","Identity.PassportNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,124)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,124).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,124)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,124)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.passportNumber=e)&&u);return u},null,null)),t.ɵdid(124,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(126,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(128,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(129,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(132,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(134,0,null,null,2,"label",[["for","idLicenseNumber"]],null,null,null,null,null)),(n()(),t.ɵted(135,null,["",""])),t.ɵppd(136,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(138,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idLicenseNumber"],["name","Identity.LicenseNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,139)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,139).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,139)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,139)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.licenseNumber=e)&&u);return u},null,null)),t.ɵdid(139,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(141,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(143,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(144,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(148,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(150,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(152,0,null,null,2,"label",[["for","idEmail"]],null,null,null,null,null)),(n()(),t.ɵted(153,null,["",""])),t.ɵppd(154,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(156,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idEmail"],["name","Identity.Email"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,157)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,157).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,157)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,157)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.email=e)&&u);return u},null,null)),t.ɵdid(157,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(159,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(161,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(162,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(165,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(167,0,null,null,2,"label",[["for","idPhone"]],null,null,null,null,null)),(n()(),t.ɵted(168,null,["",""])),t.ɵppd(169,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(171,0,null,null,5,"input",[["class","form-control"],["id","idPhone"],["name","Identity.Phone"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,172)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,172).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,172)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,172)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.phone=e)&&u);return u},null,null)),t.ɵdid(172,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(174,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(176,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(180,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(182,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(184,0,null,null,2,"label",[["for","idAddress1"]],null,null,null,null,null)),(n()(),t.ɵted(185,null,["",""])),t.ɵppd(186,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(188,0,null,null,5,"input",[["class","form-control"],["id","idAddress1"],["name","Identity.Address1"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,189)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,189).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,189)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,189)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address1=e)&&u);return u},null,null)),t.ɵdid(189,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(191,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(193,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(196,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(198,0,null,null,2,"label",[["for","idAddress2"]],null,null,null,null,null)),(n()(),t.ɵted(199,null,["",""])),t.ɵppd(200,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(202,0,null,null,5,"input",[["class","form-control"],["id","idAddress2"],["name","Identity.Address2"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,203)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,203).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,203)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,203)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address2=e)&&u);return u},null,null)),t.ɵdid(203,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(205,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(207,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(211,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(213,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(215,0,null,null,2,"label",[["for","idAddress3"]],null,null,null,null,null)),(n()(),t.ɵted(216,null,["",""])),t.ɵppd(217,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(219,0,null,null,5,"input",[["class","form-control"],["id","idAddress3"],["name","Identity.Address3"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,220)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,220).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,220)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,220)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address3=e)&&u);return u},null,null)),t.ɵdid(220,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(222,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(224,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(227,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(229,0,null,null,2,"label",[["for","idCity"]],null,null,null,null,null)),(n()(),t.ɵted(230,null,["",""])),t.ɵppd(231,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(233,0,null,null,5,"input",[["class","form-control"],["id","idCity"],["name","Identity.City"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,234)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,234).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,234)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,234)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.city=e)&&u);return u},null,null)),t.ɵdid(234,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(236,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(238,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(242,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(244,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(246,0,null,null,2,"label",[["for","idState"]],null,null,null,null,null)),(n()(),t.ɵted(247,null,["",""])),t.ɵppd(248,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(250,0,null,null,5,"input",[["class","form-control"],["id","idState"],["name","Identity.State"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,251)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,251).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,251)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,251)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.state=e)&&u);return u},null,null)),t.ɵdid(251,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(253,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(255,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(258,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(260,0,null,null,2,"label",[["for","idPostalCode"]],null,null,null,null,null)),(n()(),t.ɵted(261,null,["",""])),t.ɵppd(262,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(264,0,null,null,5,"input",[["class","form-control"],["id","idPostalCode"],["name","Identity.PostalCode"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,265)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,265).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,265)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,265)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.postalCode=e)&&u);return u},null,null)),t.ɵdid(265,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(267,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(269,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(273,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(275,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(277,0,null,null,2,"label",[["for","idCountry"]],null,null,null,null,null)),(n()(),t.ɵted(278,null,["",""])),t.ɵppd(279,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(281,0,null,null,5,"input",[["class","form-control"],["id","idCountry"],["name","Identity.Country"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,282)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,282).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,282)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,282)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.country=e)&&u);return u},null,null)),t.ɵdid(282,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(284,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(286,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Identity.Title",e.cipher.identity.title),n(l,18,0,e.identityTitleOptions);n(l,34,0,"Identity.FirstName",e.cipher.identity.firstName);n(l,48,0,"Identity.MiddleName",e.cipher.identity.middleName);n(l,62,0,"Identity.LastName",e.cipher.identity.lastName);n(l,79,0,"Identity.Username",e.cipher.identity.username);n(l,82,0,"");n(l,94,0,"Identity.Company",e.cipher.identity.company);n(l,111,0,"Identity.SSN",e.cipher.identity.ssn);n(l,114,0,"");n(l,126,0,"Identity.PassportNumber",e.cipher.identity.passportNumber);n(l,129,0,"");n(l,141,0,"Identity.LicenseNumber",e.cipher.identity.licenseNumber);n(l,144,0,"");n(l,159,0,"Identity.Email",e.cipher.identity.email);n(l,162,0,"");n(l,174,0,"Identity.Phone",e.cipher.identity.phone);n(l,191,0,"Identity.Address1",e.cipher.identity.address1);n(l,205,0,"Identity.Address2",e.cipher.identity.address2);n(l,222,0,"Identity.Address3",e.cipher.identity.address3);n(l,236,0,"Identity.City",e.cipher.identity.city);n(l,253,0,"Identity.State",e.cipher.identity.state);n(l,267,0,"Identity.PostalCode",e.cipher.identity.postalCode);n(l,284,0,"Identity.Country",e.cipher.identity.country)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"))),n(l,59,0,t.ɵnov(l,64).ngClassUntouched,t.ɵnov(l,64).ngClassTouched,t.ɵnov(l,64).ngClassPristine,t.ɵnov(l,64).ngClassDirty,t.ɵnov(l,64).ngClassValid,t.ɵnov(l,64).ngClassInvalid,t.ɵnov(l,64).ngClassPending),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,76,0,t.ɵnov(l,81).ngClassUntouched,t.ɵnov(l,81).ngClassTouched,t.ɵnov(l,81).ngClassPristine,t.ɵnov(l,81).ngClassDirty,t.ɵnov(l,81).ngClassValid,t.ɵnov(l,81).ngClassInvalid,t.ɵnov(l,81).ngClassPending),n(l,88,0,t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"))),n(l,91,0,t.ɵnov(l,96).ngClassUntouched,t.ɵnov(l,96).ngClassTouched,t.ɵnov(l,96).ngClassPristine,t.ɵnov(l,96).ngClassDirty,t.ɵnov(l,96).ngClassValid,t.ɵnov(l,96).ngClassInvalid,t.ɵnov(l,96).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"))),n(l,108,0,t.ɵnov(l,113).ngClassUntouched,t.ɵnov(l,113).ngClassTouched,t.ɵnov(l,113).ngClassPristine,t.ɵnov(l,113).ngClassDirty,t.ɵnov(l,113).ngClassValid,t.ɵnov(l,113).ngClassInvalid,t.ɵnov(l,113).ngClassPending),n(l,120,0,t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"))),n(l,123,0,t.ɵnov(l,128).ngClassUntouched,t.ɵnov(l,128).ngClassTouched,t.ɵnov(l,128).ngClassPristine,t.ɵnov(l,128).ngClassDirty,t.ɵnov(l,128).ngClassValid,t.ɵnov(l,128).ngClassInvalid,t.ɵnov(l,128).ngClassPending),n(l,135,0,t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"))),n(l,138,0,t.ɵnov(l,143).ngClassUntouched,t.ɵnov(l,143).ngClassTouched,t.ɵnov(l,143).ngClassPristine,t.ɵnov(l,143).ngClassDirty,t.ɵnov(l,143).ngClassValid,t.ɵnov(l,143).ngClassInvalid,t.ɵnov(l,143).ngClassPending),n(l,153,0,t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,156,0,t.ɵnov(l,161).ngClassUntouched,t.ɵnov(l,161).ngClassTouched,t.ɵnov(l,161).ngClassPristine,t.ɵnov(l,161).ngClassDirty,t.ɵnov(l,161).ngClassValid,t.ɵnov(l,161).ngClassInvalid,t.ɵnov(l,161).ngClassPending),n(l,168,0,t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"))),n(l,171,0,t.ɵnov(l,176).ngClassUntouched,t.ɵnov(l,176).ngClassTouched,t.ɵnov(l,176).ngClassPristine,t.ɵnov(l,176).ngClassDirty,t.ɵnov(l,176).ngClassValid,t.ɵnov(l,176).ngClassInvalid,t.ɵnov(l,176).ngClassPending),n(l,185,0,t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"))),n(l,188,0,t.ɵnov(l,193).ngClassUntouched,t.ɵnov(l,193).ngClassTouched,t.ɵnov(l,193).ngClassPristine,t.ɵnov(l,193).ngClassDirty,t.ɵnov(l,193).ngClassValid,t.ɵnov(l,193).ngClassInvalid,t.ɵnov(l,193).ngClassPending),n(l,199,0,t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"))),n(l,202,0,t.ɵnov(l,207).ngClassUntouched,t.ɵnov(l,207).ngClassTouched,t.ɵnov(l,207).ngClassPristine,t.ɵnov(l,207).ngClassDirty,t.ɵnov(l,207).ngClassValid,t.ɵnov(l,207).ngClassInvalid,t.ɵnov(l,207).ngClassPending),n(l,216,0,t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"))),n(l,219,0,t.ɵnov(l,224).ngClassUntouched,t.ɵnov(l,224).ngClassTouched,t.ɵnov(l,224).ngClassPristine,t.ɵnov(l,224).ngClassDirty,t.ɵnov(l,224).ngClassValid,t.ɵnov(l,224).ngClassInvalid,t.ɵnov(l,224).ngClassPending),n(l,230,0,t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"))),n(l,233,0,t.ɵnov(l,238).ngClassUntouched,t.ɵnov(l,238).ngClassTouched,t.ɵnov(l,238).ngClassPristine,t.ɵnov(l,238).ngClassDirty,t.ɵnov(l,238).ngClassValid,t.ɵnov(l,238).ngClassInvalid,t.ɵnov(l,238).ngClassPending),n(l,247,0,t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"))),n(l,250,0,t.ɵnov(l,255).ngClassUntouched,t.ɵnov(l,255).ngClassTouched,t.ɵnov(l,255).ngClassPristine,t.ɵnov(l,255).ngClassDirty,t.ɵnov(l,255).ngClassValid,t.ɵnov(l,255).ngClassInvalid,t.ɵnov(l,255).ngClassPending),n(l,261,0,t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"))),n(l,264,0,t.ɵnov(l,269).ngClassUntouched,t.ɵnov(l,269).ngClassTouched,t.ɵnov(l,269).ngClassPristine,t.ɵnov(l,269).ngClassDirty,t.ɵnov(l,269).ngClassValid,t.ɵnov(l,269).ngClassInvalid,t.ɵnov(l,269).ngClassPending),n(l,278,0,t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"))),n(l,281,0,t.ɵnov(l,286).ngClassUntouched,t.ɵnov(l,286).ngClassTouched,t.ɵnov(l,286).ngClassPristine,t.ɵnov(l,286).ngClassDirty,t.ɵnov(l,286).ngClassValid,t.ɵnov(l,286).ngClassInvalid,t.ɵnov(l,286).ngClassPending)})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"")},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"]],[[8,"id",0],[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFieldValue(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(16,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(17,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"");n(l,16,0,"fa fa-lg",n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue))},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.showValue?"text":"password",""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"")),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"input",[["appTrueFalseValue",""],["falseValue","false"],["trueValue","true"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,1).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,1).onTouched()&&u);"change"===l&&(u=!1!==t.ɵnov(n,2).onHostChange(e)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(2,16384,null,0,c.TrueFalseValueDirective,[t.ElementRef,t.Renderer2],{trueValue:[0,"trueValue"],falseValue:[1,"falseValue"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.CheckboxControlValueAccessor,c.TrueFalseValueDirective]),t.ɵdid(4,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(6,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null)],function(n,l){n(l,2,0,"true","false"),n(l,4,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,6).ngClassUntouched,t.ɵnov(l,6).ngClassTouched,t.ɵnov(l,6).ngClassPristine,t.ɵnov(l,6).ngClassDirty,t.ɵnov(l,6).ngClassValid,t.ɵnov(l,6).ngClassInvalid,t.ɵnov(l,6).ngClassPending)})}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,54,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,22,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/custom-fields/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.name=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(24,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,26,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,19,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,4,"div",[["class","flex-fill"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeField(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,21,0,t.ɵinlineInterpolate(1,"Field.Name",l.context.index,""),l.context.$implicit.name);n(l,24,0,""),n(l,36,0,l.context.$implicit.type===e.fieldType.Text),n(l,39,0,l.context.$implicit.type===e.fieldType.Hidden),n(l,44,0,l.context.$implicit.type===e.fieldType.Boolean)},function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,"")),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"")),n(l,18,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,29,0,t.ɵinlineInterpolate(1,"fieldValue",l.context.index,"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"))),n(l,47,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),""))})}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.fields)},null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","organizationId"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,9,"select",[["class","form-control"],["id","organizationId"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,15).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==o.organizationChanged()&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(22,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,17,0,"OrganizationId",e.cipher.organizationId),n(l,22,0,e.ownershipOptions)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"))),n(l,14,0,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending)})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"input",[["class","form-check-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,3).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"label",[["class","form-check-label"]],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,9,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,"")),n(l,10,0,l.context.$implicit.name)})}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.collections)},null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,!e.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections")))})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,2)],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"))),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium")))})}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==o.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"))),n(l,6,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"")),n(l,9,0,e.cipher.passwordHistory.length)})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n "," -\n "])),t.ɵppd(2,2),(n()(),t.ɵeld(3,0,null,null,1,"span",[["class","text-monospace ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"))),n(l,4,0,l.context.$implicit.password)})}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.passwordHistory)},null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,18,"div",[["class","small text-muted mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",":"])),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,on)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.showRevisionDate),n(l,16,0,e.hasPasswordHistory),n(l,19,0,e.viewingPasswordHistory)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium")))})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,96,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,20,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,14,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,14)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,14).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,14)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,14)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.name=e)&&u);return u},null,null)),t.ɵdid(14,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(15,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(18,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(20,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(24,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(29,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(33,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","notes"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"textarea",[["class","form-control"],["id","notes"],["name","Notes"],["rows","6"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.notes=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(54,null,["",""])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-2"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==o.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,[" ","\n "])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,2,"label",[["class","sr-only"],["for","addFieldType"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["",""])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,9,"select",[["class","form-control"],["id","addFieldType"],["name","AddFieldType"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,76).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,76).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.addFieldType=e)&&u);return u},null,null)),t.ɵdid(76,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(78,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(80,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(83,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(89,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(92,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,rn)),t.ɵdid(95,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.editMode);n(l,15,0,"");n(l,18,0,"Name",e.cipher.name),n(l,24,0,!e.organization),n(l,29,0,e.cipher.type===e.cipherType.Login),n(l,33,0,e.cipher.type===e.cipherType.Card),n(l,37,0,e.cipher.type===e.cipherType.Identity);n(l,48,0,"Notes",e.cipher.notes),n(l,58,0,e.cipher.hasFields);n(l,78,0,"AddFieldType",e.addFieldType),n(l,83,0,e.addFieldTypeOptions),n(l,89,0,!e.editMode&&!e.organization&&e.ownershipOptions&&e.ownershipOptions.length>1),n(l,92,0,!e.editMode&&e.cipher.organizationId),n(l,95,0,e.editMode)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"))),n(l,13,0,t.ɵnov(l,15).required?"":null,t.ɵnov(l,20).ngClassUntouched,t.ɵnov(l,20).ngClassTouched,t.ɵnov(l,20).ngClassPristine,t.ɵnov(l,20).ngClassDirty,t.ɵnov(l,20).ngClassValid,t.ɵnov(l,20).ngClassInvalid,t.ɵnov(l,20).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"))),n(l,72,0,t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"))),n(l,75,0,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending)})}function sn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFavorite()&&t);return t},null,null)),t.ɵppd(1,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(4,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(5,{"fa-star":0,"fa-star-o":1}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"fa fa-lg",n(l,5,0,e.cipher.favorite,!e.cipher.favorite))},function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),""))})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function cn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,sn)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,dn)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.organization),n(l,6,0,e.editMode)},null)}function pn(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵpid(0,o.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,44,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,41,"form",[["autocomplete","off"],["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,an)),t.ɵdid(26,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(41,null,["\n ","\n "])),t.ɵppd(42,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,cn)),t.ɵdid(45,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,26,0,e.cipher),n(l,45,0,e.cipher)},function(n,l){var e=l.component;n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,e.title),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵnov(l,6).loading),n(l,32,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"))),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel")))})}function fn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-add-edit",[],null,null,null,pn,k)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.ApiService,I.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=k,l.View_AddEditComponent_0=pn,l.View_AddEditComponent_Host_0=fn;var vn=t.ɵccf("app-org-vault-add-edit",v.AddEditComponent,fn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=vn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(4),i=e(36),a=e(7),s=e(3),d=e(12),c=e(584),p=e(23),f=e(21),v=e(8),h=e(9),g=e(5),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-fw fa-lg fa-file-o"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-lg fa-fw fa-spin"]],null,null,null,null,null))],null,null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"a",[["href","https://help.bitwarden.com/article/attachments/#fixing-old-attachments"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-exclamation-triangle text-warning"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["reuploadBtn",1]],null,3,"button",[["class","btn btn-outline-primary btn-sm m-0 py-0 px-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reupload(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵdid(8,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,8,0,l.component.reuploadPromises[l.parent.context.$implicit.id])},function(n,l){n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"")),n(l,7,0,t.ɵnov(l,7).loading),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(8,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==o.download(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(16,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(20,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,12,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,[["deleteBtn",1]],null,9,"button",[["appStopClick",""],["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(31,16384,null,0,i.StopClickDirective,[],null,null),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!l.context.$implicit.downloading),n(l,8,0,l.context.$implicit.downloading),n(l,20,0,e.showFixOldAttachments(l.context.$implicit)),n(l,30,0,e.deletePromises[l.context.$implicit.id])},function(n,l){n(l,17,0,l.context.$implicit.fileName),n(l,24,0,l.context.$implicit.sizeName),n(l,29,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading),n(l,36,0,!t.ɵnov(l,29).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.cipher.attachments)},null)}function R(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),(n()(),t.ɵeld(1,0,null,null,66,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,63,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,60,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,d.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,d.ControlContainer,null,[d.NgForm]),t.ɵdid(8,16384,null,0,d.NgControlStatusGroup,[[4,d.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),t.ɵppd(15,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(17,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(31,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"label",[["class","sr-only"],["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(61,1),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,17,0,e.cipher),n(l,31,0,e.cipher&&e.cipher.hasAttachments)},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"))),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"))),n(l,50,0,t.ɵnov(l,5).loading),n(l,52,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"")),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"))),n(l,60,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"")),n(l,62,0,t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-attachments",[],null,null,null,R,m)),t.ɵdid(1,114688,null,0,c.AttachmentsComponent,[p.CipherService,s.I18nService,f.CryptoService,v.UserService,h.PlatformUtilsService,g.ApiService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AttachmentsComponent=m,l.View_AttachmentsComponent_0=R,l.View_AttachmentsComponent_Host_0=I;var k=t.ɵccf("app-org-vault-attachments",c.AttachmentsComponent,I,{cipherId:"cipherId"},{onUploadedAttachment:"onUploadedAttachment",onDeletedAttachment:"onDeletedAttachment",onReuploadedAttachment:"onReuploadedAttachment"},[]);l.AttachmentsComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(19),a=e(18),s=e(7),d=e(3),c=e(587),p=e(5),f=e(6),v=e(13),h=e(9),g=e(21),m=e(8),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"unselectAll")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noGroupsInList")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-th text-muted fa-fw"],["title","This group can access all items"]],null,null,null,null,null))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,28,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,4,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,22).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,22).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(22,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(24,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(26,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Groups[",l.context.index,"].Checked"),l.context.$implicit.accessAll,l.context.$implicit.checked),n(l,16,0,l.context.$implicit.accessAll),n(l,24,0,t.ɵinlineInterpolate(1,"Groups[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked||l.context.$implicit.accessAll,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,21,0,t.ɵnov(l,26).ngClassUntouched,t.ɵnov(l,26).ngClassTouched,t.ɵnov(l,26).ngClassPristine,t.ɵnov(l,26).ngClassDirty,t.ɵnov(l,26).ngClassValid,t.ɵnov(l,26).ngClassInvalid,t.ɵnov(l,26).ngClassPending)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(22,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,22,0,l.component.groups)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"h3",[["class","mt-4 d-flex mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(10,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(13,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,6,0,e.groups&&e.groups.length),n(l,10,0,!e.groups||!e.groups.length),n(l,13,0,e.groups&&e.groups.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"groupAccess")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,14,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(10,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,10,0,"");n(l,13,0,"Name",e.name),n(l,19,0,e.accessGroups)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"))),n(l,8,0,t.ɵnov(l,10).required?"":null,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[d.I18nService]),(n()(),t.ɵeld(1,0,null,null,53,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,50,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,47,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(8,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(25,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(28,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,21,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,25,0,e.loading),n(l,28,0,!e.loading),n(l,49,0,e.editMode)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,e.title),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵnov(l,5).loading),n(l,34,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"")),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-collection-add-edit",[],null,null,null,O,y)),t.ɵdid(1,114688,null,0,c.CollectionAddEditComponent,[p.ApiService,d.I18nService,f.Angulartics2,v.ToasterService,h.PlatformUtilsService,g.CryptoService,m.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionAddEditComponent=y,l.View_CollectionAddEditComponent_0=O,l.View_CollectionAddEditComponent_Host_0=N;var E=t.ɵccf("app-collection-add-edit",c.CollectionAddEditComponent,N,{collectionId:"collectionId",organizationId:"organizationId"},{onSavedCollection:"onSavedCollection",onDeletedCollection:"onDeletedCollection"},[]);l.CollectionAddEditComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(585),p=e(43),f=e(9),v=e(23),h=e(5),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function S(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,21,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(42,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(46,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.cipher),n(l,42,0,e.collections&&e.collections.length),n(l,46,0,!e.collections||!e.collections.length),n(l,49,0,e.collections&&e.collections.length)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"))),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-collections",[],null,null,null,S,g)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService,h.ApiService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=g,l.View_CollectionsComponent_0=S,l.View_CollectionsComponent_Host_0=_;var R=t.ɵccf("app-org-vault-collections",c.CollectionsComponent,_,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(19),r=e(18),i=e(12),a=e(7),s=e(3),d=e(481),c=e(5),p=e(229),f=e(13),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"th",[["class","border-top-0"],["width","150"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"user")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"span",[],[[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.userEmail,"")),n(l,3,0,l.parent.context.$implicit.userName)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[],[[8,"className",0],[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(12,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,0,"td",[],[[8,"innerHTML",1]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,l.component.showUser)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"))),n(l,8,0,t.ɵinlineInterpolate(1,"text-muted fa fa-lg ",l.context.$implicit.appIcon,""),t.ɵinlineInterpolate(2,"",l.context.$implicit.appName,", ",l.context.$implicit.ip,"")),n(l,14,0,l.context.$implicit.message)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"table",[["class","table table-hover mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,22,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,19,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"th",[["class","border-top-0"],["width","210"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"th",[["class","border-top-0"],["width","40"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"span",[["class","sr-only"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"th",[["class","border-top-0"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(29,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,18,0,e.showUser),n(l,29,0,e.events)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"event")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["moreBtn",1]],null,9,"button",[["class","btn btn-block btn-link btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!1)&&t);return t},null,null)),t.ɵdid(1,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.morePromise)},function(n,l){n(l,0,0,l.component.loaded&&t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,54,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,40,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,28,"div",[["class","form-inline"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["class","sr-only"],["for","start"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","start"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.start=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n){return[n]},[i.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,i.NgModel,[[8,null],[8,null],[8,null],[6,i.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(15,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"span",[["class","mx-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["-"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"label",[["class","sr-only"],["for","end"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","end"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,26)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,26).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,26)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,26)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.end=e)&&u);return u},null,null)),t.ɵdid(26,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n){return[n]},[i.DefaultValueAccessor]),t.ɵdid(28,671744,null,0,i.NgModel,[[8,null],[8,null],[8,null],[6,i.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(30,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,[["refreshBtn",1]],null,7,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!0)&&t);return t},null,null)),t.ɵdid(35,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(38,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(39,{"fa-spin":0}),(n()(),t.ɵted(40,null,["\n ","\n "])),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(47,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(50,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(53,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.start),n(l,28,0,e.end),n(l,35,0,e.refreshPromise);n(l,38,0,"fa fa-refresh fa-fw",n(l,39,0,e.loaded&&t.ɵnov(l,34).loading)),n(l,47,0,!e.events||!e.events.length),n(l,50,0,e.events&&e.events.length),n(l,53,0,e.continuationToken)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"startDate"))),n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"startDate")),""),t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"endDate"))),n(l,25,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,25,0,n(l,31,0,t.ɵnov(l.parent,0),"endDate")),""),t.ɵnov(l,30).ngClassUntouched,t.ɵnov(l,30).ngClassTouched,t.ɵnov(l,30).ngClassPristine,t.ɵnov(l,30).ngClassDirty,t.ɵnov(l,30).ngClassValid,t.ɵnov(l,30).ngClassInvalid,t.ɵnov(l,30).ngClassPending),n(l,34,0,e.loaded&&t.ɵnov(l,34).loading),n(l,40,0,t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l.parent,0),"refresh")))})}function R(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,37,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,34,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,31,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(14,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(26,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(29,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,14,0,e.name),n(l,26,0,!e.loaded),n(l,29,0,e.loaded)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"eventLogs"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"close")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-events",[],null,null,null,R,v)),t.ɵdid(1,114688,null,0,d.EntityEventsComponent,[c.ApiService,s.I18nService,p.EventService,f.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityEventsComponent=v,l.View_EntityEventsComponent_0=R,l.View_EntityEventsComponent_Host_0=I;var k=t.ɵccf("app-entity-events",d.EntityEventsComponent,I,{name:"name",entity:"entity",entityId:"entityId",organizationId:"organizationId",showUser:"showUser"},{},[]);l.EntityEventsComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(12),r=e(99),i=e(157),a=e(137),s=e(41),d=e(103),c=e(30),p=e(7),f=e(3),v=e(262),h=e(19),g=e(18),m=e(492),y=e(5),C=e(6),b=e(13),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[["class","badge badge-pill badge-info"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.selectedCount)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUsersInList")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "]))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-secondary"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted d-block"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-th"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"userAccessAllItems")),""))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.parent.context.$implicit.accessAll)},null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user")))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,3).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,o.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,o.NgModel,[[2,o.ControlContainer],[8,null],[8,null],[6,o.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,o.NgControl,null,[o.NgModel]),t.ɵdid(7,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.id.substr(0,8),"_ReadOnly"),l.parent.context.$implicit.accessAll||!l.parent.context.$implicit.checked,l.parent.context.$implicit.readOnly)},function(n,l){n(l,2,0,t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending)})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,51,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);"change"===l&&(u=!1!==o.selectedChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,o.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,o.NgModel,[[2,o.ControlContainer],[8,null],[8,null],[6,o.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,o.NgControl,null,[o.NgModel]),t.ɵdid(9,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(10,16384,null,0,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,4,"td",[["width","30"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,1,"app-avatar",[["size","25"]],null,null,null,i.View_AvatarComponent_0,i.RenderType_AvatarComponent)),t.ɵdid(16,638976,null,0,a.AvatarComponent,[s.DomSanitizer,d.CryptoFunctionService,c.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,10,"td",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(22,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(25,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(28,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(32,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,13,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(37,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(40,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(43,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(46,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(50,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,t.ɵinlineInterpolate(1,"",l.context.$implicit.id.substr(0,8),"_Checked"),"collection"===e.entity&&l.context.$implicit.accessAll,l.context.$implicit.checked);n(l,16,0,l.context.$implicit.name||l.context.$implicit.email,l.context.$implicit.email,"25",14,!0),n(l,22,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,25,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,28,0,l.context.$implicit.name),n(l,32,0,"collection"===e.entity),n(l,37,0,l.context.$implicit.type===e.organizationUserType.Owner),n(l,40,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,43,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,46,0,l.context.$implicit.type===e.organizationUserType.User),n(l,50,0,"collection"===e.entity)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,20,0,l.context.$implicit.email)})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,33,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,24,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,21,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(26,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(33,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,19,0,"collection"===e.entity),n(l,26,0,"collection"===e.entity),n(l,33,0,l.parent.context.ngIf)},function(n,l){n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"name"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"userType")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,43,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,34,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,13,"div",[["class","mr-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["name","SearchText"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,o.NgModel,[[2,o.ControlContainer],[8,null],[8,null],[6,o.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,o.NgControl,null,[o.NgModel]),t.ɵdid(15,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,16,"div",[["class","btn-group btn-group-sm"],["role","group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filterSelected(!1)&&t);return t},null,null)),t.ɵdid(22,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(23,{active:0}),(n()(),t.ɵted(24,null,["\n ","\n "])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,7,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filterSelected(!0)&&t);return t},null,null)),t.ɵdid(28,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(29,{active:0}),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(39,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(42,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"SearchText",e.searchText);n(l,22,0,"btn btn-outline-secondary",n(l,23,0,!e.showSelected));n(l,28,0,"btn btn-outline-secondary",n(l,29,0,e.showSelected)),n(l,33,0,e.selectedCount),n(l,39,0,!l.context.ngIf.length),n(l,42,0,l.context.ngIf.length)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"search"))),n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"search")),""),t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent,0),"all"))),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"selected")))})}function z(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵpid(0,v.SearchPipe,[]),(n()(),t.ɵeld(2,0,null,null,52,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,49,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,46,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(9,16384,null,0,o.NgControlStatusGroup,[[4,o.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵeld(17,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(30,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,L)),t.ɵdid(33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(34,5),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["",""])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,30,0,e.loading||!e.users),n(l,33,0,!e.loading&&e.users&&t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id")))},function(n,l){var e=l.component;n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"userAccess"))),n(l,18,0,e.entityName),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,38,0,t.ɵnov(l,6).loading),n(l,40,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"loading")),"")),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"save"))),n(l,49,0,t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"close")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-users",[],null,null,null,z,w)),t.ɵdid(1,114688,null,0,m.EntityUsersComponent,[y.ApiService,f.I18nService,C.Angulartics2,b.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityUsersComponent=w,l.View_EntityUsersComponent_0=z,l.View_EntityUsersComponent_Host_0=G;var j=t.ɵccf("app-entity-users",m.EntityUsersComponent,G,{entity:"entity",entityId:"entityId",entityName:"entityName",organizationId:"organizationId"},{onEditedUsers:"onEditedUsers"},[]);l.EntityUsersComponentNgFactory=j},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(19),a=e(18),s=e(7),d=e(3),c=e(589),p=e(5),f=e(6),v=e(13),h=e(43),g=e(9),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,19).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked),n(l,21,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,18,0,t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(22,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,22,0,l.component.collections)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.collections||!e.collections.length),n(l,6,0,e.collections&&e.collections.length)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,83,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,14,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(10,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","externalId"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,5,"input",[["class","form-control"],["id","externalId"],["name","ExternalId"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,25)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,25)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,25)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.externalId=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(27,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(29,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,8,"h3",[["class","mt-4 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"div",[["class","mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["\n ","\n "])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(43,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(47,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(48,{"mb-0":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,6,"input",[["class","form-check-input"],["id","accessAll"],["name","access"],["type","radio"],["value","all"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,53)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,53).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,53)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,53)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,54).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,54).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(53,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(54,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(56,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(58,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,2,"label",[["class","form-check-label"],["for","accessAll"]],null,null,null,null,null)),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,6,"input",[["class","form-check-input"],["id","accessSelected"],["name","access"],["type","radio"],["value","selected"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,69).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,69).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(69,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(71,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(73,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,2,"label",[["class","form-check-label"],["for","accessSelected"]],null,null,null,null,null)),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(82,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,10,0,"");n(l,13,0,"Name",e.name);n(l,27,0,"ExternalId",e.externalId),n(l,43,0,"selected"===e.access&&e.collections&&e.collections.length);n(l,47,0,"form-group",n(l,48,0,"selected"!==e.access));n(l,54,0,"access","all");n(l,56,0,"access",e.access);n(l,69,0,"access","selected");n(l,71,0,"access",e.access),n(l,82,0,"selected"===e.access)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"))),n(l,8,0,t.ɵnov(l,10).required?"":null,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"externalId"))),n(l,24,0,t.ɵnov(l,29).ngClassUntouched,t.ɵnov(l,29).ngClassTouched,t.ɵnov(l,29).ngClassPristine,t.ɵnov(l,29).ngClassDirty,t.ɵnov(l,29).ngClassValid,t.ɵnov(l,29).ngClassInvalid,t.ɵnov(l,29).ngClassPending),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent,0),"externalIdGroupDesc"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"accessControl"))),n(l,52,0,t.ɵnov(l,58).ngClassUntouched,t.ɵnov(l,58).ngClassTouched,t.ɵnov(l,58).ngClassPristine,t.ɵnov(l,58).ngClassDirty,t.ɵnov(l,58).ngClassValid,t.ɵnov(l,58).ngClassInvalid,t.ɵnov(l,58).ngClassPending),n(l,61,0,t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"groupAccessAllItems"))),n(l,67,0,t.ɵnov(l,73).ngClassUntouched,t.ɵnov(l,73).ngClassTouched,t.ɵnov(l,73).ngClassPristine,t.ɵnov(l,73).ngClassDirty,t.ɵnov(l,73).ngClassValid,t.ɵnov(l,73).ngClassInvalid,t.ɵnov(l,73).ngClassPending),n(l,76,0,t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l.parent,0),"groupAccessSelectedCollections")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function k(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[d.I18nService]),(n()(),t.ɵeld(1,0,null,null,53,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,50,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,47,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(8,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(25,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(28,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,21,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,25,0,e.loading),n(l,28,0,!e.loading),n(l,49,0,e.editMode)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,e.title),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵnov(l,5).loading),n(l,34,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"")),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-group-add-edit",[],null,null,null,k,m)),t.ɵdid(1,114688,null,0,c.GroupAddEditComponent,[p.ApiService,d.I18nService,f.Angulartics2,v.ToasterService,h.CollectionService,g.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_GroupAddEditComponent=m,l.View_GroupAddEditComponent_0=k,l.View_GroupAddEditComponent_Host_0=A;var O=t.ɵccf("app-group-add-edit",c.GroupAddEditComponent,A,{groupId:"groupId",organizationId:"organizationId"},{onSavedGroup:"onSavedGroup",onDeletedGroup:"onDeletedGroup"},[]);l.GroupAddEditComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(19),a=e(18),s=e(7),d=e(3),c=e(591),p=e(5),f=e(6),v=e(13),h=e(43),g=e(9),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,18,"div",[["class","form-group mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"label",[["for","emails"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,7,"input",[["class","form-control"],["id","emails"],["name","Emails"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,13)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,13)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,13)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.emails=e)&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(14,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,14,0,"");n(l,17,0,"Emails",e.emails)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"inviteUserDesc"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,12,0,t.ɵnov(l,14).required?"":null,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"inviteMultipleEmailDesc","20")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,19).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked),n(l,21,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,18,0,t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(22,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,22,0,l.component.collections)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.collections||!e.collections.length),n(l,6,0,e.collections&&e.collections.length)},null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,132,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeUser"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,12)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,12).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,12)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,12)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,13).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(13,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeUser"]],null,null,null,null,null)),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵeld(22,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(23,null,["",""])),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeManager"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,31)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,31).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,31)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,31)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,32).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(31,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(32,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(34,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(36,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeManager"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["\n ","\n "])),t.ɵppd(40,1),(n()(),t.ɵeld(41,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeAdmin"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,50)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,50).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,50)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,50)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,51).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(50,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(51,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(53,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(55,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeAdmin"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["\n ","\n "])),t.ɵppd(59,1),(n()(),t.ɵeld(60,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(61,null,["",""])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeOwner"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,69)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,69).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,69)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,69)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,70).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,70).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(70,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(72,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(74,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeOwner"]],null,null,null,null,null)),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵeld(79,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(80,null,["",""])),t.ɵppd(81,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,8,"h3",[["class","mt-4 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"div",[["class","mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["\n ","\n "])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(92,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(95,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(96,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(97,{"mb-0":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(99,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,6,"input",[["class","form-check-input"],["id","accessAll"],["name","access"],["type","radio"],["value","all"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,102)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,102).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,102)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,102)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,103).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,103).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(102,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(103,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(105,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(107,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(109,0,null,null,2,"label",[["class","form-check-label"],["for","accessAll"]],null,null,null,null,null)),(n()(),t.ɵted(110,null,["\n ","\n "])),t.ɵppd(111,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(114,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(116,0,null,null,6,"input",[["class","form-check-input"],["id","accessSelected"],["name","access"],["type","radio"],["value","selected"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,117)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,117).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,117)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,117)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,118).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,118).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(117,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(118,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(120,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(122,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(124,0,null,null,2,"label",[["class","form-check-label"],["for","accessSelected"]],null,null,null,null,null)),(n()(),t.ɵted(125,null,["\n ","\n "])),t.ɵppd(126,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(131,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.editMode);n(l,13,0,"userType",e.organizationUserType.User);n(l,15,0,"userType",e.type);n(l,32,0,"userType",e.organizationUserType.Manager);n(l,34,0,"userType",e.type);n(l,51,0,"userType",e.organizationUserType.Admin);n(l,53,0,"userType",e.type);n(l,70,0,"userType",e.organizationUserType.Owner);n(l,72,0,"userType",e.type),n(l,92,0,"selected"===e.access&&e.collections&&e.collections.length);n(l,96,0,"form-group",n(l,97,0,"selected"!==e.access));n(l,103,0,"access","all");n(l,105,0,"access",e.access);n(l,118,0,"access","selected");n(l,120,0,"access",e.access),n(l,131,0,"selected"===e.access)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent,0),"userType"))),n(l,11,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent,0),"user"))),n(l,23,0,t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent,0),"userDesc"))),n(l,30,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"manager"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"managerDesc"))),n(l,49,0,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"admin"))),n(l,61,0,t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"adminDesc"))),n(l,68,0,t.ɵnov(l,74).ngClassUntouched,t.ɵnov(l,74).ngClassTouched,t.ɵnov(l,74).ngClassPristine,t.ɵnov(l,74).ngClassDirty,t.ɵnov(l,74).ngClassValid,t.ɵnov(l,74).ngClassInvalid,t.ɵnov(l,74).ngClassPending),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"owner"))),n(l,80,0,t.ɵunv(l,80,0,n(l,81,0,t.ɵnov(l.parent,0),"ownerDesc"))),n(l,88,0,t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent,0),"accessControl"))),n(l,101,0,t.ɵnov(l,107).ngClassUntouched,t.ɵnov(l,107).ngClassTouched,t.ɵnov(l,107).ngClassPristine,t.ɵnov(l,107).ngClassDirty,t.ɵnov(l,107).ngClassValid,t.ɵnov(l,107).ngClassInvalid,t.ɵnov(l,107).ngClassPending),n(l,110,0,t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,0),"userAccessAllItems"))),n(l,116,0,t.ɵnov(l,122).ngClassUntouched,t.ɵnov(l,122).ngClassTouched,t.ɵnov(l,122).ngClassPristine,t.ɵnov(l,122).ngClassDirty,t.ɵnov(l,122).ngClassValid,t.ɵnov(l,122).ngClassInvalid,t.ɵnov(l,122).ngClassPending),n(l,125,0,t.ɵunv(l,125,0,n(l,126,0,t.ɵnov(l.parent,0),"userAccessSelectedCollections")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[d.I18nService]),(n()(),t.ɵeld(1,0,null,null,58,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,55,"div",[["class","modal-dialog"]],null,null,null,null,null)),t.ɵdid(4,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(5,{"modal-lg":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["form",1]],null,50,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,8).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,8).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(8,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(10,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(11,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,14,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,4,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(30,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(33,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,21,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(54,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,"modal-dialog",n(l,5,0,!e.editMode)),n(l,11,0,e.formPromise),n(l,18,0,e.name),n(l,30,0,e.loading),n(l,33,0,!e.loading),n(l,54,0,e.editMode)},function(n,l){var e=l.component;n(l,7,0,t.ɵnov(l,10).ngClassUntouched,t.ɵnov(l,10).ngClassTouched,t.ɵnov(l,10).ngClassPristine,t.ɵnov(l,10).ngClassDirty,t.ɵnov(l,10).ngClassValid,t.ɵnov(l,10).ngClassInvalid,t.ɵnov(l,10).ngClassPending),n(l,16,0,e.title),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,37,0,t.ɵnov(l,7).loading),n(l,39,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"")),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-add-edit",[],null,null,null,O,m)),t.ɵdid(1,114688,null,0,c.UserAddEditComponent,[p.ApiService,d.I18nService,f.Angulartics2,v.ToasterService,h.CollectionService,g.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserAddEditComponent=m,l.View_UserAddEditComponent_0=O,l.View_UserAddEditComponent_Host_0=N;var E=t.ɵccf("app-user-add-edit",c.UserAddEditComponent,N,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser",onDeletedUser:"onDeletedUser"},[]);l.UserAddEditComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(4),d=e(592),c=e(5),p=e(6),f=e(13),v=e(21),h=e(67),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,75,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,72,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,69,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,r.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(9,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,27,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),t.ɵted(32,null,["\n ","\n "])),t.ɵppd(33,1),(n()(),t.ɵeld(34,0,null,null,2,"a",[["href","https://help.bitwarden.com/article/fingerprint-phrase/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(35,null,["\n ",""])),t.ɵppd(36,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵeld(40,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(41,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,12,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"input",[["class","form-check-input"],["id","dontAskAgain"],["name","DontAskAgain"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,46).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.dontAskAgain=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,r.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.CheckboxControlValueAccessor]),t.ɵdid(48,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(50,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,2,"label",[["class","form-check-label"],["for","dontAskAgain"]],null,null,null,null,null)),(n()(),t.ɵted(53,null,["\n ","\n "])),t.ɵppd(54,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(66,null,["",""])),t.ɵppd(67,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(71,null,["",""])),t.ɵppd(72,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.name);n(l,48,0,"DontAskAgain",e.dontAskAgain)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"confirmUser"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"fingerprintEnsureIntegrityVerify"))),n(l,35,0,t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"learnMore"))),n(l,41,0,e.fingerprint),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"dontAskFingerprintAgain"))),n(l,60,0,t.ɵnov(l,5).loading),n(l,62,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"loading")),"")),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"confirm"))),n(l,71,0,t.ɵunv(l,71,0,n(l,72,0,t.ɵnov(l,0),"cancel")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-confirm",[],null,null,null,y,g)),t.ɵdid(1,114688,null,0,d.UserConfirmComponent,[c.ApiService,o.I18nService,p.Angulartics2,f.ToasterService,v.CryptoService,h.StorageService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserConfirmComponent=g,l.View_UserConfirmComponent_0=y,l.View_UserConfirmComponent_Host_0=C;var b=t.ɵccf("app-user-confirm",d.UserConfirmComponent,C,{name:"name",userId:"userId",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onConfirmedUser:"onConfirmedUser"},[]);l.UserConfirmComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(593),p=e(5),f=e(6),v=e(13),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Groups[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.groups)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(7,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(10,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,!e.groups||!e.groups.length),n(l,10,0,e.groups&&e.groups.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"groupAccessUserDesc")))})}function S(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,52,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,49,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,46,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(30,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(33,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.name),n(l,30,0,e.loading),n(l,33,0,!e.loading)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"groupAccess"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,37,0,t.ɵnov(l,5).loading),n(l,39,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"")),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-groups",[],null,null,null,S,h)),t.ɵdid(1,114688,null,0,c.UserGroupsComponent,[p.ApiService,a.I18nService,f.Angulartics2,v.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserGroupsComponent=h,l.View_UserGroupsComponent_0=S,l.View_UserGroupsComponent_Host_0=_;var R=t.ɵccf("app-user-groups",c.UserGroupsComponent,_,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser"},[]);l.UserGroupsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(7),r=e(3),i=e(562),a=e(563),s=e(61),d=e(9),c=t.ɵcrt({encapsulation:2,styles:[],data:{}});function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,"li",[["class","list-group-item d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"div",[["class","text-monospace password-wrapper"]],[[8,"innerHTML",1]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,4,"button",[["class","btn btn-link"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.context.$implicit.password)&&t);return t},null,null)),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent,1),l.context.$implicit.password))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent,2),l.context.$implicit.date,"medium"))),n(l,14,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"copyPassword")),""))})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"ul",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,p)),t.ɵdid(3,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.history)},null)}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noPasswordsInList")))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),t.ɵpid(0,i.ColorPasswordPipe,[]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(3,0,null,null,44,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,41,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,38,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(24,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(27,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(32,1),(n()(),t.ɵted(33,null,["\n ","\n "])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,4,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.clear()&&t);return t},null,null)),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,24,0,e.history.length),n(l,27,0,!e.history.length)},function(n,l){n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHistory"))),n(l,15,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"close")),"")),n(l,31,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"close")),"")),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"close"))),n(l,38,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"clear")),""))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-generator-history",[],null,null,null,h,c)),t.ɵdid(1,114688,null,0,a.PasswordGeneratorHistoryComponent,[s.PasswordGenerationService,d.PlatformUtilsService,r.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PasswordGeneratorHistoryComponent=c,l.View_PasswordGeneratorHistoryComponent_0=h,l.View_PasswordGeneratorHistoryComponent_Host_0=g;var m=t.ɵccf("app-password-generator-history",a.PasswordGeneratorHistoryComponent,g,{},{},[]);l.PasswordGeneratorHistoryComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(460),v=e(5),h=e(6),g=e(13),m=e(21),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(49,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"");n(l,49,0,"")},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"purgeVault"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),e.organizationId?"purgeOrgVaultDesc":"purgeVaultDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"purgeVaultWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"purgeVault"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-purge-vault",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.PurgeVaultComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_PurgeVaultComponent=C,l.View_PurgeVaultComponent_0=b,l.View_PurgeVaultComponent_Host_0=w;var S=t.ɵccf("app-purge-vault",f.PurgeVaultComponent,w,{organizationId:"organizationId"},{},[]);l.PurgeVaultComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(10),a=e(7),s=e(3),d=e(19),c=e(18),p=e(544),f=e(43),v=e(9),h=e(8),g=e(23),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noOrganizationsList")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,39,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"label",[["for","organization"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,9,"select",[["class","form-control"],["id","organization"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,13).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.organizationId=e)&&u);"change"===l&&(u=!1!==o.filterCollections()&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(20,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(31,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(35,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(38,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,15,0,"OrganizationId",e.organizationId),n(l,20,0,e.organizations),n(l,31,0,e.collections&&e.collections.length),n(l,35,0,!e.collections||!e.collections.length),n(l,38,0,e.collections&&e.collections.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"shareDesc"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"organization"))),n(l,12,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"collections")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"button",[["class","btn btn-primary btn-submit manual"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),t.ɵdid(1,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{loading:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,"btn btn-primary btn-submit manual",n(l,2,0,t.ɵnov(l.parent,5).loading))},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l.parent,5).loading||!e.canSave),n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"save")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["class","btn btn-primary"],["href","#"],["routerLink","/settings/create-organization"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,null,0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,r.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],function(n,l){n(l,1,0,"/settings/create-organization")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"newOrganization")))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),(n()(),t.ɵeld(1,0,null,null,49,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,46,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,43,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,d.ApiActionDirective,[t.ElementRef,c.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(30,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(33,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,12,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(38,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(41,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(44,1),(n()(),t.ɵted(45,null,["",""])),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.cipher),n(l,30,0,!e.organizations||!e.organizations.length),n(l,33,0,e.organizations&&e.organizations.length),n(l,38,0,e.organizations&&e.organizations.length),n(l,41,0,!e.organizations||!e.organizations.length)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"share"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,43,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")),"")),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"cancel")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-share",[],null,null,null,O,m)),t.ɵdid(1,245760,null,0,p.ShareComponent,[f.CollectionService,v.PlatformUtilsService,s.I18nService,h.UserService,g.CipherService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ShareComponent=m,l.View_ShareComponent_0=O,l.View_ShareComponent_Host_0=N;var E=t.ɵccf("app-vault-share",p.ShareComponent,N,{cipherId:"cipherId",organizationId:"organizationId"},{onSharedCipher:"onSharedCipher"},[]);l.ShareComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(19),h=e(18),g=e(4),m=e(7),y=e(553),C=e(6),b=e(8),w=e(9),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"img",[["alt",""],["class","float-right"],["src","images/0.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["1. ",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDesc"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDownloadApp")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(6,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(9,0,["\n ","\n "])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,0,"img",[["alt",""],["class","float-right"],["src","images/0.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorReaddDesc"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorNeedApp")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["2. ",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorScanCode")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"hr",[],null,null,null,null,null))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[["for","token"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["3. ",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","token"],["name","Token"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,7)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,7).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,7)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,7)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.token=e)&&u);return u},null,null)),t.ɵdid(7,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(8,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(11,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(13,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(14,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,8,0,"");n(l,11,0,"Token",e.token);n(l,14,0,"")},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorEnterCode"))),n(l,6,0,t.ɵnov(l,8).required?"":null,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,88,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,62,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(9,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(12,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,28,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,7,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,0,"i",[["class","fa-li fa fa-apple"]],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",":\n "])),t.ɵppd(20,1),(n()(),t.ɵeld(21,0,null,null,1,"a",[["href","https://itunes.apple.com/us/app/authy/id494168017?mt=8"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Authy"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,7,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,0,"i",[["class","fa-li fa fa-android"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",":\n "])),t.ɵppd(29,1),(n()(),t.ɵeld(30,0,null,null,1,"a",[["href","https://play.google.com/store/apps/details?id=com.authy.authy"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Authy"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,0,"i",[["class","fa-li fa fa-windows"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",":\n "])),t.ɵppd(38,1),(n()(),t.ɵeld(39,0,null,null,1,"a",[["href","https://www.microsoft.com/p/authenticator/9wzdncrfj3rj"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Microsoft Authenticator"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(45,null,["",""])),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(49,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(52,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,10,"p",[["class","text-center"]],null,null,null,null,null)),t.ɵdid(55,278528,null,0,g.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(56,{"mb-0":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,0,"canvas",[["id","qr"]],null,null,null,null,null)),(n()(),t.ɵeld(59,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,2,"code",[],[[8,"title",0]],null,null,null,null)),t.ɵppd(62,1),(n()(),t.ɵted(63,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(67,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,10,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(74,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(75,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(78,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(81,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(85,null,["",""])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,!e.enabled),n(l,12,0,e.enabled),n(l,49,0,!e.enabled),n(l,52,0,e.enabled);n(l,55,0,"text-center",n(l,56,0,e.enabled)),n(l,67,0,!e.enabled),n(l,78,0,!e.enabled),n(l,81,0,e.enabled)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"iosDevices"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent,0),"androidDevices"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"windowsDevices"))),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent,0),"twoStepAuthenticatorAppsRecommended"))),n(l,61,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"key")),"")),n(l,63,0,e.key),n(l,72,0,t.ɵnov(l,0).loading),n(l,74,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,85,0,t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l.parent,0),"close")))})}function P(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,31,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,28,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,25,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,16,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,6,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(29,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,26,0,!e.authed),n(l,29,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"authenticatorAppTitle"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),""))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-authenticator",[],null,null,null,P,S)),t.ɵdid(1,245760,null,0,y.TwoFactorAuthenticatorComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.UserService,w.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorAuthenticatorComponent=S,l.View_TwoFactorAuthenticatorComponent_0=P,l.View_TwoFactorAuthenticatorComponent_Host_0=V;var x=t.ɵccf("app-two-factor-authenticator",y.TwoFactorAuthenticatorComponent,V,{},{onUpdated:"onUpdated"},[]);l.TwoFactorAuthenticatorComponentNgFactory=x},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(19),h=e(18),g=e(4),m=e(7),y=e(463),C=e(6),b=e(9),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"img",[["alt",""],["class","float-right ml-3"],["src","images/2.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",":"])),t.ɵppd(12,1),(n()(),t.ɵted(13,null,[" ","\n "])),(n()(),t.ɵeld(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",":"])),t.ɵppd(18,1),(n()(),t.ɵted(19,null,[" ","\n "])),(n()(),t.ɵeld(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(23,null,["",":"])),t.ɵppd(24,1),(n()(),t.ɵted(25,null,[" ","\n "]))],function(n,l){n(l,3,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"))),n(l,13,0,e.ikey),n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"))),n(l,19,0,e.skey),n(l,23,0,t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"))),n(l,25,0,e.host)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,59,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"img",[["alt",""],["class","float-right ml-3"],["src","images/2.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","ikey"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","ikey"],["name","IntegrationKey"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,15)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,15)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,15)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.ikey=e)&&u);return u},null,null)),t.ɵdid(15,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(16,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(19,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(21,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(22,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","skey"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,8,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control"],["id","skey"],["name","SecretKey"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.skey=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(33,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(36,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(38,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(39,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,2,"label",[["for","host"]],null,null,null,null,null)),(n()(),t.ɵted(45,null,["",""])),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,9,"input",[["appInputVerbatim",""],["class","form-control"],["id","host"],["name","Host"],["required",""],["type","text"]],[[8,"placeholder",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,49)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,49).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,49)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,49)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.host=e)&&u);return u},null,null)),t.ɵdid(49,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(50,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(53,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(55,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(56,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,16,0,"");n(l,19,0,"IntegrationKey",e.ikey);n(l,22,0,"");n(l,33,0,"");n(l,36,0,"SecretKey",e.skey);n(l,39,0,"");n(l,50,0,"");n(l,53,0,"Host",e.host);n(l,56,0,"")},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoDesc"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"))),n(l,14,0,t.ɵnov(l,16).required?"":null,t.ɵnov(l,21).ngClassUntouched,t.ɵnov(l,21).ngClassTouched,t.ɵnov(l,21).ngClassPristine,t.ɵnov(l,21).ngClassDirty,t.ɵnov(l,21).ngClassValid,t.ɵnov(l,21).ngClassInvalid,t.ɵnov(l,21).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"))),n(l,31,0,t.ɵnov(l,33).required?"":null,t.ɵnov(l,38).ngClassUntouched,t.ɵnov(l,38).ngClassTouched,t.ɵnov(l,38).ngClassPristine,t.ɵnov(l,38).ngClassDirty,t.ɵnov(l,38).ngClassValid,t.ɵnov(l,38).ngClassInvalid,t.ɵnov(l,38).ngClassPending),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"))),n(l,48,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"ex"))," api-xxxxxxxx.duosecurity.com"),t.ɵnov(l,50).required?"":null,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,33,"form",[["autocomplete","off"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(9,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(12,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,10,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(23,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled),n(l,12,0,!e.enabled),n(l,23,0,!e.enabled),n(l,26,0,e.enabled)},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,17,0,t.ɵnov(l,0).loading),n(l,19,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close")))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Duo"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(28,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),""))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-duo",[],null,null,null,O,w)),t.ɵdid(1,49152,null,0,y.TwoFactorDuoComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorDuoComponent=w,l.View_TwoFactorDuoComponent_0=O,l.View_TwoFactorDuoComponent_Host_0=N;var E=t.ɵccf("app-two-factor-duo",y.TwoFactorDuoComponent,N,{},{onUpdated:"onUpdated"},[]);l.TwoFactorDuoComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(19),h=e(18),g=e(4),m=e(7),y=e(554),C=e(6),b=e(9),w=e(8),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",":"])),t.ɵppd(10,1),(n()(),t.ɵted(11,null,[" ","\n "]))],function(n,l){n(l,3,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,11,0,e.email)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","text-success ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,2)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeEmailSent",e.sentEmail)))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,61,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"p",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"span",[["class","mr-3"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"img",[["alt",""],["class","float-right ml-auto"],["src","images/1.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["1. ",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,8,"input",[["appInputVerbatim","false"],["class","form-control"],["id","email"],["inputmode","email"],["name","Email"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,18)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,18).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,18)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,18)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.email=e)&&u);return u},null,null)),t.ɵdid(18,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(19,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(22,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(24,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(25,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,15,"div",[["class","mb-3 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,[["sendBtn",1]],null,9,"button",[["class","btn btn-outline-primary btn-sm btn-submit align-self-start"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.sendEmail()&&t);return t},null,null)),t.ɵdid(31,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(42,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"label",[["for","token"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["2. ",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","token"],["name","Token"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,52)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,52).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,52)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,52)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.token=e)&&u);return u},null,null)),t.ɵdid(52,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(53,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(56,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(58,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(59,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,19,0,"");n(l,22,0,"Email",e.email);n(l,25,0,"false"),n(l,31,0,e.emailPromise),n(l,42,0,e.sentEmail);n(l,53,0,"");n(l,56,0,"Token",e.token);n(l,59,0,"")},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailDesc"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterEmail"))),n(l,17,0,t.ɵnov(l,19).required?"":null,t.ɵnov(l,24).ngClassUntouched,t.ɵnov(l,24).ngClassTouched,t.ɵnov(l,24).ngClassPristine,t.ɵnov(l,24).ngClassDirty,t.ɵnov(l,24).ngClassValid,t.ɵnov(l,24).ngClassInvalid,t.ɵnov(l,24).ngClassPending),n(l,30,0,t.ɵnov(l,30).loading),n(l,33,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent.parent,0),"sendEmail"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterCode"))),n(l,51,0,t.ɵnov(l,53).required?"":null,t.ɵnov(l,58).ngClassUntouched,t.ɵnov(l,58).ngClassTouched,t.ɵnov(l,58).ngClassPristine,t.ɵnov(l,58).ngClassDirty,t.ɵnov(l,58).ngClassValid,t.ɵnov(l,58).ngClassInvalid,t.ɵnov(l,58).ngClassPending)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,33,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(9,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(12,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,10,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(23,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled),n(l,12,0,!e.enabled),n(l,23,0,!e.enabled),n(l,26,0,e.enabled)},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,17,0,t.ɵnov(l,0).loading),n(l,19,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close")))})}function E(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,31,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,28,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,25,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,16,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,6,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(29,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,26,0,!e.authed),n(l,29,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"emailTitle"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),""))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-email",[],null,null,null,E,S)),t.ɵdid(1,49152,null,0,y.TwoFactorEmailComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,w.UserService],null,null)],null,null)}l.RenderType_TwoFactorEmailComponent=S,l.View_TwoFactorEmailComponent_0=E,l.View_TwoFactorEmailComponent_Host_0=T;var P=t.ɵccf("app-two-factor-email",y.TwoFactorEmailComponent,T,{},{onUpdated:"onUpdated"},[]);l.TwoFactorEmailComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(7),r=e(3),i=e(4),a=e(529),s=e(90),d=e(10),c=e(9),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"a",[["appStopClick",""],["class","list-group-item list-group-item-action"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.choose(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"img",[["alt",""],["class","pull-right"]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,1,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),(n()(),t.ɵted(7,null,["\n ","\n "]))],null,function(n,l){n(l,3,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,6,0,l.context.$implicit.name),n(l,7,0,l.context.$implicit.description)})}function v(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,43,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,40,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,37,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,13,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(24,278528,null,0,i.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,7,"a",[["appStopClick",""],["class","list-group-item list-group-item-action"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,27).onClick(e)&&u);"click"===l&&(u=!1!==o.recover()&&u);return u},null,null)),t.ɵdid(27,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(32,null,["\n ","\n "])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,24,0,l.component.providers)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepOptions"))),n(l,13,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"recoveryCodeTitle"))),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"recoveryCodeDesc"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"close")))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-options",[],null,null,null,v,p)),t.ɵdid(1,114688,null,0,a.TwoFactorOptionsComponent,[s.AuthService,d.Router,r.I18nService,c.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorOptionsComponent=p,l.View_TwoFactorOptionsComponent_0=v,l.View_TwoFactorOptionsComponent_Host_0=h;var g=t.ɵccf("app-two-factor-options",a.TwoFactorOptionsComponent,h,{},{onProviderSelected:"onProviderSelected",onRecoverSelected:"onRecoverSelected"},[]);l.TwoFactorOptionsComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(4),c=e(7),p=e(555),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"code",[["class","text-lg"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryYourCode"))),n(l,7,0,e.code)})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,null,null,null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryNoCode")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-primary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.print()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"printCode")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","modal-body text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(5,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(8,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,8,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(14,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,e.code),n(l,8,0,!e.code),n(l,14,0,e.code)},function(n,l){n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent,0),"close")))})}function C(n){return t.ɵvid(0,[t.ɵpid(0,c.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,31,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,28,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,25,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,16,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,6,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(26,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(29,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,26,0,!e.authed),n(l,29,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"recoveryCodeTitle"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-recovery",[],null,null,null,C,f)),t.ɵdid(1,49152,null,0,p.TwoFactorRecoveryComponent,[i.I18nService],null,null)],null,null)}l.RenderType_TwoFactorRecoveryComponent=f,l.View_TwoFactorRecoveryComponent_0=C,l.View_TwoFactorRecoveryComponent_Host_0=b;var w=t.ɵccf("app-two-factor-recovery",p.TwoFactorRecoveryComponent,b,{},{},[]);l.TwoFactorRecoveryComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(4),f=e(36),v=e(19),h=e(18),g=e(12),m=e(7),y=e(556),C=e(6),b=e(9),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,2)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"u2fkeyX",l.parent.context.index+1)))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"i",[["class","fa fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵdid(1,278528,null,0,p.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{"fa-check text-success":0,"fa-exclamation-triangle text-warning":1}),t.ɵppd(3,1)],function(n,l){n(l,1,0,"fa fa-fw",n(l,2,0,!l.parent.context.$implicit.compromised,l.parent.context.$implicit.compromised))},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),l.parent.context.$implicit.compromised?"keyCompromised":"enabled")),""))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spin fa-spinner text-muted fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),""))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n -\n "])),(n()(),t.ɵeld(5,0,null,null,3,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,6).onClick(e)&&u);"click"===l&&(u=!1!==o.remove(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(6,16384,null,0,f.StopClickDirective,[],null,null),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,t.ɵnov(l.parent,0).loading)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"remove")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["removeKeyBtn",1]],null,16,"li",[],null,null,null,null,null)),t.ɵdid(1,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa-li fa fa-key"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(12,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(15,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,l.context.$implicit.removePromise),n(l,6,0,!l.context.$implicit.configured||!l.context.$implicit.name),n(l,9,0,l.context.$implicit.configured&&l.context.$implicit.name),n(l,12,0,l.context.$implicit.configured&&!t.ɵnov(l,0).loading),n(l,15,0,e.keysConfiguredCount>1&&l.context.$implicit.configured)},null)}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-spinner fa-spin text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-spinner fa-spin text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","...\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fWaiting")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-check-circle text-success"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fClickSave")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-warning text-danger"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fProblemReadingTryAgain")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.u2fListening),n(l,6,0,e.u2fResponse),n(l,9,0,e.u2fError)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"save")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["disableBtn",1]],null,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.disable()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.disablePromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,106,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,g.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,g.ControlContainer,null,[g.NgForm]),t.ɵdid(3,16384,null,0,g.NgControlStatusGroup,[[4,g.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,80,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,13,"app-callout",[["type","warning"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(12,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(14,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(18,0,null,0,5,"ul",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,0,"img",[["alt",""],["class","float-right ml-5"],["src","images/4.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(31,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",":"])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,17,"ol",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(55,null,["",""])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,12,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,5,"input",[["class","form-control"],["id","name"],["name","Name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,g.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,g.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,g.NG_VALUE_ACCESSOR,function(n){return[n]},[g.DefaultValueAccessor]),t.ɵdid(70,671744,null,0,g.NgModel,[[2,g.ControlContainer],[8,null],[8,null],[6,g.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,g.NgControl,null,[g.NgModel]),t.ɵdid(72,16384,null,0,g.NgControlStatus,[[4,g.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,[["readKeyBtn",1]],null,3,"button",[["class","btn btn-outline-secondary mr-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.readKey()&&t);return t},null,null)),t.ɵdid(77,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(78,null,["\n ","\n "])),t.ɵppd(79,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(82,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(85,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,7,"button",[["class","btn btn-primary"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(93,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(96,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(100,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(103,null,["",""])),t.ɵppd(104,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled);n(l,12,0,"warning"),n(l,31,0,e.keys);n(l,70,0,"Name",!e.keyIdAvailable,e.name),n(l,77,0,e.challengePromise),n(l,82,0,t.ɵnov(l,76).loading),n(l,85,0,!t.ɵnov(l,76).loading),n(l,93,0,t.ɵnov(l,0).loading),n(l,96,0,!t.ɵnov(l,0).loading),n(l,100,0,e.enabled)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorU2fWarning"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorU2fSupportWeb"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"twoFactorU2fAdd"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorU2fGiveName"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorU2fPlugInReadKey"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorU2fTouchButton"))),n(l,55,0,t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"twoFactorU2fSaveForm"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"name"))),n(l,67,0,t.ɵnov(l,72).ngClassUntouched,t.ɵnov(l,72).ngClassTouched,t.ɵnov(l,72).ngClassPristine,t.ɵnov(l,72).ngClassDirty,t.ɵnov(l,72).ngClassValid,t.ɵnov(l,72).ngClassInvalid,t.ɵnov(l,72).ngClassPending),n(l,76,0,t.ɵnov(l,76).loading||e.u2fListening||!e.keyIdAvailable),n(l,78,0,t.ɵunv(l,78,0,n(l,79,0,t.ɵnov(l.parent,0),"readKey"))),n(l,90,0,t.ɵnov(l,0).loading||!e.u2fResponse),n(l,103,0,t.ɵunv(l,103,0,n(l,104,0,t.ɵnov(l.parent,0),"close")))})}function L(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FIDO U2F"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(28,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),""))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-u2f",[],null,null,null,L,w)),t.ɵdid(1,245760,null,0,y.TwoFactorU2fComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,t.NgZone],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorU2fComponent=w,l.View_TwoFactorU2fComponent_0=L,l.View_TwoFactorU2fComponent_Host_0=z;var G=t.ɵccf("app-two-factor-u2f",y.TwoFactorU2fComponent,z,{},{onUpdated:"onUpdated"},[]);l.TwoFactorU2fComponentNgFactory=G},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(4),h=e(19),g=e(18),m=e(7),y=e(557),C=e(6),b=e(9),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control"],["type","password"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,1)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,1).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,1)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,1)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.key=e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(3,671744,null,0,p.NgModel,[[2,p.ControlContainer],[8,null],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(5,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(6,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null)],function(n,l){n(l,3,0,t.ɵinlineInterpolate(1,"Key",l.parent.context.index+1,""),l.parent.context.$implicit.key);n(l,6,0,"")},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"key",l.parent.context.index+1,""),t.ɵnov(l,5).ngClassUntouched,t.ɵnov(l,5).ngClassTouched,t.ɵnov(l,5).ngClassPristine,t.ɵnov(l,5).ngClassDirty,t.ɵnov(l,5).ngClassValid,t.ɵnov(l,5).ngClassInvalid,t.ɵnov(l,5).ngClassPending)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"span",[["class","mr-2"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,4,"button",[["class","btn btn-link text-danger ml-auto"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.remove(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,l.parent.context.$implicit.existingKey),n(l,5,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"remove")),""))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(7,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(10,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,!l.context.$implicit.existingKey),n(l,10,0,l.context.$implicit.existingKey)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"key",l.context.index+1,"")),n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"yubikeyX",l.context.index+1)))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["disableBtn",1]],null,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.disable()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.disablePromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,105,"form",[["autocomplete","off"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,78,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(9,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,17,"app-callout",[["type","warning"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(12,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(14,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(18,0,null,0,9,"ul",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"img",[["alt",""],["class","float-right"],["src","images/3.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(33,null,["",":"])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,17,"ol",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(60,278528,null,0,v.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"strong",[["class","d-block mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,12,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,5,"input",[["class","form-check-input"],["id","nfc"],["name","Nfc"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,70).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,70).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.nfc=e)&&u);return u},null,null)),t.ɵdid(70,16384,null,0,p.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.CheckboxControlValueAccessor]),t.ɵdid(72,671744,null,0,p.NgModel,[[2,p.ControlContainer],[8,null],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(74,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"label",[["class","form-check-label"],["for","nfc"]],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(82,null,["",""])),t.ɵppd(83,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(91,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(94,null,["",""])),t.ɵppd(95,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(99,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(102,null,["",""])),t.ɵppd(103,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled);n(l,12,0,"warning"),n(l,60,0,e.keys);n(l,72,0,"Nfc",e.nfc),n(l,99,0,e.enabled)},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorYubikeyWarning"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportUsb"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportMobile"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent,0),"twoFactorYubikeyAdd"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"twoFactorYubikeyPlugIn"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorYubikeySelectKey"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorYubikeyTouchButton"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorYubikeySaveForm"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"nfcSupport"))),n(l,69,0,t.ɵnov(l,74).ngClassUntouched,t.ɵnov(l,74).ngClassTouched,t.ɵnov(l,74).ngClassPristine,t.ɵnov(l,74).ngClassDirty,t.ɵnov(l,74).ngClassValid,t.ɵnov(l,74).ngClassInvalid,t.ɵnov(l,74).ngClassPending),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfc"))),n(l,82,0,t.ɵunv(l,82,0,n(l,83,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfcDesc"))),n(l,88,0,t.ɵnov(l,0).loading),n(l,90,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,94,0,t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"save"))),n(l,102,0,t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"close")))})}function N(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["YubiKey"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(28,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),""))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-yubikey",[],null,null,null,N,w)),t.ɵdid(1,49152,null,0,y.TwoFactorYubiKeyComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorYubiKeyComponent=w,l.View_TwoFactorYubiKeyComponent_0=N,l.View_TwoFactorYubiKeyComponent_Host_0=E;var T=t.ɵccf("app-two-factor-yubikey",y.TwoFactorYubiKeyComponent,E,{},{onUpdated:"onUpdated"},[]);l.TwoFactorYubiKeyComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(537),v=e(5),h=e(6),g=e(13),m=e(21),y=e(20),C=e(62),b=e(55),w=e(23),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,74,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,71,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,68,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,30,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,7,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,[""," ","\n "])),t.ɵppd(29,1),t.ɵppd(30,1),(n()(),t.ɵeld(31,0,null,null,2,"a",[["href","https://help.bitwarden.com/article/update-encryption-key/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(37,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(38,0,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(47,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(52,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(53,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(54,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(70,null,["",""])),t.ɵppd(71,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,37,0,"warning");n(l,47,0,"");n(l,50,0,"MasterPasswordHash",e.masterPassword);n(l,53,0,"");n(l,54,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"updateEncryptionKey"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"updateEncryptionKeyShortDesc")),t.ɵunv(l,28,1,n(l,30,0,t.ɵnov(l,0),"updateEncryptionKeyDesc"))),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"learnMore"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"updateEncryptionKeyWarning"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"masterPass"))),n(l,45,0,t.ɵnov(l,47).required?"":null,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,59,0,t.ɵnov(l,5).loading),n(l,61,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"loading")),"")),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"updateEncryptionKey"))),n(l,70,0,t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l,0),"close")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-update-key",[],null,null,null,_,S)),t.ɵdid(1,49152,null,0,f.UpdateKeyComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService,C.SyncService,b.FolderService,w.CipherService],null,null)],null,null)}l.RenderType_UpdateKeyComponent=S,l.View_UpdateKeyComponent_0=_,l.View_UpdateKeyComponent_Host_0=R;var I=t.ɵccf("app-update-key",f.UpdateKeyComponent,R,{},{},[]);l.UpdateKeyComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(910),o=e(113),r=e(13),i=e(10),a=e(524),s=e(432),d=e(110),c=e(8),p=e(70),f=e(55),v=e(434),h=e(62),g=e(61),m=e(23),y=e(90),C=e(6),b=e(3),w=e(9),S=e(219),_=e(67),R=e(21),I=e(43),k=e(41),A=e(125),O=e(433),N=e(220),E=t.ɵcrt({encapsulation:2,styles:[],data:{}});function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"toaster-container",[],null,null,null,u.View_ToasterContainerComponent_0,u.RenderType_ToasterContainerComponent)),t.ɵdid(1,245760,null,0,o.ToasterContainerComponent,[r.ToasterService,t.ChangeDetectorRef,t.NgZone],{toasterconfig:[0,"toasterconfig"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(3,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(4,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,1,0,l.component.toasterConfig),n(l,4,0)},null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-root",[],null,null,null,T,E)),t.ɵdid(1,245760,null,0,a.AppComponent,[s.Angulartics2GoogleAnalytics,d.BroadcasterService,c.UserService,p.TokenService,f.FolderService,v.SettingsService,h.SyncService,g.PasswordGenerationService,m.CipherService,y.AuthService,i.Router,C.Angulartics2,r.ToasterService,b.I18nService,w.PlatformUtilsService,t.NgZone,S.LockService,_.StorageService,R.CryptoService,I.CollectionService,k.DomSanitizer,A.SearchService,O.NotificationsService,N.RouterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AppComponent=E,l.View_AppComponent_0=T,l.View_AppComponent_Host_0=P;var V=t.ɵccf("app-root",a.AppComponent,P,{},{},[]);l.AppComponentNgFactory=V},,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=0?this.browserCache=r.DeviceType.OperaBrowser:-1!==navigator.userAgent.indexOf(" Edge/")?this.browserCache=r.DeviceType.EdgeBrowser:-1!==navigator.userAgent.indexOf(" Vivaldi/")?this.browserCache=r.DeviceType.VivaldiBrowser:-1!==navigator.userAgent.indexOf(" Safari/")&&-1===navigator.userAgent.indexOf("Chrome")?this.browserCache=r.DeviceType.SafariBrowser:window.chrome&&-1!==navigator.userAgent.indexOf(" Chrome/")?this.browserCache=r.DeviceType.ChromeBrowser:-1!==navigator.userAgent.indexOf(" Trident/")?this.browserCache=r.DeviceType.IEBrowser:this.browserCache=r.DeviceType.UnknownBrowser,this.browserCache)},n.prototype.getDeviceString=function(){return r.DeviceType[this.getDevice()].toLowerCase().replace("browser","")},n.prototype.isFirefox=function(){return this.getDevice()===r.DeviceType.FirefoxBrowser},n.prototype.isChrome=function(){return this.getDevice()===r.DeviceType.ChromeBrowser},n.prototype.isEdge=function(){return this.getDevice()===r.DeviceType.EdgeBrowser},n.prototype.isOpera=function(){return this.getDevice()===r.DeviceType.OperaBrowser},n.prototype.isVivaldi=function(){return this.getDevice()===r.DeviceType.VivaldiBrowser},n.prototype.isSafari=function(){return this.getDevice()===r.DeviceType.SafariBrowser},n.prototype.isIE=function(){return this.getDevice()===r.DeviceType.IEBrowser},n.prototype.isMacAppStore=function(){return!1},n.prototype.analyticsId=function(){return"UA-81915606-3"},n.prototype.isViewOpen=function(){return!1},n.prototype.lockTimeout=function(){return null},n.prototype.launchUri=function(n,l){var e=document.createElement("a");e.href=n,e.target="_blank",e.rel="noreferrer noopener",e.classList.add("d-none"),document.body.appendChild(e),e.click(),document.body.removeChild(e)},n.prototype.saveFile=function(n,l,e,t){var u=null,o=null,r=t.toLowerCase(),i=!0;if(r.endsWith(".pdf")?(o="application/pdf",i=!1):r.endsWith(".xlsx")?o="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":r.endsWith(".docx")?o="application/vnd.openxmlformats-officedocument.wordprocessingml.document":r.endsWith(".pptx")?o="application/vnd.openxmlformats-officedocument.presentationml.presentation":r.endsWith(".csv")?o="text/csv":r.endsWith(".png")?o="image/png":r.endsWith(".jpg")||r.endsWith(".jpeg")?o="image/jpeg":r.endsWith(".gif")&&(o="image/gif"),null!=o&&null==(e=e||{}).type&&(e.type=o),u=null==e||this.isIE()?new Blob([l]):new Blob([l],e),navigator.msSaveOrOpenBlob)navigator.msSaveBlob(u,t);else{var a=n.document.createElement("a");i?a.download=t:a.target="_blank",a.href=n.URL.createObjectURL(u),a.style.position="fixed",n.document.body.appendChild(a),a.click(),n.document.body.removeChild(a)}},n.prototype.getApplicationVersion=function(){return"2.8.0"},n.prototype.supportsU2f=function(n){return null!=n&&null!=n.u2f||(this.isChrome()||this.isOpera()||this.isVivaldi())&&!i.Utils.isMobileBrowser},n.prototype.supportsDuo=function(){return!0},n.prototype.showToast=function(n,l,e,t){this.messagingService.send("showToast",{text:e,title:l,type:n,options:t})},n.prototype.showDialog=function(n,l,e,o,r){return t(this,void 0,void 0,function(){var t,i,s,d,c,p;return u(this,function(u){switch(u.label){case 0:if(t=[null==e?this.i18nService.t("ok"):e],null!=o&&t.unshift(o),i=document.createElement("div"),null!=r){switch((s=document.createElement("i")).classList.add("swal-custom-icon"),r){case"success":s.classList.add("fa","fa-check","text-success");break;case"warning":s.classList.add("fa","fa-warning","text-warning");break;case"error":s.classList.add("fa","fa-bolt","text-danger");break;case"info":s.classList.add("fa","fa-info-circle","text-info")}s.classList.contains("fa")&&i.appendChild(s)}return null!=l&&((d=document.createElement("div")).classList.add("swal-title"),d.appendChild(document.createTextNode(l)),i.appendChild(d)),null!=n&&((c=document.createElement("div")).classList.add("swal-text"),c.appendChild(document.createTextNode(n)),i.appendChild(c)),t.length>1?[4,a({content:{element:i},buttons:t})]:[3,2];case 1:return p=u.sent(),[3,4];case 2:return[4,a({content:{element:i},button:t[0]})];case 3:p=u.sent(),u.label=4;case 4:return[2,p]}})})},n.prototype.eventTrack=function(n,l,e){this.messagingService.send("analyticsEventTrack",{action:n,label:l,options:e})},n.prototype.isDev=function(){return!1},n.prototype.isSelfHost=function(){return"true"===(!1).toString()},n.prototype.copyToClipboard=function(n,l){var e=window,t=window.document;if(l&&(l.window||l.win)?t=(e=l.window||l.win).document:l&&l.doc&&(t=l.doc),e.clipboardData&&e.clipboardData.setData)e.clipboardData.setData("Text",n);else if(t.queryCommandSupported&&t.queryCommandSupported("copy")){var u=t.createElement("textarea");u.textContent=n,u.style.position="fixed";var o=t.body;this.isFirefox()&&t.body.classList.contains("modal-open")&&(o=t.body.querySelector(".modal")),o.appendChild(u),u.select();try{t.execCommand("copy")}catch(n){console.warn("Copy to clipboard failed.",n)}finally{o.removeChild(u)}}},n}();l.WebPlatformUtilsService=s},function(n,l,e){"use strict";var t,u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n=n.substring(0,l)),0!==n.indexOf("!/")&&0!==n.indexOf("#/")||(n=n.substring(1));var e=[];return n.split("/").forEach(function(n){n.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)?e.push("__guid__"):e.push(n)}),encodeURIComponent(e.join("/"))},n}();l.Analytics=s},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&n.data.forEach(function(n){var t=new a.Collection(new d.CollectionData(n));l.push(t.decrypt().then(function(n){e.push(n)}))}),Promise.all(l)})),f.push(this.apiService.getCiphersOrganization(n).then(function(n){var l=[];return null!=n&&null!=n.data&&n.data.length>0&&n.data.forEach(function(n){var e=new i.Cipher(new s.CipherData(n));l.push(e.decrypt().then(function(n){t.push(n)}))}),Promise.all(l)})),[4,Promise.all(f)];case 1:return u.sent(),"csv"===l?(v=new Map,e.forEach(function(n){v.set(n.id,n)}),h=[],t.forEach(function(n){if(n.type===r.CipherType.Login||n.type===r.CipherType.SecureNote){var l={collections:[]};null!=n.collectionIds&&(l.collections=n.collectionIds.filter(function(n){return v.has(n)}).map(function(n){return v.get(n).name})),m.buildCommonCipher(l,n),h.push(l)}}),[2,o.unparse(h)]):(g={collections:[],items:[]},e.forEach(function(n){var l=new p.CollectionWithId;l.build(n),g.collections.push(l)}),t.forEach(function(n){var l=new c.CipherWithIds;l.build(n),g.items.push(l)}),[2,JSON.stringify(g,null," ")])}})})},n.prototype.getFileName=function(n,l){void 0===n&&(n=null),void 0===l&&(l="csv");var e=new Date,t=e.getFullYear()+""+this.padNumber(e.getMonth()+1,2)+this.padNumber(e.getDate(),2)+this.padNumber(e.getHours(),2)+this.padNumber(e.getMinutes(),2)+this.padNumber(e.getSeconds(),2);return"bitwarden"+(n?"_"+n:"")+"_export_"+t+"."+l},n.prototype.padNumber=function(n,l,e){void 0===e&&(e="0");var t=n.toString();return t.length>=l?t:new Array(l-t.length+1).join(e)+t},n.prototype.buildCommonCipher=function(n,l){switch(n.type=null,n.name=l.name,n.notes=l.notes,n.fields=null,n.login_uri=null,n.login_username=null,n.login_password=null,n.login_totp=null,l.fields&&l.fields.forEach(function(l){n.fields?n.fields+="\n":n.fields="",n.fields+=(l.name||"")+": "+l.value}),l.type){case r.CipherType.Login:n.type="login",n.login_username=l.login.username,n.login_password=l.login.password,n.login_totp=l.login.totp,l.login.uris&&(n.login_uri=[],l.login.uris.forEach(function(l){n.login_uri.push(l.uri)}));break;case r.CipherType.SecureNote:n.type="note";break;default:return}return n},n}();l.ExportService=v},,function(n,l){},,function(n,l){},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(39),u=e(126),o=e(978),r=e(979),i=e(980),a=e(981),s=e(983),d=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId=null,l.folderId=null,l.type=t.CipherType.Login,l.name="Item name",l.notes="Some notes about this item.",l.favorite=!1,l.fields=[],l.login=null,l.secureNote=null,l.card=null,l.identity=null,l},n.toView=function(n,l){switch(void 0===l&&(l=new u.CipherView),l.type=n.type,l.folderId=n.folderId,null==l.organizationId&&(l.organizationId=n.organizationId),l.name=n.name,l.notes=n.notes,l.favorite=n.favorite,null!=n.fields&&(l.fields=n.fields.map(function(n){return r.Field.toView(n)})),n.type){case t.CipherType.Login:l.login=a.Login.toView(n.login);break;case t.CipherType.SecureNote:l.secureNote=s.SecureNote.toView(n.secureNote);break;case t.CipherType.Card:l.card=o.Card.toView(n.card);break;case t.CipherType.Identity:l.identity=i.Identity.toView(n.identity)}return l},n.prototype.build=function(n){switch(this.organizationId=n.organizationId,this.folderId=n.folderId,this.type=n.type,this.name=n.name,this.notes=n.notes,this.favorite=n.favorite,null!=n.fields&&(this.fields=n.fields.map(function(n){return new r.Field(n)})),n.type){case t.CipherType.Login:this.login=new a.Login(n.login);break;case t.CipherType.SecureNote:this.secureNote=new s.SecureNote(n.secureNote);break;case t.CipherType.Card:this.card=new o.Card(n.card);break;case t.CipherType.Identity:this.identity=new i.Identity(n.identity)}},n}();l.Cipher=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(105),u=function(){function n(n){null!=n&&(this.cardholderName=n.cardholderName,this.brand=n.brand,this.number=n.number,this.expMonth=n.expMonth,this.expYear=n.expYear,this.code=n.code)}return n.template=function(){var l=new n;return l.cardholderName="John Doe",l.brand="visa",l.number="4242424242424242",l.expMonth="04",l.expYear="2023",l.code="123",l},n.toView=function(n,l){return void 0===l&&(l=new t.CardView),l.cardholderName=n.cardholderName,l.brand=n.brand,l.number=n.number,l.expMonth=n.expMonth,l.expYear=n.expYear,l.code=n.code,l},n}();l.Card=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(183),u=e(184),o=function(){function n(n){null!=n&&(this.name=n.name,this.value=n.value,this.type=n.type)}return n.template=function(){var l=new n;return l.name="Field name",l.value="Some value",l.type=t.FieldType.Text,l},n.toView=function(n,l){return void 0===l&&(l=new u.FieldView),l.type=n.type,l.value=n.value,l.name=n.name,l},n}();l.Field=o},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(185),u=function(){function n(n){null!=n&&(this.title=n.title,this.firstName=n.firstName,this.middleName=n.middleName,this.lastName=n.lastName,this.address1=n.address1,this.address2=n.address2,this.address3=n.address3,this.city=n.city,this.state=n.state,this.postalCode=n.postalCode,this.country=n.country,this.company=n.company,this.email=n.email,this.phone=n.phone,this.ssn=n.ssn,this.username=n.username,this.passportNumber=n.passportNumber,this.licenseNumber=n.licenseNumber)}return n.template=function(){var l=new n;return l.title="Mr",l.firstName="John",l.middleName="William",l.lastName="Doe",l.address1="123 Any St",l.address2="Apt #123",l.address3=null,l.city="New York",l.state="NY",l.postalCode="10001",l.country="US",l.company="Acme Inc.",l.email="john@company.com",l.phone="5555551234",l.ssn="000-123-4567",l.username="jdoe",l.passportNumber="US-123456789",l.licenseNumber="D123-12-123-12333",l},n.toView=function(n,l){return void 0===l&&(l=new t.IdentityView),l.title=n.title,l.firstName=n.firstName,l.middleName=n.middleName,l.lastName=n.lastName,l.address1=n.address1,l.address2=n.address2,l.address3=n.address3,l.city=n.city,l.state=n.state,l.postalCode=n.postalCode,l.country=n.country,l.company=n.company,l.email=n.email,l.phone=n.phone,l.ssn=n.ssn,l.username=n.username,l.passportNumber=n.passportNumber,l.licenseNumber=n.licenseNumber,l},n}();l.Identity=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(982),u=e(158),o=function(){function n(n){null!=n&&(null!=n.uris&&(this.uris=n.uris.map(function(n){return new t.LoginUri(n)})),this.username=n.username,this.password=n.password,this.totp=n.totp)}return n.template=function(){var l=new n;return l.uris=[],l.username="jdoe",l.password="myp@ssword123",l.totp="JBSWY3DPEHPK3PXP",l},n.toView=function(n,l){return void 0===l&&(l=new u.LoginView),null!=n.uris&&(l.uris=n.uris.map(function(n){return t.LoginUri.toView(n)})),l.username=n.username,l.password=n.password,l.totp=n.totp,l},n}();l.Login=o},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(223),u=function(){function n(n){this.match=null,null!=n&&(this.uri=n.uri,this.match=n.match)}return n.template=function(){var l=new n;return l.uri="https://google.com",l.match=null,l},n.toView=function(n,l){return void 0===l&&(l=new t.LoginUriView),l.uri=n.uri,l.match=n.match,l},n}();l.LoginUri=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(111),u=e(93),o=function(){function n(n){null!=n&&(this.type=n.type)}return n.template=function(){var l=new n;return l.type=t.SecureNoteType.Generic,l},n.toView=function(n,l){return void 0===l&&(l=new u.SecureNoteView),l.type=n.type,l},n}();l.SecureNote=o},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(139),u=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId="00000000-0000-0000-0000-000000000000",l.name="Collection name",l},n.toView=function(n,l){return void 0===l&&(l=new t.CollectionView),l.name=n.name,null==l.organizationId&&(l.organizationId=n.organizationId),l},n.prototype.build=function(n){this.organizationId=n.organizationId,this.name=n.name},n}();l.Collection=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(138),u=function(){function n(){}return n.template=function(){var l=new n;return l.name="Folder name",l},n.toView=function(n,l){return void 0===l&&(l=new t.FolderView),l.name=n.name,l},n.prototype.build=function(n){this.name=n.name},n}();l.Folder=u},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(o=Math.floor(t.ciphers.length/2),r=t.ciphers.length-1,this.badData(t.ciphers[0])&&this.badData(t.ciphers[o])&&this.badData(t.ciphers[r]))?[2,new Error(this.i18nService.t("importFormatError"))]:[4,this.postImport(t,e)]:[3,3];case 2:return u.sent(),[2,null];case 3:return[2,new Error(this.i18nService.t("importFormatError"))]}})})},n.prototype.getImporter=function(n,l){void 0===l&&(l=!1);var e=this.getImporterInstance(n);return null==e?null:(e.organization=l,e)},n.prototype.getImporterInstance=function(n){if(null==n||""===n)return null;switch(n){case"bitwardencsv":return new v.BitwardenCsvImporter;case"bitwardenjson":return new h.BitwardenJsonImporter;case"lastpasscsv":case"passboltcsv":return new A.LastPassCsvImporter;case"keepassxcsv":return new I.KeePassXCsvImporter;case"aviracsv":return new f.AviraCsvImporter;case"blurcsv":return new g.BlurCsvImporter;case"safeincloudxml":return new G.SafeInCloudXmlImporter;case"padlockcsv":return new P.PadlockCsvImporter;case"keepass2xml":return new R.KeePass2XmlImporter;case"chromecsv":case"operacsv":case"vivaldicsv":return new m.ChromeCsvImporter;case"firefoxcsv":return new S.FirefoxCsvImporter;case"upmcsv":return new H.UpmCsvImporter;case"saferpasscsv":return new j.SaferPassCsvImporter;case"meldiumcsv":return new O.MeldiumCsvImporter;case"1password1pif":return new E.OnePassword1PifImporter;case"1passwordwincsv":return new T.OnePasswordWinCsvImporter;case"keepercsv":return new k.KeeperCsvImporter;case"passworddragonxml":return new F.PasswordDragonXmlImporter;case"enpasscsv":return new b.EnpassCsvImporter;case"enpassjson":return new w.EnpassJsonImporter;case"pwsafexml":return new L.PasswordSafeXmlImporter;case"dashlanejson":return new C.DashlaneJsonImporter;case"msecurecsv":return new N.MSecureCsvImporter;case"stickypasswordxml":return new B.StickyPasswordXmlImporter;case"truekeycsv":return new K.TrueKeyCsvImporter;case"clipperzhtml":return new y.ClipperzHtmlImporter;case"roboformcsv":return new z.RoboFormCsvImporter;case"ascendocsv":return new c.AscendoCsvImporter;case"passwordbossjson":return new U.PasswordBossJsonImporter;case"zohovaultcsv":return new $.ZohoVaultCsvImporter;case"splashidcsv":return new q.SplashIdCsvImporter;case"passkeepcsv":return new V.PassKeepCsvImporter;case"gnomejson":return new _.GnomeJsonImporter;case"passwordagentcsv":return new D.PasswordAgentCsvImporter;case"passpackcsv":return new M.PasspackCsvImporter;case"passmanjson":return new x.PassmanJsonImporter;case"avastcsv":return new p.AvastCsvImporter;default:return null}},n.prototype.postImport=function(n,l){return void 0===l&&(l=null),t(this,void 0,void 0,function(){var e,t,c,p,f;return u(this,function(u){switch(u.label){case 0:if(null!=l)return[3,10];e=new a.ImportCiphersRequest,p=0,u.label=1;case 1:return p2&&n.length%2==0)for(var u=0;u-1?t.login.password=l.getValueOrDefault(o):null==t.login.username&&l.usernameFieldNames.indexOf(i)>-1?t.login.username=l.getValueOrDefault(o):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(i)>-1?t.login.uris=l.makeUriArray(o):l.processKvp(t,r,o)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(u.BaseImporter);l.AscendoCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name),t.login.uris=l.makeUriArray(n.web),t.login.password=l.getValueOrDefault(n.password),t.login.username=l.getValueOrDefault(n.login),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.AvastCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name,l.getValueOrDefault(l.nameFromUrl(n.website),"--")),t.login.uris=l.makeUriArray(n.website),t.login.password=l.getValueOrDefault(n.password),l.isNullOrWhitespace(n.username)&&!l.isNullOrWhitespace(n.secondary_username)?t.login.username=n.secondary_username:(t.login.username=l.getValueOrDefault(n.username),t.notes=l.getValueOrDefault(n.secondary_username)),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.AviraCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(126),i=e(139),a=e(184),s=e(158),d=e(93),c=e(39),p=e(183),f=e(111),v=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){l.organization&&!l.isNullOrWhitespace(n.collections)?n.collections.split(",").forEach(function(n){for(var l=!0,t=e.collections.length,u=0;uv+2&&(h.value=u[o].substr(v+2)),t.fields.push(h)}}switch(null!=n.type?n.type.toLowerCase():null){case"note":t.type=c.CipherType.SecureNote,t.secureNote=new d.SecureNoteView,t.secureNote.type=f.SecureNoteType.Generic;break;default:t.type=c.CipherType.Login,t.login=new s.LoginView,t.login.totp=l.getValueOrDefault(n.login_totp||n.totp),t.login.username=l.getValueOrDefault(n.login_username||n.username),t.login.password=l.getValueOrDefault(n.login_password||n.password);var g=l.parseSingleRowCsv(n.login_uri||n.uri);t.login.uris=l.makeUriArray(g)}e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.BitwardenCsvImporter=v},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(634),i=e(635),a=e(636),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);if(null==t||null==t.items||0===t.items.length)return e.success=!1,e;var u=new Map;return this.organization&&null!=t.collections?t.collections.forEach(function(n){var l=i.CollectionWithId.toView(n);null!=l&&(l.id=null,l.organizationId=null,u.set(n.id,e.collections.length),e.collections.push(l))}):this.organization||null==t.folders||t.folders.forEach(function(n){var l=a.FolderWithId.toView(n);null!=l&&(l.id=null,u.set(n.id,e.folders.length),e.folders.push(l))}),t.items.forEach(function(n){var t=r.CipherWithIds.toView(n);t.id=null,t.folderId=null,t.organizationId=null,t.collectionIds=null,!l.organization&&null!=n.folderId&&u.has(n.folderId)?e.folderRelationships.push([e.ciphers.length,u.get(n.folderId)]):l.organization&&null!=n.collectionIds&&n.collectionIds.forEach(function(n){u.has(n)&&e.collectionRelationships.push([e.ciphers.length,u.get(n)])}),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e},l}(u.BaseImporter);l.BitwardenJsonImporter=s},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){"null"===n.label&&(n.label=null);var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.label,l.getValueOrDefault(l.nameFromUrl(n.domain),"--")),t.login.uris=l.makeUriArray(n.domain),t.login.password=l.getValueOrDefault(n.password),l.isNullOrWhitespace(n.email)&&!l.isNullOrWhitespace(n.username)?t.login.username=n.username:(t.login.username=l.getValueOrDefault(n.email),t.notes=l.getValueOrDefault(n.username)),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.BlurCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name,"--"),t.login.username=l.getValueOrDefault(n.username),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.url),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.ChromeCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;var u=t.querySelector("textarea");return null==u||this.isNullOrWhitespace(u.textContent)?(e.errorMessage="Missing textarea.",e.success=!1,e):(JSON.parse(u.textContent).forEach(function(n){var t=l.initLoginCipher();if(l.isNullOrWhitespace(n.label)||(t.name=n.label.split(" ")[0]),null==n.data||l.isNullOrWhitespace(n.data.notes)||(t.notes=n.data.notes.split("\\n").join("\n")),null!=n.currentVersion&&null!=n.currentVersion.fields)for(var u in n.currentVersion.fields)if(n.currentVersion.fields.hasOwnProperty(u)){var o=n.currentVersion.fields[u];switch(null!=o.actionType?o.actionType.toLowerCase():null){case"password":t.login.password=l.getValueOrDefault(o.value);break;case"email":case"username":case"user":case"name":t.login.username=l.getValueOrDefault(o.value);break;case"url":t.login.uris=l.makeUriArray(o.value);break;default:var r=null!=o.label?o.label.toLowerCase():null;null==t.login.password&&l.passwordFieldNames.indexOf(r)>-1?t.login.password=l.getValueOrDefault(o.value):null==t.login.username&&l.usernameFieldNames.indexOf(r)>-1?t.login.username=l.getValueOrDefault(o.value):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(r)>-1?t.login.uris=l.makeUriArray(o.value):l.processKvp(t,o.label,o.value)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.ClipperzHtmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(126),a=e(185),s=e(93),d=e(39),c=new Set(["ADDRESS","AUTHENTIFIANT","BANKSTATEMENT","IDCARD","IDENTITY","PAYMENTMEANS_CREDITCARD","PAYMENTMEAN_PAYPAL","EMAIL"]),p=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){this.result=new o.ImportResult;var l=JSON.parse(n);if(null==l||0===l.length)return this.result.success=!1,this.result;for(var e in null!=l.ADDRESS&&this.processAddress(l.ADDRESS),null!=l.AUTHENTIFIANT&&this.processAuth(l.AUTHENTIFIANT),null!=l.BANKSTATEMENT&&this.processNote(l.BANKSTATEMENT,"BankAccountName"),null!=l.IDCARD&&this.processNote(l.IDCARD,"Fullname"),null!=l.PAYMENTMEANS_CREDITCARD&&this.processCard(l.PAYMENTMEANS_CREDITCARD),null!=l.IDENTITY&&this.processIdentity(l.IDENTITY),l)l.hasOwnProperty(e)&&!c.has(e)&&this.processNote(l[e],null,"Generic Note");return this.result.success=!0,this.result},l.prototype.processAuth=function(n){var l=this;n.forEach(function(n){var e=l.initLoginCipher();e.name=l.getValueOrDefault(n.title),e.login.username=l.getValueOrDefault(n.login,l.getValueOrDefault(n.secondaryLogin)),l.isNullOrWhitespace(e.login.username)?e.login.username=l.getValueOrDefault(n.email):l.isNullOrWhitespace(n.email)||(e.notes="Email: "+n.email+"\n"),e.login.password=l.getValueOrDefault(n.password),e.login.uris=l.makeUriArray(n.domain),e.notes+=l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(e),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processIdentity=function(n){var l=this;n.forEach(function(n){var e=new i.CipherView;e.identity=new a.IdentityView,e.type=d.CipherType.Identity,e.name=l.getValueOrDefault(n.fullName,"");var t=e.name.split(" ");t.length>0&&(e.identity.firstName=l.getValueOrDefault(t[0])),2===t.length?e.identity.lastName=l.getValueOrDefault(t[1]):3===t.length&&(e.identity.middleName=l.getValueOrDefault(t[1]),e.identity.lastName=l.getValueOrDefault(t[2])),e.identity.username=l.getValueOrDefault(n.pseudo),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processAddress=function(n){var l=this;n.forEach(function(n){var e=new i.CipherView;e.identity=new a.IdentityView,e.type=d.CipherType.Identity,e.name=l.getValueOrDefault(n.addressName),e.identity.address1=l.getValueOrDefault(n.addressFull),e.identity.city=l.getValueOrDefault(n.city),e.identity.state=l.getValueOrDefault(n.state),e.identity.postalCode=l.getValueOrDefault(n.zipcode),e.identity.country=l.getValueOrDefault(n.country),null!=e.identity.country&&(e.identity.country=e.identity.country.toUpperCase()),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processCard=function(n){var l=this;n.forEach(function(n){var e=new i.CipherView;e.card=new r.CardView,e.type=d.CipherType.Card,e.name=l.getValueOrDefault(n.bank),e.card.number=l.getValueOrDefault(n.cardNumber),e.card.brand=l.getCardBrand(e.card.number),e.card.cardholderName=l.getValueOrDefault(n.owner),l.isNullOrWhitespace(e.card.brand)||(l.isNullOrWhitespace(e.name)?e.name=e.card.brand:e.name+=" - "+e.card.brand),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processNote=function(n,l,e){var t=this;void 0===e&&(e=null),n.forEach(function(n){var u=new i.CipherView;for(var o in u.secureNote=new s.SecureNoteView,u.type=d.CipherType.SecureNote,u.name=null!=e?e:t.getValueOrDefault(n[l]),n)n.hasOwnProperty(o)&&o!==l&&t.processKvp(u,o,n[o].toString());t.cleanupCipher(u),t.result.ciphers.push(u)})},l}(u.BaseImporter);l.DashlaneJsonImporter=p},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(39),i=e(111),a=e(105),s=e(93),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);if(null==t)return e.success=!1,e;var u=!0;return t.forEach(function(n){if(n.length<2||u&&("Title"===n[0]||"title"===n[0]))u=!1;else{var t=l.initLoginCipher();if(t.notes=l.getValueOrDefault(n[n.length-1]),t.name=l.getValueOrDefault(n[0],"--"),2!==n.length&&(l.containsField(n,"username")||l.containsField(n,"password")||l.containsField(n,"email")||l.containsField(n,"url"))||(t.type=r.CipherType.SecureNote,t.secureNote=new s.SecureNoteView,t.secureNote.type=i.SecureNoteType.Generic),l.containsField(n,"cardholder")&&l.containsField(n,"number")&&l.containsField(n,"expiry date")&&(t.type=r.CipherType.Card,t.card=new a.CardView),n.length>2&&n.length%2==0)for(var o=0;o0},l}(u.BaseImporter);l.EnpassCsvImporter=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(39),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t||null==t.items||0===t.items.length?(e.success=!1,e):(t.items.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.title),t.favorite=n.favorite>0,null!=n.template_type&&null!=n.fields&&n.fields.length>0&&(0===n.template_type.indexOf("login.")||0===n.template_type.indexOf("password.")?l.processLogin(t,n.fields):0===n.template_type.indexOf("creditcard.")?l.processCard(t,n.fields):n.template_type.indexOf("identity.")<0&&null!=n.fields.find(function(n){return"password"===n.type&&!l.isNullOrWhitespace(n.value)})?l.processLogin(t,n.fields):l.processNote(t,n.fields)),t.notes+="\n"+l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l.prototype.processLogin=function(n,l){var e=this,t=[];l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||("username"!==l.type&&"email"!==l.type||!e.isNullOrWhitespace(n.login.username)?"password"===l.type&&e.isNullOrWhitespace(n.login.password)?n.login.password=l.value:"totp"===l.type&&e.isNullOrWhitespace(n.login.totp)?n.login.totp=l.value:"url"===l.type?t.push(l.value):e.processKvp(n,l.label,l.value):n.login.username=l.value)}),n.login.uris=this.makeUriArray(t)},l.prototype.processCard=function(n,l){var e=this;n.card=new r.CardView,n.type=i.CipherType.Card,l.forEach(function(l){if(!e.isNullOrWhitespace(l.value)&&"section"!==l.type&&"ccType"!==l.type)if("ccName"===l.type&&e.isNullOrWhitespace(n.card.cardholderName))n.card.cardholderName=l.value;else if("ccNumber"===l.type&&e.isNullOrWhitespace(n.card.number))n.card.number=l.value,n.card.brand=e.getCardBrand(n.card.number);else if("ccCvc"===l.type&&e.isNullOrWhitespace(n.card.code))n.card.code=l.value;else if("ccExpiry"===l.type&&e.isNullOrWhitespace(n.card.expYear)){var t=l.value.split("/");if(2===t.length){var u=null,o=null;1!==t[0].length&&2!==t[0].length||2===(u=t[0]).length&&"0"===u[0]&&(u=u.substr(1,1)),2!==t[1].length&&4!==t[1].length||(o=2===u.length?"20"+t[1]:t[1]),null!=u&&null!=o&&(n.card.expMonth=u,n.card.expYear=o)}else e.processKvp(n,l.label,l.value)}else e.processKvp(n,l.label,l.value)})},l.prototype.processNote=function(n,l){var e=this;l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||e.processKvp(n,l.label,l.value)})},l}(u.BaseImporter);l.EnpassJsonImporter=a},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(l.nameFromUrl(n.hostname),"--"),t.login.username=l.getValueOrDefault(n.username),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.hostname),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.FirefoxCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);if(null==t||0===Object.keys(t).length)return e.success=!1,e;var u=function(n){if(!t.hasOwnProperty(n)||r.isNullOrWhitespace(n)||0===t[n].length)return"continue";t[n].forEach(function(t){if(!l.isNullOrWhitespace(t.display_name)&&0===t.display_name.indexOf("http")){l.processFolder(e,n);var u=l.initLoginCipher();if(u.name=t.display_name.replace("http://","").replace("https://",""),u.name.length>30&&(u.name=u.name.substring(0,30)),u.login.password=l.getValueOrDefault(t.secret),u.login.uris=l.makeUriArray(t.display_name),null!=t.attributes)for(var o in u.login.username=null!=t.attributes?l.getValueOrDefault(t.attributes.username_value):null,t.attributes)t.attributes.hasOwnProperty(o)&&"username_value"!==o&&"xdg:schema"!==o&&l.processKvp(u,o,t.attributes[o]);l.convertToNoteIfNeeded(u),l.cleanupCipher(u),e.ciphers.push(u)}})},r=this;for(var i in t)u(i);return this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.GnomeJsonImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(138),i=function(n){function l(){var l=null!==n&&n.apply(this,arguments)||this;return l.result=new o.ImportResult,l}return t(l,n),l.prototype.parse=function(n){var l=this.parseXml(n);if(null==l)return this.result.success=!1,this.result;var e=l.querySelector("KeePassFile > Root > Group");return null==e?(this.result.errorMessage="Missing `KeePassFile > Root > Group` node.",this.result.success=!1,this.result):(this.traverse(e,!0,""),this.organization&&this.moveFoldersToCollections(this.result),this.result.success=!0,this.result)},l.prototype.traverse=function(n,l,e){var t=this,u=this.result.folders.length,o=e;if(!l){""!==o&&(o+="/");var i=this.querySelectorDirectChild(n,"Name");o+=null==i?"-":i.textContent;var a=new r.FolderView;a.name=o,this.result.folders.push(a)}this.querySelectorAllDirectChild(n,"Entry").forEach(function(n){var e=t.result.ciphers.length,o=t.initLoginCipher();t.querySelectorAllDirectChild(n,"String").forEach(function(n){var l=t.querySelectorDirectChild(n,"Value"),e=null!=l?l.textContent:null;if(!t.isNullOrWhitespace(e)){var u=t.querySelectorDirectChild(n,"Key"),r=null!=u?u.textContent:null;"URL"===r?o.login.uris=t.makeUriArray(e):"UserName"===r?o.login.username=e:"Password"===r?o.login.password=e:"Title"===r?o.name=e:"Notes"===r?o.notes+=e+"\n":t.processKvp(o,r,e)}}),t.cleanupCipher(o),t.result.ciphers.push(o),l||t.result.folderRelationships.push([e,u])}),this.querySelectorAllDirectChild(n,"Group").forEach(function(n){t.traverse(n,!1,o)})},l}(u.BaseImporter);l.KeePass2XmlImporter=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!l.isNullOrWhitespace(n.Title)){n.Group=!l.isNullOrWhitespace(n.Group)&&n.Group.startsWith("Root/")?n.Group.replace("Root/",""):n.Group;var t=l.isNullOrWhitespace(n.Group)?null:n.Group;l.processFolder(e,t);var u=l.initLoginCipher();u.notes=l.getValueOrDefault(n.Notes),u.name=l.getValueOrDefault(n.Title,"--"),u.login.username=l.getValueOrDefault(n.Username),u.login.password=l.getValueOrDefault(n.Password),u.login.uris=l.makeUriArray(n.URL),l.cleanupCipher(u),e.ciphers.push(u)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(u.BaseImporter);l.KeePassXCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<6)){l.processFolder(e,n[0]);var t=l.initLoginCipher();if(t.notes=l.getValueOrDefault(n[5])+"\n",t.name=l.getValueOrDefault(n[1],"--"),t.login.username=l.getValueOrDefault(n[2]),t.login.password=l.getValueOrDefault(n[3]),t.login.uris=l.makeUriArray(n[4]),n.length>7)for(var u=7;u-1){var e=n.ccexp.split("-");e.length>1&&(l.expYear=e[0],l.expMonth=e[1],2===l.expMonth.length&&"0"===l.expMonth[0]&&(l.expMonth=l.expMonth[1]))}return l},l.prototype.parseIdentity=function(n){var l=new s.IdentityView;return l.title=this.getValueOrDefault(n.title),l.firstName=this.getValueOrDefault(n.firstname),l.middleName=this.getValueOrDefault(n.middlename),l.lastName=this.getValueOrDefault(n.lastname),l.username=this.getValueOrDefault(n.username),l.company=this.getValueOrDefault(n.company),l.ssn=this.getValueOrDefault(n.ssn),l.address1=this.getValueOrDefault(n.address1),l.address2=this.getValueOrDefault(n.address2),l.address3=this.getValueOrDefault(n.address3),l.city=this.getValueOrDefault(n.city),l.state=this.getValueOrDefault(n.state),l.postalCode=this.getValueOrDefault(n.zip),l.country=this.getValueOrDefault(n.country),l.email=this.getValueOrDefault(n.email),l.phone=this.getValueOrDefault(n.phone),this.isNullOrWhitespace(l.title)||(l.title=l.title.charAt(0).toUpperCase()+l.title.slice(1)),l},l.prototype.parseSecureNote=function(n,l){var e=this.splitNewLine(n.extra),t=!1;if(e.length){var u=e[0].split(":");if(u.length>1&&"NoteType"===u[0]&&("Credit Card"===u[1]||"Address"===u[1])){if("Credit Card"===u[1]){var o=this.parseSecureNoteMapping(e,{Number:"number","Name on Card":"cardholderName","Security Code":"code"});l.type=p.CipherType.Card,l.card=o[0],l.notes=o[1]}else if("Address"===u[1]){o=this.parseSecureNoteMapping(e,{Title:"title","First Name":"firstName","Last Name":"lastName","Middle Name":"middleName",Company:"company","Address 1":"address1","Address 2":"address2","Address 3":"address3","City / Town":"city",State:"state","Zip / Postal Code":"postalCode",Country:"country","Email Address":"email",Username:"username"});l.type=p.CipherType.Identity,l.identity=o[0],l.notes=o[1]}t=!0}}t||(l.secureNote=new c.SecureNoteView,l.secureNote.type=f.SecureNoteType.Generic,l.notes=this.getValueOrDefault(n.extra))},l.prototype.parseSecureNoteMapping=function(n,l){var e=this,t=null,u={};return n.forEach(function(n){var o=n.split(":");o.length<1||e.isNullOrWhitespace(o[0])||e.isNullOrWhitespace(o[1])||"NoteType"===o[0]||("Notes"===o[0]?e.isNullOrWhitespace(t)?t=o[1]:t+="\n"+o[1]:l.hasOwnProperty(o[0])?u[l[o[0]]]=o[1]:(e.isNullOrWhitespace(t)?t="":t+="\n",t+=o[0]+": "+o[1]))}),[u,t]},l}(u.BaseImporter);l.LastPassCsvImporter=v},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.DisplayName,"--"),t.notes=l.getValueOrDefault(n.Notes),t.login.username=l.getValueOrDefault(n.UserName),t.login.password=l.getValueOrDefault(n.Password),t.login.uris=l.makeUriArray(n.Url),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.MeldiumCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(39),i=e(111),a=e(93),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<3)){var t="Unassigned"!==l.getValueOrDefault(n[0],"Unassigned")?n[0]:null;l.processFolder(e,t);var u=l.initLoginCipher();if(u.name=l.getValueOrDefault(n[2],"--"),"Web Logins"===n[1])u.login.uris=l.makeUriArray(n[4]),u.login.username=l.getValueOrDefault(n[5]),u.login.password=l.getValueOrDefault(n[6]),u.notes=l.isNullOrWhitespace(n[3])?null:n[3].split("\\n").join("\n");else if(n.length>3){u.type=r.CipherType.SecureNote,u.secureNote=new a.SecureNoteView,u.secureNote.type=i.SecureNoteType.Generic;for(var o=3;o0?t[0].trim():null;l.processFolder(e,o)}var i=l.initLoginCipher();i.name=l.getValueOrDefault(n[0],"--");for(var a=2;a-1?i.login.username=n[a]:l.passwordFieldNames.indexOf(s)>-1?i.login.password=n[a]:l.uriFieldNames.indexOf(s)>-1?i.login.uris=l.makeUriArray(n[a]):l.processKvp(i,u[a],n[a]))}l.cleanupCipher(i),e.ciphers.push(i)}}else u=n.map(function(n){return n})}),e.success=!0,e},l}(u.BaseImporter);l.PadlockCsvImporter=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){l.processFolder(e,l.getValue("category",n));var t=l.initLoginCipher();t.notes=l.getValue("description",n),t.name=l.getValueOrDefault(l.getValue("title",n),"--"),t.login.username=l.getValue("username",n),t.login.password=l.getValue("password",n),t.login.uris=l.makeUriArray(l.getValue("site",n)),l.processKvp(t,"Password 2",l.getValue("password2",n)),l.cleanupCipher(t),e.ciphers.push(t)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l.prototype.getValue=function(n,l){return this.getValueOrDefault(l[n],this.getValueOrDefault(l[" "+n]))},l}(u.BaseImporter);l.PassKeepCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t||0===t.length?(e.success=!1,e):(t.forEach(function(n){if(null!=n.tags&&n.tags.length>0){var t=n.tags[0].text;l.processFolder(e,t)}var u=l.initLoginCipher();u.name=n.label,u.login.username=l.getValueOrDefault(n.username),l.isNullOrWhitespace(u.login.username)?u.login.username=l.getValueOrDefault(n.email):l.isNullOrWhitespace(n.email)||(u.notes="Email: "+n.email+"\n"),u.login.password=l.getValueOrDefault(n.password),u.login.uris=l.makeUriArray(n.url),u.notes+=l.getValueOrDefault(n.description,""),null!=n.otp&&(u.login.totp=l.getValueOrDefault(n.otp.secret)),null!=n.custom_fields&&n.custom_fields.forEach(function(n){switch(n.field_type){case"text":case"password":l.processKvp(u,n.label,n.value)}}),l.convertToNoteIfNeeded(u),l.cleanupCipher(u),e.ciphers.push(u)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(u.BaseImporter);l.PassmanJsonImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(139),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.isNullOrWhitespace(n.Tags)?null:JSON.parse(n.Tags),u=null!=t&&null!=t.tags&&t.tags.length>0?t.tags.map(function(n){try{var e=JSON.parse(n);return l.getValueOrDefault(e.tag)}catch(n){}return null}).filter(function(n){return!l.isNullOrWhitespace(n)}):null;l.organization&&null!=u&&u.length>0?u.forEach(function(n){for(var l=!0,t=e.collections.length,u=0;u0&&l.processFolder(e,u[0]);var o=l.initLoginCipher();o.notes=l.getValueOrDefault(n.Notes,""),o.notes+="\n\n"+l.getValueOrDefault(n["Shared Notes"],"")+"\n",o.name=l.getValueOrDefault(n["Entry Name"],"--"),o.login.username=l.getValueOrDefault(n["User ID"]),o.login.password=l.getValueOrDefault(n.Password),o.login.uris=l.makeUriArray(n.URL),null!=n.__parsed_extra&&n.__parsed_extra.length>0&&n.__parsed_extra.forEach(function(n){l.isNullOrWhitespace(n)||(o.notes+="\n"+n)});var i=l.isNullOrWhitespace(n["Extra Fields"])?null:JSON.parse(n["Extra Fields"]),a=null!=i&&null!=i.extraFields&&i.extraFields.length>0?i.extraFields.map(function(n){try{return JSON.parse(n)}catch(n){}return null}):null;null!=a&&a.forEach(function(n){null!=n&&l.processKvp(o,n.name,n.data)}),l.cleanupCipher(o),e.ciphers.push(o)}),e.success=!0,e)},l}(u.BaseImporter);l.PasspackCsvImporter=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<9)){var t=l.getValueOrDefault(n[8],"(None)"),u="(None)"!==t?t.split("\\").join("/"):null;l.processFolder(e,u);var o=l.initLoginCipher();o.notes=l.getValueOrDefault(n[3]),o.name=l.getValueOrDefault(n[0],"--"),o.login.username=l.getValueOrDefault(n[1]),o.login.password=l.getValueOrDefault(n[2]),o.login.uris=l.makeUriArray(n[4]),l.convertToNoteIfNeeded(o),l.cleanupCipher(o),e.ciphers.push(o)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(u.BaseImporter);l.PasswordAgentCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(39),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();if(t.name=l.getValueOrDefault(n.name,"--"),t.login.uris=l.makeUriArray(n.login_url),null!=n.identifiers){for(var u in l.isNullOrWhitespace(n.identifiers.notes)||(t.notes=n.identifiers.notes.split("\\r\\n").join("\n").split("\\n").join("\n")),"CreditCard"===n.type&&(t.card=new r.CardView,t.type=i.CipherType.Card),n.identifiers)if(n.identifiers.hasOwnProperty(u)){var o=n.identifiers[u],a=null!=o?o.toString():null;if(!l.isNullOrWhitespace(a)&&"notes"!==u&&"ignoreItemInSecurityScore"!==u){if(t.type===i.CipherType.Card){if("cardNumber"===u){t.card.number=a,t.card.brand=l.getCardBrand(a);continue}if("nameOnCard"===u){t.card.cardholderName=a;continue}if("security_code"===u){t.card.code=a;continue}if("expires"===u){try{var s=new Date(a);t.card.expYear=s.getFullYear().toString(),t.card.expMonth=(s.getMonth()+1).toString()}catch(n){}continue}if("cardType"===u)continue}else{if("username"===u){t.login.username=a;continue}if("password"===u){t.login.password=a;continue}if((null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(u)>-1){t.login.uris=l.makeUriArray(a);continue}}l.processKvp(t,u,a)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(u.BaseImporter);l.PasswordBossJsonImporter=a},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;var u=t.querySelectorAll("PasswordManager > record");return Array.from(u).forEach(function(n){var t=l.querySelectorDirectChild(n,"Category"),u=null==t||l.isNullOrWhitespace(t.textContent)||"Unfiled"===t.textContent?null:t.textContent;l.processFolder(e,u);var o=l.querySelectorDirectChild(n,"Account-Name"),r=l.querySelectorDirectChild(n,"User-Id"),i=l.querySelectorDirectChild(n,"Password"),a=l.querySelectorDirectChild(n,"URL"),s=l.querySelectorDirectChild(n,"Notes"),d=l.initLoginCipher();d.name=null!=o?l.getValueOrDefault(o.textContent,"--"):"--",d.notes=null!=s?l.getValueOrDefault(s.textContent):"",d.login.username=null!=r?l.getValueOrDefault(r.textContent):null,d.login.password=null!=i?l.getValueOrDefault(i.textContent):null,d.login.uris=null!=a?l.makeUriArray(a.textContent):null;for(var c=[],p=1;p<=10;p++)c.push("Attribute-"+p);l.querySelectorAllDirectChild(n,c.join(",")).forEach(function(n){l.isNullOrWhitespace(n.textContent)||"null"===n.textContent||l.processKvp(d,n.tagName,n.textContent)}),l.cleanupCipher(d),e.ciphers.push(d)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.PasswordDragonXmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;var u=t.querySelector("passwordsafe");if(null==u)return e.errorMessage="Missing `passwordsafe` node.",e.success=!1,e;var r=u.getAttribute("delimiter"),i=t.querySelectorAll("passwordsafe > entry");return Array.from(i).forEach(function(n){var t=l.querySelectorDirectChild(n,"group"),u=null==t||l.isNullOrWhitespace(t.textContent)?null:t.textContent.split(".").join("/");l.processFolder(e,u);var o=l.querySelectorDirectChild(n,"title"),i=l.querySelectorDirectChild(n,"username"),a=l.querySelectorDirectChild(n,"email"),s=l.querySelectorDirectChild(n,"password"),d=l.querySelectorDirectChild(n,"url"),c=l.querySelectorDirectChild(n,"notes"),p=l.initLoginCipher();p.name=null!=o?l.getValueOrDefault(o.textContent,"--"):"--",p.notes=null!=c?l.getValueOrDefault(c.textContent,"").split(r).join("\n"):null,p.login.username=null!=i?l.getValueOrDefault(i.textContent):null,p.login.password=null!=s?l.getValueOrDefault(s.textContent):null,p.login.uris=null!=d?l.makeUriArray(d.textContent):null,l.isNullOrWhitespace(p.login.username)&&null!=a?p.login.username=l.getValueOrDefault(a.textContent):null==a||l.isNullOrWhitespace(a.textContent)||(p.notes=l.isNullOrWhitespace(p.notes)?"Email: "+a.textContent:p.notes+"\nEmail: "+a.textContent),l.cleanupCipher(p),e.ciphers.push(p)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.PasswordSafeXmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);if(null==t)return e.success=!1,e;var u=1;return t.forEach(function(n){var o=!l.isNullOrWhitespace(n.Folder)&&n.Folder.startsWith("/")?n.Folder.replace("/",""):n.Folder,r=l.isNullOrWhitespace(o)?null:o;l.processFolder(e,r);var i=l.initLoginCipher();i.notes=l.getValueOrDefault(n.Note),i.name=l.getValueOrDefault(n.Name,"--"),i.login.username=l.getValueOrDefault(n.Login),i.login.password=l.getValueOrDefault(n.Pwd),i.login.uris=l.makeUriArray(n.Url),l.cleanupCipher(i),u===t.length&&"--"===i.name&&l.isNullOrWhitespace(i.login.password)||(e.ciphers.push(i),u++)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.RoboFormCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(138),i=e(93),a=e(39),s=e(111),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;if(null==t.querySelector("database"))return e.errorMessage="Missing `database` node.",e.success=!1,e;var u=new Map;return Array.from(t.querySelectorAll("database > label")).forEach(function(n){var t=n.getAttribute("name"),o=n.getAttribute("id");if(!l.isNullOrWhitespace(t)&&!l.isNullOrWhitespace(o)){u.set(o,e.folders.length);var i=new r.FolderView;i.name=t,e.folders.push(i)}}),Array.from(t.querySelectorAll("database > card")).forEach(function(n){if("true"!==n.getAttribute("template")){var t=l.querySelectorDirectChild(n,"label_id");if(null!=t){var o=t.textContent;!l.isNullOrWhitespace(o)&&u.has(o)&&e.folderRelationships.push([e.ciphers.length,u.get(o)])}var r=l.initLoginCipher();r.name=l.getValueOrDefault(n.getAttribute("title"),"--"),"note"===n.getAttribute("type")?(r.type=a.CipherType.SecureNote,r.secureNote=new i.SecureNoteView,r.secureNote.type=s.SecureNoteType.Generic):Array.from(l.querySelectorAllDirectChild(n,"field")).forEach(function(n){var e=n.textContent;if(!l.isNullOrWhitespace(e)){var t=n.getAttribute("name"),u=l.getValueOrDefault(n.getAttribute("type"),"").toLowerCase();"login"===u?r.login.username=e:"password"===u?r.login.password=e:"notes"===u?r.notes+=e+"\n":"weblogin"===u||"website"===u?r.login.uris=l.makeUriArray(e):l.processKvp(r,t,e)}}),Array.from(l.querySelectorAllDirectChild(n,"notes")).forEach(function(n){r.notes+=n.textContent+"\n"}),l.cleanupCipher(r),e.ciphers.push(r)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.SafeInCloudXmlImporter=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(l.nameFromUrl(n.url),"--"),t.notes=l.getValueOrDefault(n.notes),t.login.username=l.getValueOrDefault(n.username),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.url),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.SaferPassCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<3)){l.processFolder(e,l.getValueOrDefault(n[n.length-1]));var t=l.initLoginCipher();t.notes=l.getValueOrDefault(n[n.length-2],""),t.name=l.getValueOrDefault(n[1],"--"),"Web Logins"===n[0]||"Servers"===n[0]||"Email Accounts"===n[0]?(t.login.username=l.getValueOrDefault(n[2]),t.login.password=l.getValueOrDefault(n[3]),t.login.uris=l.makeUriArray(n[4]),l.parseFieldsToNotes(t,5,n)):l.parseFieldsToNotes(t,2,n),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l.prototype.parseFieldsToNotes=function(n,l,e){for(var t=l;t Database > Logins > Login");return Array.from(u).forEach(function(n){var u=n.getAttribute("ID");if(!l.isNullOrWhitespace(u)){var o=n.getAttribute("Name"),r=n.getAttribute("Password"),i=null,a=null,s=null,d=null,c=null,p=t.querySelector('root > Database > Accounts > Account > LoginLinks > Login[SourceLoginID="'+u+'"]');if(null!=p){var f=p.parentElement.parentElement;null!=f&&(i=f.getAttribute("Name"),a=f.getAttribute("Link"),d=f.getAttribute("ParentID"),s=f.getAttribute("Comments"),l.isNullOrWhitespace(s)||(s=s.split("/n").join("\n")))}l.isNullOrWhitespace(d)||(c=l.buildGroupText(t,d,""),l.processFolder(e,c));var v=l.initLoginCipher();v.name=l.getValueOrDefault(i,"--"),v.notes=l.getValueOrDefault(s),v.login.username=l.getValueOrDefault(o),v.login.password=l.getValueOrDefault(r),v.login.uris=l.makeUriArray(a),l.cleanupCipher(v),e.ciphers.push(v)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l.prototype.buildGroupText=function(n,l,e){var t=n.querySelector('root > Database > Groups > Group[ID="'+l+'"]');return null==t?e:(this.isNullOrWhitespace(e)||(e="/"+e),e=t.getAttribute("Name")+e,this.buildGroupText(n,t.getAttribute("ParentID"),e))},l}(u.BaseImporter);l.StickyPasswordXmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(93),a=e(39),s=e(111),d=["kind","autologin","favorite","hexcolor","protectedwithpassword","subdomainonly","type","tk_export_version","note","title","document_content"],c=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();if(t.favorite="true"===l.getValueOrDefault(n.favorite,"").toLowerCase(),t.name=l.getValueOrDefault(n.name,"--"),t.notes=l.getValueOrDefault(n.memo,""),t.login.username=l.getValueOrDefault(n.login),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.url),"login"!==n.kind&&(t.name=l.getValueOrDefault(n.title,"--"),t.notes=l.getValueOrDefault(n.note,"")),"cc"===n.kind){if(t.type=a.CipherType.Card,t.card=new r.CardView,t.card.cardholderName=l.getValueOrDefault(n.cardholder),t.card.number=l.getValueOrDefault(n.number),t.card.brand=l.getCardBrand(t.card.number),!l.isNullOrWhitespace(n.expiryDate))try{var u=new Date(n.expiryDate);t.card.expYear=u.getFullYear().toString(),t.card.expMonth=(u.getMonth()+1).toString()}catch(n){}}else if("login"!==n.kind)for(var o in t.type=a.CipherType.SecureNote,t.secureNote=new i.SecureNoteView,t.secureNote.type=s.SecureNoteType.Generic,l.isNullOrWhitespace(t.notes)||(t.notes=l.getValueOrDefault(n.document_content,"")),n)n.hasOwnProperty(o)&&d.indexOf(o.toLowerCase())<0&&!l.isNullOrWhitespace(n[o])&&l.processKvp(t,o,n[o]);l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.TrueKeyCsvImporter=c},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(5===n.length){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n[0],"--"),t.notes=l.getValueOrDefault(n[4]),t.login.username=l.getValueOrDefault(n[1]),t.login.password=l.getValueOrDefault(n[2]),t.login.uris=l.makeUriArray(n[3]),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(u.BaseImporter);l.UpmCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!l.isNullOrWhitespace(n["Secret Name"])){l.processFolder(e,l.getValueOrDefault(n.ChamberName));var t=l.initLoginCipher();t.favorite="1"===l.getValueOrDefault(n.Favorite,"0"),t.notes=l.getValueOrDefault(n.Notes),t.name=l.getValueOrDefault(n["Secret Name"],"--"),t.login.uris=l.makeUriArray(n["Secret URL"]),l.parseData(t,n.SecretData),l.parseData(t,n.CustomData),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l.prototype.parseData=function(n,l){var e=this;this.isNullOrWhitespace(l)||this.splitNewLine(l).forEach(function(l){var t=l.indexOf(":");if(!(t<0)){var u=l.substring(0,t),o=l.length>t?l.substring(t+1):null;if(!e.isNullOrWhitespace(u)&&!e.isNullOrWhitespace(o)&&"SecretType"!==u){var r=u.toLowerCase();null==n.login.username&&e.usernameFieldNames.indexOf(r)>-1?n.login.username=o:null==n.login.password&&e.passwordFieldNames.indexOf(r)>-1?n.login.password=o:e.processKvp(n,u,o)}}})},l}(u.BaseImporter);l.ZohoVaultCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]"))},n.prototype.indexCiphers=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return this.indexing?[2]:(console.time("search indexing"),this.indexing=!0,this.index=null,(n=new o.Builder).ref("id"),n.field("shortid",{boost:100,extractor:function(n){return n.id.substr(0,8)}}),n.field("name",{boost:10}),n.field("subtitle",{boost:5,extractor:function(n){return null!=n.subTitle&&n.type===r.CipherType.Card?n.subTitle.replace(/\*/g,""):n.subTitle}}),n.field("notes"),n.field("login.username",{extractor:function(n){return null!=n.login?n.login.username:null}}),n.field("login.uris",{boost:2,extractor:function(n){return l.uriExtractor(n)}}),n.field("fields",{extractor:function(n){return l.fieldExtractor(n,!1)}}),n.field("fields_joined",{extractor:function(n){return l.fieldExtractor(n,!0)}}),n.field("attachments",{extractor:function(n){return l.attachmentExtractor(n,!1)}}),n.field("attachments_joined",{extractor:function(n){return l.attachmentExtractor(n,!0)}}),n.field("organizationid",{extractor:function(n){return n.organizationId}}),[4,this.cipherService.getAllDecrypted()]);case 1:return e.sent().forEach(function(l){return n.add(l)}),this.index=n.build(),this.indexing=!1,console.timeEnd("search indexing"),[2]}})})},n.prototype.searchCiphers=function(n,l,e){return void 0===l&&(l=null),void 0===e&&(e=null),t(this,void 0,void 0,function(){var t,r,i,a,s;return u(this,function(u){switch(u.label){case 0:return t=[],null!=n&&(n=n.trim().toLowerCase()),""===n&&(n=null),null!=e?[3,2]:[4,this.cipherService.getAllDecrypted()];case 1:e=u.sent(),u.label=2;case 2:if(null!=l&&(e=e.filter(l)),!this.isSearchable(n))return[2,e];if(null==(r=this.getIndexForSearch()))return[2,this.searchCiphersBasic(e,n)];if(i=new Map,e.forEach(function(n){return i.set(n.id,n)}),a=null,null!=n&&n.length>1&&0===n.indexOf(">"))try{a=r.search(n.substr(1).trim())}catch(n){}else s=o.Query.wildcard.LEADING|o.Query.wildcard.TRAILING,a=r.query(function(l){l.term(n,{fields:["name"],wildcard:s}),l.term(n,{fields:["subtitle"],wildcard:s}),l.term(n,{fields:["login.uris"],wildcard:s}),o.tokenizer(n).forEach(function(n){l.term(n.toString(),{})})});return null!=a&&a.forEach(function(n){i.has(n.ref)&&t.push(i.get(n.ref))}),[2,t]}})})},n.prototype.searchCiphersBasic=function(n,l){var e=this;return l=l.trim().toLowerCase(),n.filter(function(n){return null!=n.name&&n.name.toLowerCase().indexOf(l)>-1||!e.onlySearchName&&(!!(l.length>=8&&n.id.startsWith(l))||(null!=n.subTitle&&n.subTitle.toLowerCase().indexOf(l)>-1||!!(n.login&&null!=n.login.uri&&n.login.uri.toLowerCase().indexOf(l)>-1)))})},n.prototype.getIndexForSearch=function(){return this.index},n.prototype.fieldExtractor=function(n,l){if(!n.hasFields)return null;var e=[];return n.fields.forEach(function(n){null!=n.name&&e.push(n.name),n.type===a.FieldType.Text&&null!=n.value&&e.push(n.value)}),0===(e=e.filter(function(n){return""!==n.trim()})).length?null:l?e.join(" "):e},n.prototype.attachmentExtractor=function(n,l){if(!n.hasAttachments)return null;var e=[];return n.attachments.forEach(function(n){null!=n&&null!=n.fileName&&(l&&n.fileName.indexOf(".")>-1?e.push(n.fileName.substr(0,n.fileName.lastIndexOf("."))):e.push(n.fileName))}),0===(e=e.filter(function(n){return""!==n.trim()})).length?null:l?e.join(" "):e},n.prototype.uriExtractor=function(n){if(null==n.login||!n.login.hasUris)return null;var l=[];return n.login.uris.forEach(function(n){if(null!=n.uri&&""!==n.uri)if(null==n.hostname){var e=n.uri;if(n.match!==s.UriMatchType.RegularExpression){var t=e.indexOf("://");t>-1&&(e=e.substr(t+3));var u=e.search(/\?|&|#/);u>-1&&(e=e.substring(0,u))}l.push(e)}else l.push(n.hostname)}),l.length>0?l:null},n}();l.SearchService=d},,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1||e.indexOf(" Version/9.")>-1)}return n.prototype.pbkdf2=function(n,l,e,i){return t(this,void 0,void 0,function(){var t,a,s,d,c,p,f,v,h;return u(this,function(u){switch(u.label){case 0:return this.isEdge||this.isIE||this.isOldSafari?(t="sha256"===e?32:64,a=this.toByteString(n),s=this.toByteString(l),d=o.pbkdf2(a,s,i,t,e),[2,r.Utils.fromByteStringToArray(d).buffer]):(c="sha256"===e?256:512,p=this.toBuf(n),f=this.toBuf(l),v={name:"PBKDF2",salt:f,iterations:i,hash:{name:this.toWebCryptoAlgorithm(e)}},[4,this.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveBits"])]);case 1:return h=u.sent(),[4,this.subtle.deriveBits(v,h,c)];case 2:return[2,u.sent()]}})})},n.prototype.hash=function(n,l){return t(this,void 0,void 0,function(){var e,t,i;return u(this,function(u){switch(u.label){case 0:return(this.isEdge||this.isIE)&&"sha1"===l||"md5"===l?(e="md5"===l?o.md.md5.create():o.md.sha1.create(),t=this.toByteString(n),e.update(t,"raw"),[2,r.Utils.fromByteStringToArray(e.digest().data).buffer]):(i=this.toBuf(n),[4,this.subtle.digest({name:this.toWebCryptoAlgorithm(l)},i)]);case 1:return[2,u.sent()]}})})},n.prototype.hmac=function(n,l,e){return t(this,void 0,void 0,function(){var t,i,a,s,d;return u(this,function(u){switch(u.label){case 0:return this.isIE&&"sha512"===e?(t=o.hmac.create(),i=this.toByteString(l),a=this.toByteString(n),t.start(e,i),t.update(a,"raw"),[2,r.Utils.fromByteStringToArray(t.digest().data).buffer]):(s={name:"HMAC",hash:{name:this.toWebCryptoAlgorithm(e)}},[4,this.subtle.importKey("raw",l,s,!1,["sign"])]);case 1:return d=u.sent(),[4,this.subtle.sign(s,d,n)];case 2:return[2,u.sent()]}})})},n.prototype.compare=function(n,l){return t(this,void 0,void 0,function(){var e,t,o,r,i,a,s,d;return u(this,function(u){switch(u.label){case 0:return[4,this.randomBytes(32)];case 1:return e=u.sent(),t={name:"HMAC",hash:{name:"SHA-256"}},[4,this.subtle.importKey("raw",e,t,!1,["sign"])];case 2:return o=u.sent(),[4,this.subtle.sign(t,o,n)];case 3:return r=u.sent(),[4,this.subtle.sign(t,o,l)];case 4:if(i=u.sent(),r.byteLength!==i.byteLength)return[2,!1];for(a=new Uint8Array(r),s=new Uint8Array(i),d=0;d-1&&l.indexOf("]")>-1){var u=l.lastIndexOf(".");t=l.substr(0,u>-1?u:l.length)+": "}e.push(t+n)})};for(var u in n.validationErrors)t(u)}return 1===e.length?this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),e[0]):e.length>1&&this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),e,{timeout:5e3*e.length}),e},n}();l.ValidationService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(18);var t=function(){function n(n,l){this.el=n,this.validationService=l}return n.prototype.ngOnChanges=function(n){var l=this;null!=this.appApiAction&&null!=this.appApiAction.then&&(this.el.nativeElement.loading=!0,this.appApiAction.then(function(n){l.el.nativeElement.loading=!1},function(n){l.el.nativeElement.loading=!1,l.validationService.showError(n)}))},n}();l.ApiActionDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.MessagingService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CryptoService=t},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CipherService=t},,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3);var t=function(){function n(n){this.i18nService=n,this.type="info"}return n.prototype.ngOnInit=function(){this.calloutStyle=this.type,"warning"===this.type||"danger"===this.type?("danger"===this.type&&(this.calloutStyle="danger"),void 0===this.title&&(this.title=this.i18nService.t("warning")),void 0===this.icon&&(this.icon="fa-warning")):"error"===this.type?(this.calloutStyle="danger",void 0===this.title&&(this.title=this.i18nService.t("error")),void 0===this.icon&&(this.icon="fa-bolt")):"tip"===this.type&&(this.calloutStyle="success",void 0===this.title&&(this.title=this.i18nService.t("tip")),void 0===this.icon&&(this.icon="fa-lightbulb-o"))},n}();l.CalloutComponent=t},,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StateService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(28),r=e(3),i=t.ɵcrt({encapsulation:2,styles:[],data:{}});function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"fa ",e.icon,""))})}function s(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"h3",[["class","callout-heading"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,a)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(4,null,["\n ","\n "]))],function(n,l){n(l,3,0,l.component.icon)},function(n,l){n(l,4,0,l.component.title)})}function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"div",[["role","alert"]],[[8,"className",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,s)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),t.ɵncd(null,0),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,l.component.title)},function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"callout callout-",e.calloutStyle,""))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-callout",[],null,null,null,d,i)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CalloutComponent=i,l.View_CalloutComponent_0=d,l.View_CalloutComponent_Host_0=c;var p=t.ɵccf("app-callout",o.CalloutComponent,c,{type:"type",icon:"icon",title:"title"},{},["*"]);l.CalloutComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(628),u=e(126),o=e(139),r=e(223),i=e(38),a=e(184),s=e(138),d=e(158),c=e(93),p=e(39),f=e(183),v=e(111),h=function(){function n(){this.organization=!1,this.newLineRegex=/(?:\r\n|\r|\n)/,this.passwordFieldNames=["password","pass word","passphrase","pass phrase","pass","code","code word","codeword","secret","secret word","personpwd","key","keyword","key word","keyphrase","key phrase","form_pw","wppassword","pin","pwd","pw","pword","passwd","p","serial","serial#","license key","reg #","passwort"],this.usernameFieldNames=["user","name","user name","username","login name","email","e-mail","id","userid","user id","login","form_loginname","wpname","mail","loginid","login id","log","personlogin","first name","last name","card#","account #","member","member #","nom","benutzername"],this.notesFieldNames=["note","notes","comment","comments","memo","description","free form","freeform","free text","freetext","free","kommentar"],this.uriFieldNames=["url","hyper link","hyperlink","link","host","hostname","host name","server","address","hyper ref","href","web","website","web site","site","web-site","uri","ort","adresse"]}return n.prototype.parseXml=function(n){var l=(new DOMParser).parseFromString(n,"application/xml");return null!=l&&null==l.querySelector("parsererror")?l:null},n.prototype.parseCsv=function(n,l){n=this.splitNewLine(n).join("\n").trim();var e=t.parse(n,{header:l,encoding:"UTF-8",skipEmptyLines:!1});return null!=e.errors&&e.errors.length>0&&e.errors.forEach(function(n){null!=n.row&&console.warn("Error parsing row "+n.row+": "+n.message)}),e.data&&e.data.length>0?e.data:null},n.prototype.parseSingleRowCsv=function(n){if(this.isNullOrWhitespace(n))return null;var l=this.parseCsv(n,!1);return null!=l&&l.length>0&&l[0].length>0?l[0]:null},n.prototype.makeUriArray=function(n){var l=this;if(null==n)return null;if("string"==typeof n){var e=new r.LoginUriView;return e.uri=this.fixUri(n),this.isNullOrWhitespace(e.uri)?null:(e.match=null,[e])}if(n.length>0){var t=[];return n.forEach(function(n){var e=new r.LoginUriView;e.uri=l.fixUri(n),l.isNullOrWhitespace(e.uri)||(e.match=null,t.push(e))}),0===t.length?null:t}return null},n.prototype.fixUri=function(n){return null==n?null:(-1===(n=n.toLowerCase().trim()).indexOf("://")&&n.indexOf(".")>=0&&(n="http://"+n),n.length>1e3?n.substring(0,1e3):n)},n.prototype.nameFromUrl=function(n){var l=i.Utils.getHostname(n);return this.isNullOrWhitespace(l)?null:l.startsWith("www.")?l.replace("www.",""):l},n.prototype.isNullOrWhitespace=function(n){return null==n||"string"!=typeof n||""===n.trim()},n.prototype.getValueOrDefault=function(n,l){return void 0===l&&(l=null),this.isNullOrWhitespace(n)?l:n},n.prototype.splitNewLine=function(n){return n.split(this.newLineRegex)},n.prototype.getCardBrand=function(n){if(this.isNullOrWhitespace(n))return null;var l=new RegExp("^4");return null!=n.match(l)?"Visa":/^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$/.test(n)?"Mastercard":(l=new RegExp("^3[47]"),null!=n.match(l)?"Amex":(l=new RegExp("^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)"),null!=n.match(l)?"Discover":(l=new RegExp("^36"),null!=n.match(l)?"Diners Club":(l=new RegExp("^30[0-5]"),null!=n.match(l)?"Diners Club":(l=new RegExp("^35(2[89]|[3-8][0-9])"),null!=n.match(l)?"JCB":(l=new RegExp("^(4026|417500|4508|4844|491(3|7))"),null!=n.match(l)?"Visa":null))))))},n.prototype.moveFoldersToCollections=function(n){n.folderRelationships.forEach(function(l){return n.collectionRelationships.push(l)}),n.collections=n.folders.map(function(n){var l=new o.CollectionView;return l.name=n.name,l}),n.folderRelationships=[],n.folders=[]},n.prototype.querySelectorDirectChild=function(n,l){var e=this.querySelectorAllDirectChild(n,l);return 0===e.length?null:e[0]},n.prototype.querySelectorAllDirectChild=function(n,l){return Array.from(n.querySelectorAll(l)).filter(function(l){return l.parentNode===n})},n.prototype.initLoginCipher=function(){var n=new u.CipherView;return n.favorite=!1,n.notes="",n.fields=[],n.login=new d.LoginView,n.type=p.CipherType.Login,n},n.prototype.cleanupCipher=function(n){null!=n&&(n.type!==p.CipherType.Login&&(n.login=null),this.isNullOrWhitespace(n.name)&&(n.name="--"),this.isNullOrWhitespace(n.notes)?n.notes=null:n.notes=n.notes.trim(),null!=n.fields&&0===n.fields.length&&(n.fields=null))},n.prototype.processKvp=function(n,l,e){if(!this.isNullOrWhitespace(e))if(this.isNullOrWhitespace(l)&&(l=""),e.length>200||e.trim().search(this.newLineRegex)>-1)null==n.notes&&(n.notes=""),n.notes+=l+": "+this.splitNewLine(e).join("\n")+"\n";else{null==n.fields&&(n.fields=[]);var t=new a.FieldView;t.type=f.FieldType.Text,t.name=l,t.value=e,n.fields.push(t)}},n.prototype.processFolder=function(n,l){var e=n.folders.length,t=!this.isNullOrWhitespace(l),u=t;if(t)for(var o=0;o-1;if(!e&&n.indexOf(".")>-1)n="http://"+n;else if(!e)return null;return l.getUrlObject(n)},l.getUrlObject=function(n){try{if(null!=r)return r.URL?new r.URL(n):r.parse(n);if("function"==typeof URL)return new URL(n);if(null!=window){var l=window.document.createElement("a");return l.href=n,l}}catch(n){}return null},l.inited=!1,l.isNativeScript=!1,l.isNode=!1,l.isBrowser=!0,l.isMobileBrowser=!1,l.global=null,l}();l.Utils=i,i.init()}).call(this,e(124),e(85),e(112).Buffer)},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Login=1]="Login",n[n.SecureNote=2]="SecureNote",n[n.Card=3]="Card",n[n.Identity=4]="Identity"}(l.CipherType||(l.CipherType={}))},,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CollectionService=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(n,l){this.el=n,this.renderer=l}return Object.defineProperty(n.prototype,"appInputVerbatim",{set:function(n){this.disableComplete=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){this.disableComplete&&!this.el.nativeElement.hasAttribute("autocomplete")&&this.renderer.setAttribute(this.el.nativeElement,"autocomplete","off"),this.el.nativeElement.hasAttribute("autocapitalize")||this.renderer.setAttribute(this.el.nativeElement,"autocapitalize","none"),this.el.nativeElement.hasAttribute("autocorrect")||this.renderer.setAttribute(this.el.nativeElement,"autocorrect","none"),this.el.nativeElement.hasAttribute("spellcheck")||this.renderer.setAttribute(this.el.nativeElement,"spellcheck","false"),this.el.nativeElement.hasAttribute("inputmode")||this.renderer.setAttribute(this.el.nativeElement,"inputmode","verbatim")},n}();l.InputVerbatimDirective=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.FolderService=t},,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordGenerationService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SyncService=t},,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StorageService=t},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.TokenService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.EnvironmentService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PasswordVerificationRequest=t},,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuthService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){this.environmentUrlsKey=n.environmentUrlsKey,this.disableGaKey=n.disableGaKey,this.disableAddLoginNotificationKey=n.disableAddLoginNotificationKey,this.disableContextMenuItemKey=n.disableContextMenuItemKey,this.disableFaviconKey=n.disableFaviconKey,this.disableAutoTotpCopyKey=n.disableAutoTotpCopyKey,this.enableAutoFillOnPageLoadKey=n.enableAutoFillOnPageLoadKey,this.lockOptionKey=n.lockOptionKey,this.lastActiveKey=n.lastActiveKey,this.neverDomainsKey=n.neverDomainsKey,this.installedVersionKey=n.installedVersionKey,this.localeKey=n.localeKey,this.themeKey=n.themeKey,this.collapsedGroupingsKey=n.collapsedGroupingsKey,this.autoConfirmFingerprints=n.autoConfirmFingerprints,this.dontShowCardsCurrentTab=n.dontShowCardsCurrentTab,this.dontShowIdentitiesCurrentTab=n.dontShowIdentitiesCurrentTab}return n.environmentUrlsKey="environmentUrls",n.disableGaKey="disableGa",n.disableAddLoginNotificationKey="disableAddLoginNotification",n.disableChangedPasswordNotificationKey="disableChangedPasswordNotification",n.disableContextMenuItemKey="disableContextMenuItem",n.disableFaviconKey="disableFavicon",n.disableAutoTotpCopyKey="disableAutoTotpCopy",n.enableAutoFillOnPageLoadKey="enableAutoFillOnPageLoad",n.lockOptionKey="lockOption",n.lastActiveKey="lastActive",n.neverDomainsKey="neverDomains",n.installedVersionKey="installedVersion",n.localeKey="locale",n.themeKey="theme",n.collapsedGroupingsKey="collapsedGroupings",n.autoConfirmFingerprints="autoConfirmFingerprints",n.dontShowCardsCurrentTab="dontShowCardsCurrentTab",n.dontShowIdentitiesCurrentTab="dontShowIdentitiesCurrentTab",n}();l.ConstantsService=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?(n="http://"+n,l=!0):this.imageEnabled&&(l=0===n.indexOf("http")&&n.indexOf(".")>-1),this.imageEnabled&&l)try{this.image=this.iconsUrl+"/"+i.Utils.getHostname(n)+"/icon.png",this.fallbackImage="images/fa-globe.png"}catch(n){}}else this.image=null},n}();l.IconComponent=s},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n){n&&(this.type=n.type)}return Object.defineProperty(n.prototype,"subTitle",{get:function(){return null},enumerable:!0,configurable:!0}),n}();l.SecureNoteView=t},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=e(38),u=function(){function n(n){this.el=n}return Object.defineProperty(n.prototype,"appAutofocus",{set:function(n){this.autofocus=""===n||!0===n},enumerable:!0,configurable:!0}),n.prototype.ngOnInit=function(){!t.Utils.isMobileBrowser&&this.autofocus&&this.el.nativeElement.focus()},n}();l.AutofocusDirective=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(243),o=(e(0),e(769)),r=e(38),i=function(n){function l(l){var e=n.call(this,l)||this;return e.el=null,e}return t(l,n),l.prototype.ngOnDestroy=function(){},l.prototype.show=function(n,l,e){var t=this;void 0===e&&(e=!0),this.parentContainer=l,this.fade=e;var o=this.componentFactoryResolver.resolveComponentFactory(n),i=this.container.createComponent(o),a=Array.from(document.querySelectorAll(".modal"));return a.length>0&&(this.el=u(a[0]),this.el.modal("show"),this.el.on("show.bs.modal",function(){t.onShow.emit()}),this.el.on("shown.bs.modal",function(){t.onShown.emit(),r.Utils.isMobileBrowser||t.el.find("*[appAutoFocus]").focus()}),this.el.on("hide.bs.modal",function(){t.onClose.emit()}),this.el.on("hidden.bs.modal",function(){t.onClosed.emit(),null!=t.parentContainer&&t.parentContainer.clear()})),i.instance},l.prototype.close=function(){null!=this.el&&this.el.modal("hide")},l}(o.ModalComponent);l.ModalComponent=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Authenticator=0]="Authenticator",n[n.Email=1]="Email",n[n.Duo=2]="Duo",n[n.Yubikey=3]="Yubikey",n[n.U2f=4]="U2f",n[n.Remember=5]="Remember",n[n.OrganizationDuo=6]="OrganizationDuo"}(l.TwoFactorProviderType||(l.TwoFactorProviderType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){}return n.prototype.onClick=function(n){n.stopPropagation()},n}();l.StopPropDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(800),o=e(4),r=e(92),i=e(71),a=e(30),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"img",[["alt",""]],[[8,"src",4]],[[null,"error"]],function(n,l,e){var u=!0;"error"===l&&(u=!1!==t.ɵnov(n,1).onError()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.FallbackSrcDirective,[t.ElementRef],{appFallbackSrc:[0,"appFallbackSrc"]},null)],function(n,l){var e=l.component;n(l,1,0,t.ɵinlineInterpolate(1,"",e.fallbackImage,""))},function(n,l){n(l,0,0,l.component.image)})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"fa fa-fw fa-lg ",e.icon,""))})}function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,d)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,c)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,e.imageEnabled&&e.image),n(l,6,0,!e.imageEnabled||!e.image)},null)}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-icon",[],null,null,null,p,s)),t.ɵdid(1,573440,null,0,r.IconComponent,[i.EnvironmentService,a.StateService],null,null)],null,null)}l.RenderType_IconComponent=s,l.View_IconComponent_0=p,l.View_IconComponent_Host_0=f;var v=t.ɵccf("app-vault-icon",r.IconComponent,f,{cipher:"cipher"},{},[]);l.IconComponentNgFactory=v},,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.CryptoFunctionService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AuditService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n){this.expMonth=null,this._brand=null}return Object.defineProperty(n.prototype,"maskedCode",{get:function(){return null!=this.code?"•".repeat(this.code.length):null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"brand",{get:function(){return this._brand},set:function(n){this._brand=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"number",{get:function(){return this._number},set:function(n){this._number=n,this._subTitle=null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"subTitle",{get:function(){return null==this._subTitle&&(this._subTitle=this.brand,null!=this.number&&this.number.length>=4&&(null!=this._subTitle&&""!==this._subTitle?this._subTitle+=", ":this._subTitle="",this._subTitle+="*"+this.number.substr(this.number.length-4))),this._subTitle},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"expiration",{get:function(){if(!this.expMonth&&!this.expYear)return null;var n=null!=this.expMonth?("0"+this.expMonth).slice(-2):"__";return n+=" / "+(null!=this.expYear?this.formatYear(this.expYear):"____")},enumerable:!0,configurable:!0}),n.prototype.formatYear=function(n){return 2===n.length?"20"+n:n},n}();l.CardView=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?n[r]=i||null:n[r]=i?new o.CipherString(i):null}},n.prototype.buildDataModel=function(n,l,e,t){for(var u in void 0===t&&(t=[]),e)if(e.hasOwnProperty(u)){var o=n[e[u]||u];t.indexOf(u)>-1?l[u]=null!=o?o:null:l[u]=null!=o?o.encryptedString:null}},n.prototype.decryptObj=function(n,l,e){return t(this,void 0,void 0,function(){var t,o,r;return u(this,function(u){switch(u.label){case 0:for(r in t=[],o=this,l)l.hasOwnProperty(r)&&function(u){var r=Promise.resolve().then(function(){var n=l[u]||u;return o[n]?o[n].decrypt(e):null}).then(function(l){n[u]=l});t.push(r)}(r);return[4,Promise.all(t)];case 1:return u.sent(),[2,n]}})})},n}();l.default=r},,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(){this.subscribers=new Map}return n.prototype.send=function(n,l){null==l?this.subscribers.forEach(function(l){l(n)}):this.subscribers.has(l)&&this.subscribers.get(l)(n)},n.prototype.subscribe=function(n,l){this.subscribers.has(n)||this.subscribers.set(n,l)},n.prototype.unsubscribe=function(n){this.subscribers.has(n)&&this.subscribers.delete(n)},n}();l.BroadcasterService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Generic=0]="Generic"}(l.SecureNoteType||(l.SecureNoteType={}))},,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SearchService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(39),u=function(){function n(n){this.favorite=!1,this.organizationUseTotp=!1,this.edit=!1,n&&(this.id=n.id,this.organizationId=n.organizationId,this.folderId=n.folderId,this.favorite=n.favorite,this.organizationUseTotp=n.organizationUseTotp,this.edit=n.edit,this.type=n.type,this.localData=n.localData,this.collectionIds=n.collectionIds,this.revisionDate=n.revisionDate)}return Object.defineProperty(n.prototype,"subTitle",{get:function(){switch(this.type){case t.CipherType.Login:return this.login.subTitle;case t.CipherType.SecureNote:return this.secureNote.subTitle;case t.CipherType.Card:return this.card.subTitle;case t.CipherType.Identity:return this.identity.subTitle}return null},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasPasswordHistory",{get:function(){return this.passwordHistory&&this.passwordHistory.length>0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasAttachments",{get:function(){return this.attachments&&this.attachments.length>0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasOldAttachments",{get:function(){if(this.hasAttachments)for(var n=0;n0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"passwordRevisionDisplayDate",{get:function(){return null==this.login?null:null==this.login.password||""===this.login.password?null:this.login.passwordRevisionDate},enumerable:!0,configurable:!0}),n}();l.CipherView=u},,,,,,,,,,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]1&&(e=this.getFirstLetters(t,this.charCount)),null==e&&(e=t.substr(0,this.charCount)),r=this.getCharText(e),i=this.stringToColor(t),(a=this.getSvg(this.size,i)).appendChild(r),s=window.document.createElement("div").appendChild(a).outerHTML,d=window.btoa(unescape(encodeURIComponent(s))),this.src="data:image/svg+xml;base64,"+d,u.label=4;case 4:return[2]}})})},n.prototype.stringToColor=function(n){for(var l=0,e=0;e>8*e&255).toString(16)).substr(-2)}return t},n.prototype.getFirstLetters=function(n,l){var e=n.split(" ");if(e.length>1){for(var t="",u=0;u0},enumerable:!0,configurable:!0}),n}();l.LoginView=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3),e(9);var t={stripeTest:"pk_test_KPoCfZXu7mznb9uSCPZ2JpTD",stripeLive:"pk_live_bpN0P37nMxrMQkcaHXtAybJk",btSandbox:"sandbox_r72q8jq6_9pnxkwm75f87sdc2",btProduction:"production_qfbsv8kc_njj2zjtyngtjmbjd"},u=function(){function n(n,l){var e=this;this.platformUtilsService=l,this.showOptions=!0,this.method="card",this.hideBank=!1,this.hidePaypal=!1,this.card={number:null,exp_month:null,exp_year:null,address_country:"",address_zip:null},this.bank={routing_number:null,account_number:null,account_holder_name:null,account_holder_type:"",currency:"USD",country:"US"},this.btInstance=null,this.stripeScript=window.document.createElement("script"),this.stripeScript.src="https://js.stripe.com/v2/",this.stripeScript.async=!0,this.stripeScript.onload=function(){window.Stripe.setPublishableKey(e.platformUtilsService.isDev()?t.stripeTest:t.stripeLive)},this.btScript=window.document.createElement("script"),this.btScript.src="scripts/dropin.js",this.btScript.async=!0,this.cardExpMonthOptions=[{name:"-- "+n.t("select")+" --",value:null},{name:"01 - "+n.t("january"),value:"01"},{name:"02 - "+n.t("february"),value:"02"},{name:"03 - "+n.t("march"),value:"03"},{name:"04 - "+n.t("april"),value:"04"},{name:"05 - "+n.t("may"),value:"05"},{name:"06 - "+n.t("june"),value:"06"},{name:"07 - "+n.t("july"),value:"07"},{name:"08 - "+n.t("august"),value:"08"},{name:"09 - "+n.t("september"),value:"09"},{name:"10 - "+n.t("october"),value:"10"},{name:"11 - "+n.t("november"),value:"11"},{name:"12 - "+n.t("december"),value:"12"}],this.cardExpYearOptions=[{name:"-- "+n.t("select")+" --",value:null}];for(var u=(new Date).getFullYear(),o=u;o-1&&window.document.body.removeChild(n)}),!this.hidePaypal){window.document.head.removeChild(this.btScript);var n=window.document.head.querySelector("#braintree-dropin-stylesheet");null!=n&&window.document.head.removeChild(n)}},n.prototype.changeMethod=function(){var n=this;"paypal"===this.method?window.setTimeout(function(){window.braintree.dropin.create({authorization:n.platformUtilsService.isDev()?t.btSandbox:t.btProduction,container:"#bt-dropin-container",paymentOptionPriority:["paypal"],paypal:{flow:"vault",buttonStyle:{label:"pay",size:"medium",shape:"pill",color:"blue"}}},function(l,e){null==l?n.btInstance=e:console.error(l)})},250):this.btInstance=null},n.prototype.createPaymentToken=function(){var n=this;return new Promise(function(l,e){if("paypal"===n.method)n.btInstance.requestPaymentMethod().then(function(n){l(n.nonce)}).catch(function(n){e(n.message)});else if("card"===n.method||"bank"===n.method){var t="card"===n.method?window.Stripe.card:window.Stripe.bankAccount,u="card"===n.method?n.card:n.bank;t.createToken(u,function(n,t){200===n&&null!=t.id?l(t.id):null!=t.error?e(t.error.message):e()})}})},n.prototype.getCountry=function(){return this.card.address_country},n}();l.PaymentComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(39),u=e(564),o=e(565),r=e(566),i=e(567),a=e(568),s=e(570),d=e(571),c=function(){return function(n,l,e){var c=this;if(null!=n){switch(this.id=n.id,this.organizationId=n.organizationId,this.folderId=n.folderId,this.userId=l,this.edit=n.edit,this.organizationUseTotp=n.organizationUseTotp,this.favorite=n.favorite,this.revisionDate=n.revisionDate,this.type=n.type,this.name=n.name,this.notes=n.notes,this.collectionIds=null!=e?e:n.collectionIds,this.type){case t.CipherType.Login:this.login=new a.LoginData(n.login);break;case t.CipherType.SecureNote:this.secureNote=new d.SecureNoteData(n.secureNote);break;case t.CipherType.Card:this.card=new o.CardData(n.card);break;case t.CipherType.Identity:this.identity=new i.IdentityData(n.identity)}null!=n.fields&&(this.fields=[],n.fields.forEach(function(n){c.fields.push(new r.FieldData(n))})),null!=n.attachments&&(this.attachments=[],n.attachments.forEach(function(n){c.attachments.push(new u.AttachmentData(n))})),null!=n.passwordHistory&&(this.passwordHistory=[],n.passwordHistory.forEach(function(n){c.passwordHistory.push(new s.PasswordHistoryData(n))}))}}}();l.CipherData=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.id,this.organizationId=n.organizationId,this.name=n.name,this.readOnly=n.readOnly}}();l.CollectionData=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?(s=[],[4,this.attachments.reduce(function(n,l){return n.then(function(){return l.decrypt(i)}).then(function(n){s.push(n)})},Promise.resolve())]):[3,13];case 12:o.sent(),n.attachments=s,o.label=13;case 13:return null!=this.fields&&this.fields.length>0?(d=[],[4,this.fields.reduce(function(n,l){return n.then(function(){return l.decrypt(i)}).then(function(n){d.push(n)})},Promise.resolve())]):[3,15];case 14:o.sent(),n.fields=d,o.label=15;case 15:return null!=this.passwordHistory&&this.passwordHistory.length>0?(c=[],[4,this.passwordHistory.reduce(function(n,l){return n.then(function(){return l.decrypt(i)}).then(function(n){c.push(n)})},Promise.resolve())]):[3,17];case 16:o.sent(),n.passwordHistory=c,o.label=17;case 17:return[2,n]}})})},l.prototype.toCipherData=function(n){var l=new i.CipherData;switch(l.id=this.id,l.organizationId=this.organizationId,l.folderId=this.folderId,l.userId=null!=this.organizationId?n:null,l.edit=this.edit,l.organizationUseTotp=this.organizationUseTotp,l.favorite=this.favorite,l.revisionDate=null!=this.revisionDate?this.revisionDate.toISOString():null,l.type=this.type,l.collectionIds=this.collectionIds,this.buildDataModel(this,l,{name:null,notes:null}),l.type){case r.CipherType.Login:l.login=this.login.toLoginData();break;case r.CipherType.SecureNote:l.secureNote=this.secureNote.toSecureNoteData();break;case r.CipherType.Card:l.card=this.card.toCardData();break;case r.CipherType.Identity:l.identity=this.identity.toIdentityData()}return null!=this.fields&&(l.fields=[],this.fields.forEach(function(n){l.fields.push(n.toFieldData())})),null!=this.attachments&&(l.attachments=[],this.attachments.forEach(function(n){l.attachments.push(n.toAttachmentData())})),null!=this.passwordHistory&&(l.passwordHistory=[],this.passwordHistory.forEach(function(n){l.passwordHistory.push(n.toPasswordHistoryData())})),l},l}(c.default);l.Cipher=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(3);var t=e(181),u=e(851),o=function(){function n(n){this.i18nService=n}return n.prototype.getDefaultDateFilters=function(){var n=new Date,l=new Date(n.getFullYear(),n.getMonth(),n.getDate(),23,59);n.setDate(n.getDate()-30);var e=new Date(n.getFullYear(),n.getMonth(),n.getDate(),0,0);return[this.toDateTimeLocalString(e),this.toDateTimeLocalString(l)]},n.prototype.formatDateFilters=function(n,l){var e=new Date(n),t=new Date(l+":59.999");if(isNaN(e.getTime())||isNaN(t.getTime())||t"+e+"";var t=this.makeAnchor(e);return t.setAttribute("href","#/organizations/"+n.organizationId+"/vault?search="+e+"&viewEvents="+n.cipherId),t.outerHTML},n.prototype.formatGroupId=function(n){var l=this.getShortId(n.groupId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/groups?search="+l),e.outerHTML},n.prototype.formatCollectionId=function(n){var l=this.getShortId(n.collectionId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/collections?search="+l),e.outerHTML},n.prototype.formatOrgUserId=function(n){var l=this.getShortId(n.organizationUserId),e=this.makeAnchor(l);return e.setAttribute("href","#/organizations/"+n.organizationId+"/manage/people?search="+l+"&viewEvents="+n.organizationUserId),e.outerHTML},n.prototype.makeAnchor=function(n){var l=document.createElement("a");return l.title=this.i18nService.t("view"),l.innerHTML=""+n+"",l},n.prototype.getShortId=function(n){return n.substring(0,8)},n.prototype.toDateTimeLocalString=function(n){return n.getFullYear()+"-"+this.pad(n.getMonth()+1)+"-"+this.pad(n.getDate())+"T"+this.pad(n.getHours())+":"+this.pad(n.getMinutes())},n.prototype.pad=function(n){var l=Math.floor(Math.abs(n));return(l<10?"0":"")+l},n}();l.EventService=o;var r=function(){return function(){}}();l.EventInfo=r;var i=function(){return function(){this.cipherInfo=!0}}();l.EventOptions=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Owner=0]="Owner",n[n.Admin=1]="Admin",n[n.User=2]="User",n[n.Manager=3]="Manager"}(l.OrganizationUserType||(l.OrganizationUserType={}))},,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";var t,u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]t){if(o===r.TwoFactorProviderType.U2f&&!n)return;e=o,t=i.priority}}),e},n.prototype.makePreloginKey=function(n,l){return u(this,void 0,void 0,function(){var e,t;return o(this,function(u){switch(u.label){case 0:l=l.trim().toLowerCase(),this.kdf=null,this.kdfIterations=null,u.label=1;case 1:return u.trys.push([1,3,,4]),[4,this.apiService.postPrelogin(new d.PreloginRequest(l))];case 2:return null!=(e=u.sent())&&(this.kdf=e.kdf,this.kdfIterations=e.kdfIterations),[3,4];case 3:if(null==(t=u.sent())||404!==t.statusCode)throw t;return[3,4];case 4:return[2,this.cryptoService.makeKey(n,l,this.kdf,this.kdfIterations)]}})})},n.prototype.logInHelper=function(n,l,e,t,d,p){return u(this,void 0,void 0,function(){var u,f,v,h,g,m,y,C,b,w;return o(this,function(o){switch(o.label){case 0:return[4,this.tokenService.getTwoFactorToken(n)];case 1:return u=o.sent(),[4,this.appIdService.getAppId()];case 2:return f=o.sent(),v=new a.DeviceRequest(f,this.platformUtilsService),h=null!=d&&null!=t?new c.TokenRequest(n,l,t,d,p,v):null!=u?new c.TokenRequest(n,l,r.TwoFactorProviderType.Remember,u,!1,v):new c.TokenRequest(n,l,null,null,!1,v),[4,this.apiService.postIdentityToken(h)];case 3:return g=o.sent(),this.clearState(),(m=new i.AuthResult).twoFactor=!g.accessToken,m.twoFactor?(y=g,this.email=n,this.masterPasswordHash=l,this.key=this.setCryptoKeys?e:null,this.twoFactorProviders=y.twoFactorProviders2,m.twoFactorProviders=y.twoFactorProviders2,[2,m]):(null!=(C=g).twoFactorToken&&this.tokenService.setTwoFactorToken(C.twoFactorToken,n),[4,this.tokenService.setTokens(C.accessToken,C.refreshToken)]);case 4:return o.sent(),[4,this.userService.setInformation(this.tokenService.getUserId(),this.tokenService.getEmail(),this.kdf,this.kdfIterations)];case 5:return o.sent(),this.setCryptoKeys?[4,this.cryptoService.setKey(e)]:[3,15];case 6:return o.sent(),[4,this.cryptoService.setKeyHash(l)];case 7:return o.sent(),[4,this.cryptoService.setEncKey(C.key)];case 8:if(o.sent(),null!=C.privateKey)return[3,13];o.label=9;case 9:return o.trys.push([9,12,,13]),[4,this.cryptoService.makeKeyPair()];case 10:return b=o.sent(),[4,this.apiService.postAccountKeys(new s.KeysRequest(b[0],b[1].encryptedString))];case 11:return o.sent(),C.privateKey=b[1].encryptedString,[3,13];case 12:return w=o.sent(),console.error(w),[3,13];case 13:return[4,this.cryptoService.setEncPrivateKey(C.privateKey)];case 14:o.sent(),o.label=15;case 15:return this.messagingService.send("loggedIn"),[2,m]}})})},n.prototype.clearState=function(){this.email=null,this.masterPasswordHash=null,this.twoFactorProviders=null,this.selectedTwoFactorProviderType=null},n}();l.AuthService=p},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(0),o=(e(43),e(55),e(67),e(8),function(n){function l(l,e,t,o){var r=n.call(this,l,e,t,o)||this;return r.onSearchTextChanged=new u.EventEmitter,r.searchText="",r.searchPlaceholder=null,r}return t(l,n),l.prototype.searchTextChanged=function(){this.onSearchTextChanged.emit(this.searchText)},l}(e(798).GroupingsComponent));l.GroupingsComponent=o},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]500?500:this.ciphers.length,e=0;e0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]4?(l=Math.floor(this.totpCode.length/2),this.totpCodeFormatted=this.totpCode.substring(0,l)+" "+this.totpCode.substring(l)):this.totpCodeFormatted=this.totpCode:(this.totpCodeFormatted=null,this.totpInterval&&window.clearInterval(this.totpInterval)),[2]}})})},l.prototype.totpTick=function(n){return u(this,void 0,void 0,function(){var l,e;return o(this,function(t){switch(t.label){case 0:return l=Math.round((new Date).getTime()/1e3),e=l%n,this.totpSec=n-e,this.totpDash=+(Math.round(78.6/n*e+"e+2")+"e-2"),this.totpLow=this.totpSec<=7,0!==e?[3,2]:[4,this.totpUpdateCode()];case 1:t.sent(),t.label=2;case 2:return[2]}})})},l}(e(803).AddEditComponent));l.AddEditComponent=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Invited=0]="Invited",n[n.Accepted=1]="Accepted",n[n.Confirmed=2]="Confirmed"}(l.OrganizationUserStatusType||(l.OrganizationUserStatusType={}))},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0))return[3,4];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,this.getFileContents(e[0])];case 2:return null!=(o=u.sent())&&(t=o),[3,4];case 3:return u.sent(),[3,4];case 4:if(null==t||""===t)return this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("selectFile")),[2];u.label=5;case 5:return u.trys.push([5,7,,8]),this.formPromise=this.importService.import(n,t,this.organizationId),[4,this.formPromise];case 6:return null!=(r=u.sent())?(this.error(r),[2]):(this.analytics.eventTrack.next({action:"Imported Data",properties:{label:this.format}}),this.toasterService.popAsync("success",null,this.i18nService.t("importSuccess")),this.router.navigate(this.successNavigate),[3,8]);case 7:return u.sent(),[3,8];case 8:return[2]}})})},n.prototype.getFormatInstructionTitle=function(){var n=this;if(null==this.format)return null;var l=this.featuredImportOptions.concat(this.importOptions).filter(function(l){return l.id===n.format});return l.length>0?this.i18nService.t("instructionsFor",l[0].name):null},n.prototype.setImportOptions=function(){this.featuredImportOptions=[{id:null,name:"-- "+this.i18nService.t("select")+" --"}].concat(this.importService.featuredImportOptions),this.importOptions=this.importService.regularImportOptions},n.prototype.error=function(n){this.analytics.eventTrack.next({action:"Import Data Failed",properties:{label:this.format}}),this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),n.message)},n.prototype.getFileContents=function(n){var l=this;return new Promise(function(e,t){var u=new FileReader;u.readAsText(n,"utf-8"),u.onload=function(u){if("lastpasscsv"===l.format&&"text/html"===n.type){var o=(new DOMParser).parseFromString(u.target.result,"text/html").querySelector("pre");return null!=o?void e(o.textContent):void t()}e(u.target.result)},u.onerror=function(){t()}})},n}();l.ImportComponent=o},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(21),e(226),e(3),e(9);var u=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return t(l,n),l.prototype.saved=function(){n.prototype.saved.call(this),this.masterPassword=null,this.platformUtilsService.showToast("success",null,this.i18nService.t("exportSuccess"))},l}(e(837).ExportComponent);l.ExportComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]1}),this.ciphers=e,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(227).CipherReportComponent);l.ReusedPasswordsReportComponent=i},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?o.concat(n.login.username.substr(0,i).trim().toLowerCase().split(/[^A-Za-z0-9]/)).filter(function(n){return n.length>=3}):n.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/).filter(function(n){return n.length>=3})}var a=e.passwordGenerationService.passwordStrength(n.login.password,o.length>0?o:null);e.passwordStrengthCache.set(u,a.score)}var s=e.passwordStrengthCache.get(u);null!=s&&s<=3&&(e.passwordStrengthMap.set(n.id,e.scoreKey(s)),l.push(n))}}),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l.prototype.scoreKey=function(n){switch(n){case 4:return["strong","success"];case 3:return["good","primary"];case 2:return["weak","warning"];default:return["veryWeak","danger"]}},l}(e(227).CipherReportComponent);l.WeakPasswordsReportComponent=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(l.push(n),t.exposedPasswordMap.set(n.id,e))});e.push(u)}}),[4,Promise.all(e)];case 2:return u.sent(),this.ciphers=l,[2]}})})},l.prototype.getAllCiphers=function(){return this.cipherService.getAllDecrypted()},l}(e(227).CipherReportComponent);l.ExposedPasswordsReportComponent=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?[4,this.getAllCiphers()]:[3,6];case 4:return n=o.sent(),l=[],e=[],t=new Map,n.forEach(function(n){if(n.type===r.CipherType.Login&&(null==n.login.totp||""===n.login.totp)&&n.login.hasUris)for(var e=0;e0?[2]:[4,fetch(new Request("https://twofactorauth.org/data.json"))];case 1:if(200!==(n=o.sent()).status)throw new Error;return[4,n.json()];case 2:for(e in l=o.sent())if(l.hasOwnProperty(e))for(u in t=l[e])t.hasOwnProperty(u)&&(r=t[u]).tfa&&null!=r.url&&null!=(a=i.Utils.getHostname(r.url))&&this.services.set(a,r.doc);return[2]}})})},l}(e(227).CipherReportComponent);l.InactiveTwoFactorReportComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(){}return n.prototype.transform=function(n,l,e,t,u){return null==n||0===n.length?[]:null==l||l.length<2?n:(l=l.trim().toLowerCase(),n.filter(function(n){return null!=e&&null!=n[e]&&n[e].toString().toLowerCase().indexOf(l)>-1||(null!=t&&null!=n[t]&&n[t].toString().toLowerCase().indexOf(l)>-1||null!=u&&null!=n[u]&&n[u].toString().toLowerCase().indexOf(l)>-1)}))},n}();l.SearchPipe=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.id=n,this.readOnly=l}}();l.SelectionReadOnlyRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.readOnly=n.ReadOnly}}();l.SelectionReadOnlyResponse=t},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.NotificationsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SettingsService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(9);var t=function(){function n(n){this.platformUtilsService=n}return n.prototype.ngOnInit=function(){this.version=this.platformUtilsService.getApplicationVersion(),document.body.classList.add("layout_frontend")},n.prototype.ngOnDestroy=function(){document.body.classList.remove("layout_frontend")},n}();l.FrontendLayoutComponent=t},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(this.email=t.email),null!=t.premium?this.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=t.org&&this.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:t.org}}),[4,n.prototype.ngOnInit.call(this)];case 1:return e.sent(),l.unsubscribe(),[2]}})})}),[2]})})},l.prototype.goAfterLogIn=function(){return u(this,void 0,void 0,function(){var n,l;return o(this,function(e){switch(e.label){case 0:return[4,this.stateService.get("orgInvitation")];case 1:return null==(n=e.sent())?[3,2]:(this.router.navigate(["accept-organization"],{queryParams:n}),[3,6]);case 2:return[4,this.stateService.get("loginRedirect")];case 3:return null==(l=e.sent())?[3,5]:(this.router.navigate([l.route],{queryParams:l.qParams}),[4,this.stateService.remove("loginRedirect")]);case 4:return e.sent(),[3,6];case 5:this.router.navigate([this.successRoute]),e.label=6;case 6:return[2]}})})},l}(e(757).LoginComponent);l.LoginComponent=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n.email=e.email),null!=e.premium?n.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=e.org&&(n.showCreateOrgMessage=!0,n.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:e.org}})),l.unsubscribe()})},l}(e(777).RegisterComponent);l.RegisterComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.PBKDF2_SHA256=0]="PBKDF2_SHA256"}(l.KdfType||(l.KdfType={}))},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(10),e(5),e(3),e(9);var u=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u)||this}return t(l,n),l}(e(780).HintComponent);l.HintComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1})];case 1:return l.sent(),this.clearFilters(),this.collectionId=n,this.go(),[2]}})})},n.prototype.filterSearchText=function(n){this.ciphersComponent.searchText=n,this.ciphersComponent.search(200)},n.prototype.editCipherAttachments=function(n){return t(this,void 0,void 0,function(){var l,e,r,i,s,d=this;return u(this,function(c){switch(c.label){case 0:return[4,this.userService.canAccessPremium()];case 1:return l=c.sent(),null!=n.organizationId||l?[3,2]:(this.messagingService.send("premiumRequired"),[2]);case 2:return null==n.organizationId?[3,4]:[4,this.userService.getOrganization(n.organizationId)];case 3:if(null!=(e=c.sent())&&(null==e.maxStorageGb||0===e.maxStorageGb))return this.messagingService.send("upgradeOrganization",{organizationId:n.organizationId}),[2];c.label=4;case 4:return null!=this.modal&&this.modal.close(),r=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.attachmentsModalRef.createComponent(r).instance,(i=this.modal.show(a.AttachmentsComponent,this.attachmentsModalRef)).cipherId=n.id,s=!1,i.onUploadedAttachment.subscribe(function(){return s=!0}),i.onDeletedAttachment.subscribe(function(){return s=!0}),i.onReuploadedAttachment.subscribe(function(){return s=!0}),this.modal.onClosed.subscribe(function(){return t(d,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal=null,s?[4,this.ciphersComponent.refresh()]:[3,2];case 1:n.sent(),n.label=2;case 2:return s=!1,[2]}})})}),[2]}})})},n.prototype.shareCipher=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.shareModalRef.createComponent(e).instance;var r=this.modal.show(v.ShareComponent,this.shareModalRef);r.cipherId=n.id,r.onSharedCipher.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})},n.prototype.editCipherCollections=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var r=this.modal.show(p.CollectionsComponent,this.collectionsModalRef);r.cipherId=n.id,r.onSavedCollections.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})},n.prototype.addFolder=function(){return t(this,void 0,void 0,function(){var n,l,e=this;return u(this,function(r){return null!=this.modal&&this.modal.close(),n=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.folderAddEditModalRef.createComponent(n).instance,(l=this.modal.show(f.FolderAddEditComponent,this.folderAddEditModalRef)).folderId=null,l.onSavedFolder.subscribe(function(){return t(e,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.groupingsComponent.loadFolders()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){e.modal=null}),[2]})})},n.prototype.editFolder=function(n){return t(this,void 0,void 0,function(){var l,e,r=this;return u(this,function(i){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.folderAddEditModalRef.createComponent(l).instance,(e=this.modal.show(f.FolderAddEditComponent,this.folderAddEditModalRef)).folderId=n,e.onSavedFolder.subscribe(function(){return t(r,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.groupingsComponent.loadFolders()];case 1:return n.sent(),[2]}})})}),e.onDeletedFolder.subscribe(function(){return t(r,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.groupingsComponent.loadFolders()];case 1:return n.sent(),[4,this.filterFolder("none")];case 2:return n.sent(),this.groupingsComponent.selectedFolderId=null,[2]}})})}),this.modal.onClosed.subscribe(function(){r.modal=null}),[2]})})},n.prototype.addCipher=function(){var n=this,l=this.editCipher(null);if(l.type=this.type,l.folderId="none"===this.folderId?null:this.folderId,null!=this.collectionId){var e=this.groupingsComponent.collections.filter(function(l){return l.id===n.collectionId});e.length>0&&(l.organizationId=e[0].organizationId,l.collectionIds=[this.collectionId])}},n.prototype.editCipher=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var r=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return r.cipherId=null==n?null:n.id,r.onSavedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),r.onDeletedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){l.modal=null}),r},n.prototype.bulkDelete=function(){var n=this,l=this.ciphersComponent.getSelectedIds();if(0!==l.length){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.bulkDeleteModalRef.createComponent(e).instance;var r=this.modal.show(s.BulkDeleteComponent,this.bulkDeleteModalRef);r.cipherIds=l,r.onDeleted.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){n.modal=null})}else this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nothingSelected"))},n.prototype.bulkShare=function(){var n=this,l=this.ciphersComponent.getSelected();if(0!==l.length){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.bulkShareModalRef.createComponent(e).instance;var r=this.modal.show(c.BulkShareComponent,this.bulkShareModalRef);r.ciphers=l,r.onShared.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})}else this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nothingSelected"))},n.prototype.bulkMove=function(){var n=this,l=this.ciphersComponent.getSelectedIds();if(0!==l.length){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.bulkMoveModalRef.createComponent(e).instance;var r=this.modal.show(d.BulkMoveComponent,this.bulkMoveModalRef);r.cipherIds=l,r.onMoved.subscribe(function(){return t(n,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){n.modal=null})}else this.toasterService.popAsync("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nothingSelected"))},n.prototype.selectAll=function(n){this.ciphersComponent.selectAll(n)},n.prototype.updateKey=function(){var n=this;null!=this.modal&&this.modal.close();var l=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.updateKeyModalRef.createComponent(l).instance,this.modal.show(r.UpdateKeyComponent,this.updateKeyModalRef),this.modal.onClosed.subscribe(function(){n.modal=null})},n.prototype.clearFilters=function(){this.folderId=null,this.collectionId=null,this.favorites=!1,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={favorites:!!this.favorites||null,type:this.type,folderId:this.folderId,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=h},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(l){var e=n.call(this,l)||this;return e.id=l.id,e}return t(l,n),l}(e(182).CipherRequest);l.CipherWithIdRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.name=n.name?n.name.encryptedString:null}}();l.FolderRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Domain=0]="Domain",n[n.Host=1]="Host",n[n.StartsWith=2]="StartsWith",n[n.Exact=3]="Exact",n[n.RegularExpression=4]="RegularExpression",n[n.Never=5]="Never"}(l.UriMatchType||(l.UriMatchType={}))},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.viewEvents(o[0]),e.unsubscribe(),[2]}})})}),[2]}})})})},n.prototype.ngOnDestroy=function(){this.broadcasterService.unsubscribe("OrgVaultComponent")},n.prototype.clearGroupingFilters=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchVault"),[4,this.ciphersComponent.applyFilter()];case 1:return n.sent(),this.clearFilters(),this.go(),[2]}})})},n.prototype.filterCipherType=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchType"),e=function(l){return l.type===n},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.type=n,this.go(),[2]}})})},n.prototype.filterCollection=function(n,l){return void 0===l&&(l=!1),t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return this.ciphersComponent.showAddNew=!0,this.groupingsComponent.searchPlaceholder=this.i18nService.t("searchCollection"),e=function(l){return"unassigned"===n?null==l.collectionIds||0===l.collectionIds.length:null!=l.collectionIds&&l.collectionIds.indexOf(n)>-1},l?[4,this.ciphersComponent.load(e)]:[3,2];case 1:return t.sent(),[3,4];case 2:return[4,this.ciphersComponent.applyFilter(e)];case 3:t.sent(),t.label=4;case 4:return this.clearFilters(),this.collectionId=n,this.go(),[2]}})})},n.prototype.filterSearchText=function(n){this.ciphersComponent.searchText=n,this.ciphersComponent.search(200)},n.prototype.editCipherAttachments=function(n){var l=this;if(null!=this.organization.maxStorageGb&&0!==this.organization.maxStorageGb){null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.attachmentsModalRef.createComponent(e).instance;var r=this.modal.show(a.AttachmentsComponent,this.attachmentsModalRef);r.organization=this.organization,r.cipherId=n.id;var i=!1;r.onUploadedAttachment.subscribe(function(){return i=!0}),r.onDeletedAttachment.subscribe(function(){return i=!0}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal=null,i?[4,this.ciphersComponent.refresh()]:[3,2];case 1:n.sent(),n.label=2;case 2:return i=!1,[2]}})})})}else this.messagingService.send("upgradeOrganization",{organizationId:n.organizationId})},n.prototype.editCipherCollections=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.collectionsModalRef.createComponent(e).instance;var r=this.modal.show(s.CollectionsComponent,this.collectionsModalRef);this.organization.isAdmin&&(r.collectionIds=n.collectionIds,r.collections=this.groupingsComponent.collections.filter(function(n){return!n.readOnly})),r.organization=this.organization,r.cipherId=n.id,r.onSavedCollections.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){return t(l,void 0,void 0,function(){return u(this,function(n){return this.modal=null,[2]})})})},n.prototype.addCipher=function(){var n=this.editCipher(null);n.organizationId=this.organization.id,n.type=this.type,this.organization.isAdmin&&(n.collections=this.groupingsComponent.collections.filter(function(n){return!n.readOnly})),null!=this.collectionId&&(n.collectionIds=[this.collectionId])},n.prototype.editCipher=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent);this.modal=this.cipherAddEditModalRef.createComponent(e).instance;var r=this.modal.show(i.AddEditComponent,this.cipherAddEditModalRef);return r.organization=this.organization,r.cipherId=null==n?null:n.id,r.onSavedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),r.onDeletedCipher.subscribe(function(n){return t(l,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.modal.close(),[4,this.ciphersComponent.refresh()];case 1:return n.sent(),[2]}})})}),this.modal.onClosed.subscribe(function(){l.modal=null}),r},n.prototype.viewEvents=function(n){return t(this,void 0,void 0,function(){var l,e,t=this;return u(this,function(u){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(o.ModalComponent),this.modal=this.eventsModalRef.createComponent(l).instance,(e=this.modal.show(r.EntityEventsComponent,this.eventsModalRef)).name=n.name,e.organizationId=this.organization.id,e.entityId=n.id,e.showUser=!0,e.entity="cipher",this.modal.onClosed.subscribe(function(){t.modal=null}),[2]})})},n.prototype.clearFilters=function(){this.collectionId=null,this.type=null},n.prototype.go=function(n){void 0===n&&(n=null),null==n&&(n={type:this.type,collectionId:this.collectionId}),this.router.navigate([],{relativeTo:this.route,queryParams:n,replaceUrl:!0})},n}());l.VaultComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?this.events=this.events.concat(o):this.events=o,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EntityEventsComponent=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&this.collections.splice(l,1)},n}();l.CollectionsComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&l.forEach(function(l){var e=n.data.filter(function(n){return n.id===l});null!=e&&e.length>0&&(e[0].checked=!0)}),[3,5];case 3:return"collection"!==this.entity?[3,5]:[4,this.apiService.getCollectionUsers(this.organizationId,this.entityId)];case 4:null!=(l=t.sent())&&n.data.length>0&&l.forEach(function(l){var e=n.data.filter(function(n){return!n.accessAll&&n.id===l.id});null!=e&&e.length>0&&(e[0].checked=!0,e[0].readOnly=l.readOnly)}),t.label=5;case 5:return this.allUsers.forEach(function(n){"collection"===e.entity&&n.accessAll&&(n.checked=!0),n.checked&&e.selectedCount++}),[2]}})})},n.prototype.check=function(n){"collection"===this.entity&&n.accessAll||(n.checked=!n.checked,this.selectedChanged(n))},n.prototype.selectedChanged=function(n){n.checked?this.selectedCount++:("collection"===this.entity&&(n.readOnly=!1),this.selectedCount--)},n.prototype.filterSelected=function(n){this.showSelected=n},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return l.trys.push([0,2,,3]),"group"===this.entity?(n=this.users.filter(function(n){return n.checked}).map(function(n){return n.id}),this.formPromise=this.apiService.putGroupUsers(this.organizationId,this.entityId,n)):(n=this.users.filter(function(n){return n.checked&&!n.accessAll}).map(function(n){return new a.SelectionReadOnlyRequest(n.id,!!n.readOnly)}),this.formPromise=this.apiService.putCollectionUsers(this.organizationId,this.entityId,n)),[4,this.formPromise];case 1:return l.sent(),this.analytics.eventTrack.next({action:"group"===this.entity?"Edited Group Users":"Edited Collection Users"}),this.toasterService.popAsync("success",null,this.i18nService.t("updatedUsers")),this.onEditedUsers.emit(),[3,3];case 2:return l.sent(),[3,3];case 3:return[2]}})})},n}();l.EntityUsersComponent=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?this.events=this.events.concat(o):this.events=o,this.loading=!1,this.morePromise=null,this.refreshPromise=null,[2]}})})},n}();l.EventsComponent=o},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?n.data:[]).sort(o.Utils.getSortFunction(this.i18nService,"name")),this.groups=l,this.loading=!1,[2]}})})},n.prototype.edit=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent);this.modal=this.addEditModalRef.createComponent(e).instance;var t=this.modal.show(a.GroupAddEditComponent,this.addEditModalRef);t.organizationId=this.organizationId,t.groupId=null!=n?n.id:null,t.onSavedGroup.subscribe(function(){l.modal.close(),l.load()}),t.onDeletedGroup.subscribe(function(){l.modal.close(),l.removeGroup(n)}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.add=function(){this.edit(null)},n.prototype.delete=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteGroupConfirmation"),n.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!l.sent())return[2,!1];l.label=2;case 2:return l.trys.push([2,4,,5]),[4,this.apiService.deleteGroup(this.organizationId,n.id)];case 3:return l.sent(),this.analytics.eventTrack.next({action:"Deleted Group"}),this.toasterService.popAsync("success",null,this.i18nService.t("deletedGroupId",n.name)),this.removeGroup(n),[3,5];case 4:return l.sent(),[3,5];case 5:return[2]}})})},n.prototype.users=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(r.ModalComponent);this.modal=this.usersModalRef.createComponent(e).instance;var t=this.modal.show(i.EntityUsersComponent,this.usersModalRef);t.organizationId=this.organizationId,t.entity="group",t.entityId=n.id,t.entityName=n.name,t.onEditedUsers.subscribe(function(){l.modal.close()}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.removeGroup=function(n){var l=this.groups.indexOf(n);l>-1&&this.groups.splice(l,1)},n}();l.GroupsComponent=s},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&l[0].status===i.OrganizationUserStatusType.Confirmed&&this.events(l[0]),e.unsubscribe(),[2]})})}),[2]}})})}),[2]})})},n.prototype.load=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return[4,this.apiService.getOrganizationUsers(this.organizationId)];case 1:return n=e.sent(),this.statusMap.clear(),this.allUsers=null!=n.data&&n.data.length>0?n.data:[],this.allUsers.sort(s.Utils.getSortFunction(this.i18nService,"email")),this.allUsers.forEach(function(n){l.statusMap.has(n.status)?l.statusMap.get(n.status).push(n):l.statusMap.set(n.status,[n])}),this.filter(this.status),this.loading=!1,[2]}})})},n.prototype.filter=function(n){this.status=n,null!=this.status?this.users=this.statusMap.get(this.status):this.users=this.allUsers},Object.defineProperty(n.prototype,"invitedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Invited)?this.statusMap.get(i.OrganizationUserStatusType.Invited).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"acceptedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Accepted)?this.statusMap.get(i.OrganizationUserStatusType.Accepted).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"confirmedCount",{get:function(){return this.statusMap.has(i.OrganizationUserStatusType.Confirmed)?this.statusMap.get(i.OrganizationUserStatusType.Confirmed).length:0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"showConfirmUsers",{get:function(){return null!=this.allUsers&&null!=this.statusMap&&this.allUsers.length>1&&this.confirmedCount>0&&this.confirmedCount<3&&this.acceptedCount>0},enumerable:!0,configurable:!0}),n.prototype.edit=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.addEditModalRef.createComponent(e).instance;var t=this.modal.show(p.UserAddEditComponent,this.addEditModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close(),l.load()}),t.onDeletedUser.subscribe(function(){l.modal.close(),l.removeUser(n)}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.invite=function(){this.edit(null)},n.prototype.groups=function(n){var l=this;null!=this.modal&&this.modal.close();var e=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent);this.modal=this.groupsModalRef.createComponent(e).instance;var t=this.modal.show(v.UserGroupsComponent,this.groupsModalRef);t.name=null!=n?n.name||n.email:null,t.organizationId=this.organizationId,t.organizationUserId=null!=n?n.id:null,t.onSavedUser.subscribe(function(){l.modal.close()}),this.modal.onClosed.subscribe(function(){l.modal=null})},n.prototype.remove=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("removeUserConfirmation"),n.name||n.email,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!l.sent())return[2,!1];l.label=2;case 2:return l.trys.push([2,4,,5]),[4,this.apiService.deleteOrganizationUser(this.organizationId,n.id)];case 3:return l.sent(),this.analytics.eventTrack.next({action:"Deleted User"}),this.toasterService.popAsync("success",null,this.i18nService.t("removedUserId",n.name||n.email)),this.removeUser(n),[3,5];case 4:return l.sent(),[3,5];case 5:return[2]}})})},n.prototype.reinvite=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return null!=this.actionPromise?[2]:(this.actionPromise=this.apiService.postOrganizationUserReinvite(this.organizationId,n.id),[4,this.actionPromise]);case 1:return l.sent(),this.analytics.eventTrack.next({action:"Reinvited User"}),this.toasterService.popAsync("success",null,this.i18nService.t("hasBeenReinvited",n.name||n.email)),this.actionPromise=null,[2]}})})},n.prototype.confirm=function(n){return t(this,void 0,void 0,function(){function l(l){n.status=i.OrganizationUserStatusType.Confirmed;var e=l.statusMap.get(i.OrganizationUserStatusType.Accepted).indexOf(n);e>-1&&(l.statusMap.get(i.OrganizationUserStatusType.Accepted).splice(e,1),l.statusMap.get(i.OrganizationUserStatusType.Confirmed).push(n))}var e,t,r,a=this;return u(this,function(u){switch(u.label){case 0:return null!=this.actionPromise?[2]:[4,this.storageService.get(o.ConstantsService.autoConfirmFingerprints)];case 1:return null!=(e=u.sent())&&e?(this.actionPromise=this.doConfirmation(n),[4,this.actionPromise]):(null!=this.modal&&this.modal.close(),t=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent),this.modal=this.groupsModalRef.createComponent(t).instance,(r=this.modal.show(f.UserConfirmComponent,this.confirmModalRef)).name=null!=n?n.name||n.email:null,r.organizationId=this.organizationId,r.organizationUserId=null!=n?n.id:null,r.userId=null!=n?n.userId:null,r.onConfirmedUser.subscribe(function(){a.modal.close(),l(a)}),this.modal.onClosed.subscribe(function(){a.modal=null}),[2]);case 2:return u.sent(),l(this),this.analytics.eventTrack.next({action:"Confirmed User"}),this.toasterService.popAsync("success",null,this.i18nService.t("hasBeenConfirmed",n.name||n.email)),this.actionPromise=null,[2]}})})},n.prototype.events=function(n){return t(this,void 0,void 0,function(){var l,e,t=this;return u(this,function(u){return null!=this.modal&&this.modal.close(),l=this.componentFactoryResolver.resolveComponentFactory(d.ModalComponent),this.modal=this.eventsModalRef.createComponent(l).instance,(e=this.modal.show(c.EntityEventsComponent,this.eventsModalRef)).name=n.name||n.email,e.organizationId=this.organizationId,e.entityId=n.id,e.showUser=!1,e.entity="user",this.modal.onClosed.subscribe(function(){t.modal=null}),[2]})})},n.prototype.doConfirmation=function(n){return t(this,void 0,void 0,function(){var l,e,t,o,i,a,d,c;return u(this,function(u){switch(u.label){case 0:return[4,this.cryptoService.getOrgKey(this.organizationId)];case 1:return l=u.sent(),[4,this.apiService.getUserPublicKey(n.userId)];case 2:e=u.sent(),t=s.Utils.fromB64ToArray(e.publicKey),u.label=3;case 3:return u.trys.push([3,5,,6]),i=(o=console).log,a="User's fingerprint: ",[4,this.cryptoService.getFingerprint(n.userId,t.buffer)];case 4:return i.apply(o,[a+u.sent().join("-")]),[3,6];case 5:return u.sent(),[3,6];case 6:return[4,this.cryptoService.rsaEncrypt(l.key,t.buffer)];case 7:return d=u.sent(),(c=new r.OrganizationUserConfirmRequest).key=d.encryptedString,[4,this.apiService.postOrganizationUserConfirm(this.organizationId,n.id,c)];case 8:return u.sent(),[2]}})})},n.prototype.removeUser=function(n){var l=this.users.indexOf(n);l>-1&&this.users.splice(l,1),this.statusMap.has(i.OrganizationUserStatusType.Accepted)&&(l=this.statusMap.get(i.OrganizationUserStatusType.Accepted).indexOf(n))>-1&&this.statusMap.get(i.OrganizationUserStatusType.Accepted).splice(l,1),this.statusMap.has(i.OrganizationUserStatusType.Invited)&&(l=this.statusMap.get(i.OrganizationUserStatusType.Invited).indexOf(n))>-1&&this.statusMap.get(i.OrganizationUserStatusType.Invited).splice(l,1),this.statusMap.has(i.OrganizationUserStatusType.Confirmed)&&(l=this.statusMap.get(i.OrganizationUserStatusType.Confirmed).indexOf(n))>-1&&this.statusMap.get(i.OrganizationUserStatusType.Confirmed).splice(l,1)},n}();l.PeopleComponent=h},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]"}),e.body=t,e.bodyOutputType=i.BodyOutputType.TrustedHtml}null!=n.options&&(!0===n.options.trustedHtml&&(e.bodyOutputType=i.BodyOutputType.TrustedHtml),null!=n.options.timeout&&n.options.timeout>0&&(e.timeout=n.options.timeout)),this.toasterService.popAsync(e)},n.prototype.idleStateChanged=function(){this.isIdle?this.notificationsService.disconnectFromInactivity():this.notificationsService.reconnectFromActivity()},n}();l.AppComponent=p},,,,,function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(10),e(90),e(3),e(9);var u=function(n){function l(l,e,t,u){return n.call(this,l,e,t,u,window)||this}return t(l,n),l}(e(768).TwoFactorOptionsComponent);l.TwoFactorOptionsComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(l,e){var t=n.call(this)||this;return t.masterPasswordHash=e,t.email=l,t}return t(l,n),l}(e(72).PasswordVerificationRequest);l.TwoFactorEmailRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.publicKey=n,this.encryptedPrivateKey=l}}();l.KeysRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(439),r=e(3),i=t.ɵcrt({encapsulation:2,styles:[],data:{}});function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "]))],null,function(n,l){n(l,1,0,l.component.text)})}function s(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["role","progressbar"]],[[8,"className",0],[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(3,278528,null,0,u.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(4,{width:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,a)),t.ɵdid(7,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,n(l,4,0,e.scoreWidth+"%")),n(l,7,0,e.showText&&e.text)},function(n,l){var e=l.component;n(l,2,0,t.ɵinlineInterpolate(1,"progress-bar ",e.color,""),t.ɵinlineInterpolate(1,"",e.scoreWidth,""))})}function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-strength",[],null,null,null,s,i)),t.ɵdid(1,573440,null,0,o.PasswordStrengthComponent,[r.I18nService],null,null)],null,null)}l.RenderType_PasswordStrengthComponent=i,l.View_PasswordStrengthComponent_0=s,l.View_PasswordStrengthComponent_Host_0=d;var c=t.ɵccf("app-password-strength",o.PasswordStrengthComponent,d,{score:"score",showText:"showText"},{},[]);l.PasswordStrengthComponentNgFactory=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(99),o=e(157),r=e(137),i=e(41),a=e(103),s=e(30),d=e(7),c=e(3),p=e(4),f=e(10),v=e(449),h=e(20),g=e(9),m=e(70),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"div",[["appStopProp",""],["class","dropdown-item-text d-flex align-items-center"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"app-avatar",[["fontSize","14"],["size","25"]],null,null,null,o.View_AvatarComponent_0,o.RenderType_AvatarComponent)),t.ɵdid(4,638976,null,0,r.AvatarComponent,[i.DomSanitizer,a.CryptoFunctionService,s.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"div",[["class","ml-2 overflow-hidden"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.name,e.email,"25","14",!0)},function(n,l){var e=l.component;n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"loggedInAs"))),n(l,13,0,e.name)})}function b(n){return t.ɵvid(0,[t.ɵpid(0,d.I18nPipe,[c.I18nService]),(n()(),t.ɵeld(1,0,null,null,104,"nav",[["class","navbar navbar-expand navbar-dark bg-primary"]],null,null,null,null,null)),t.ɵdid(2,278528,null,0,p.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(3,{"bg-secondary-alt":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,99,"div",[["class","container"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,5,"a",[["class","navbar-brand"],["routerLink","/"]],[[8,"title",0],[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,8).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(8,671744,null,0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵppd(9,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,0,"i",[["class","fa fa-shield"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,37,"div",[["class","collapse navbar-collapse"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,34,"ul",[["class","navbar-nav"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,9,"li",[["class","nav-item"],["routerLinkActive","active"]],null,null,null,null,null)),t.ɵdid(19,1720320,null,2,f.RouterLinkActive,[f.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,3,"a",[["class","nav-link"],["routerLink","/vault"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[2,4]],0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,9,"li",[["class","nav-item"],["routerLinkActive","active"]],null,null,null,null,null)),t.ɵdid(30,1720320,null,2,f.RouterLinkActive,[f.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,3,"a",[["class","nav-link"],["routerLink","/tools"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,35).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(35,671744,[[4,4]],0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"li",[["class","nav-item"],["routerLinkActive","active"]],null,null,null,null,null)),t.ɵdid(41,1720320,null,2,f.RouterLinkActive,[f.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,3,"a",[["class","nav-link"],["routerLink","/settings"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,46).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(46,671744,[[6,4]],0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,50,"ul",[["class","navbar-nav flex-row ml-md-auto d-none d-md-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,47,"li",[["class","nav-item dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,3,"a",[["aria-expanded","false"],["aria-haspopup","true"],["class","nav-item nav-link dropdown-toggle"],["data-toggle","dropdown"],["href","#"],["id","nav-profile"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,0,"i",[["class","fa fa-user-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,39,"div",[["aria-labelledby","nav-profile"],["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(65,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,0,"div",[["class","dropdown-divider"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,5,"a",[["class","dropdown-item"],["href","#"],["routerLink","/settings/account"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,70).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(70,671744,null,0,f.RouterLinkWithHref,[f.Router,f.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,0,"i",[["class","fa fa-fw fa-user"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["\n ","\n "])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,4,"a",[["class","dropdown-item"],["href","https://help.bitwarden.com"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(78,0,null,null,0,"i",[["class","fa fa-fw fa-question-circle"]],null,null,null,null,null)),(n()(),t.ɵted(79,null,["\n ","\n "])),t.ɵppd(80,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,4,"a",[["class","dropdown-item"],["href","https://bitwarden.com#download"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,0,"i",[["class","fa fa-fw fa-download"]],null,null,null,null,null)),(n()(),t.ɵted(85,null,["\n ","\n "])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,0,"div",[["class","dropdown-divider"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,4,"button",[["class","dropdown-item"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.lock()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,0,null,null,0,"i",[["class","fa fa-fw fa-lock"]],null,null,null,null,null)),(n()(),t.ɵted(93,null,["\n ","\n "])),t.ɵppd(94,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,4,"button",[["class","dropdown-item"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.logOut()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(98,0,null,null,0,"i",[["class","fa fa-fw fa-sign-out"]],null,null,null,null,null)),(n()(),t.ɵted(99,null,["\n ","\n "])),t.ɵppd(100,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,2,0,"navbar navbar-expand navbar-dark bg-primary",n(l,3,0,e.selfHosted));n(l,8,0,"/");n(l,19,0,"active");n(l,24,0,"/vault");n(l,30,0,"active");n(l,35,0,"/tools");n(l,41,0,"active");n(l,46,0,"/settings"),n(l,65,0,e.name);n(l,70,0,"/settings/account")},function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,7,0,n(l,9,0,t.ɵnov(l,0),"pageTitle","Bitwarden")),""),t.ɵnov(l,8).target,t.ɵnov(l,8).href),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"myVault"))),n(l,34,0,t.ɵnov(l,35).target,t.ɵnov(l,35).href),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"tools"))),n(l,45,0,t.ɵnov(l,46).target,t.ɵnov(l,46).href),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"settings"))),n(l,69,0,t.ɵnov(l,70).target,t.ɵnov(l,70).href),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"myAccount"))),n(l,79,0,t.ɵunv(l,79,0,n(l,80,0,t.ɵnov(l,0),"getHelp"))),n(l,85,0,t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"getApps"))),n(l,93,0,t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"lockNow"))),n(l,99,0,t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l,0),"logOut")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-navbar",[],null,null,null,b,y)),t.ɵdid(1,114688,null,0,v.NavbarComponent,[h.MessagingService,g.PlatformUtilsService,m.TokenService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_NavbarComponent=y,l.View_NavbarComponent_0=b,l.View_NavbarComponent_Host_0=w;var S=t.ɵccf("app-navbar",v.NavbarComponent,w,{},{},[]);l.NavbarComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(450),i=e(9),a=t.ɵcrt({encapsulation:2,styles:[],data:{}});function s(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,13,"div",[["class","container footer text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,1,"div",[["class","col"]],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n © ",", 8bit Solutions LLC\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"div",[["class","col text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"div",[["class","col text-right"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){var e=l.component;n(l,6,0,e.year),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"versionNumber",e.version)))})}function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-footer",[],null,null,null,s,a)),t.ɵdid(1,114688,null,0,r.FooterComponent,[i.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_FooterComponent=a,l.View_FooterComponent_0=s,l.View_FooterComponent_Host_0=d;var c=t.ɵccf("app-footer",r.FooterComponent,d,{},{},[]);l.FooterComponentNgFactory=c},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(this.organizationId=this.organizations[0].id),this.filterCollections(),[2]}})})},n.prototype.ngOnDestroy=function(){this.selectAll(!1)},n.prototype.filterCollections=function(){var n=this;this.selectAll(!1),null==this.organizationId||0===this.writeableCollections.length?this.collections=[]:this.collections=this.writeableCollections.filter(function(l){return l.organizationId===n.organizationId})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:n=this.collections.filter(function(n){return n.checked}).map(function(n){return n.id}),l.label=1;case 1:return l.trys.push([1,3,,4]),this.formPromise=this.cipherService.shareManyWithServer(this.shareableCiphers,this.organizationId,n),[4,this.formPromise];case 2:return l.sent(),this.onShared.emit(),this.analytics.eventTrack.next({action:"Bulk Shared Items"}),this.toasterService.popAsync("success",null,this.i18nService.t("sharedItems")),[3,4];case 3:return l.sent(),[3,4];case 4:return[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l},n.prototype.selectAll=function(n){var l=this;(n?this.collections:this.writeableCollections).forEach(function(e){return l.check(e,n)})},Object.defineProperty(n.prototype,"canSave",{get:function(){if(null!=this.shareableCiphers&&this.shareableCiphers.length>0&&null!=this.collections)for(var n=0;n0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n=n.concat(this.email.substr(0,l).trim().toLowerCase().split(/[^A-Za-z0-9]/))),n},n.prototype.updateKey=function(n,l){return t(this,void 0,void 0,function(){var e,t,i,s,d,c,p,f,v;return u(this,function(u){switch(u.label){case 0:return[4,this.cryptoService.makeEncKey(n)];case 1:return e=u.sent(),[4,this.cryptoService.getPrivateKey()];case 2:return t=u.sent(),i=null,null==t?[3,4]:[4,this.cryptoService.encrypt(t,e[0])];case 3:i=u.sent(),u.label=4;case 4:return(s=new a.UpdateKeyRequest).privateKey=null!=i?i.encryptedString:null,s.key=e[1].encryptedString,s.masterPasswordHash=l,[4,this.folderService.getAllDecrypted()];case 5:d=u.sent(),f=0,u.label=6;case 6:return f0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]

'+this.i18nService.t("twoFactorRecoveryYourCode")+":

"+this.code+'

'+new Date+"

"),n.print(),n.close()},n.prototype.formatString=function(n){return null==n?null:n.replace(/(.{4})/g,"$1 ").trim().toUpperCase()},n.prototype.processResponse=function(n){this.code=this.formatString(n.code)},n}();l.TwoFactorRecoveryComponent=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0)return e.keysConfiguredCount++,e.keys.push({id:l,name:t[0].name,configured:!0,compromised:t[0].compromised,removePromise:null}),"continue"}e.keys.push({id:l,name:null,configured:!1,compromised:!1,removePromise:null}),null==e.keyIdAvailable&&(e.keyIdAvailable=l)},e=this,t=1;t<=5;t++)l(t);this.enabled=n.enabled},l}(e(224).TwoFactorBaseComponent);l.TwoFactorU2fComponent=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?this.keys[0].key:null,e.key2=null!=this.keys&&this.keys.length>1?this.keys[1].key:null,e.key3=null!=this.keys&&this.keys.length>2?this.keys[2].key:null,e.key4=null!=this.keys&&this.keys.length>3?this.keys[3].key:null,e.key5=null!=this.keys&&this.keys.length>4?this.keys[4].key:null,e.nfc=this.nfc,n.prototype.enable.call(this,function(){return u(l,void 0,void 0,function(){var n;return o(this,function(l){switch(l.label){case 0:return this.formPromise=this.apiService.putTwoFactorYubiKey(e),[4,this.formPromise];case 1:return n=l.sent(),[4,this.processResponse(n)];case 2:return l.sent(),this.toasterService.popAsync("success",null,this.i18nService.t("yubikeysUpdated")),[2]}})})})},l.prototype.disable=function(){return n.prototype.disable.call(this,this.disablePromise)},l.prototype.remove=function(n){n.existingKey=null,n.key=null},l.prototype.processResponse=function(n){this.enabled=n.enabled,this.keys=[{key:n.key1,existingKey:this.padRight(n.key1)},{key:n.key2,existingKey:this.padRight(n.key2)},{key:n.key3,existingKey:this.padRight(n.key3)},{key:n.key4,existingKey:this.padRight(n.key4)},{key:n.key5,existingKey:this.padRight(n.key5)}],this.nfc=n.nfc||!n.enabled},l.prototype.padRight=function(n,l,e){if(void 0===l&&(l="•"),void 0===e&&(e=44),null==n||null==l||n.length>=e)return n;for(var t=(e-n.length)/l.length,u=0;u":t=">",u=!0}var o="letter";u||t.match(/[^\w ]/)?o="special":t.match(/\d/)&&(o="number"),l+=''+t+""}return l},n}();l.ColorPasswordPipe=t},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});e(3),e(61),e(9);var u=function(n){function l(l,e,t){return n.call(this,l,e,t,window)||this}return t(l,n),l}(e(840).PasswordGeneratorHistoryComponent);l.PasswordGeneratorHistoryComponent=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.id=n.id,this.url=n.url,this.fileName=n.fileName,this.key=n.key,this.size=n.size,this.sizeName=n.sizeName)}}();l.AttachmentData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.cardholderName=n.cardholderName,this.brand=n.brand,this.number=n.number,this.expMonth=n.expMonth,this.expYear=n.expYear,this.code=n.code)}}();l.CardData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.type=n.type,this.name=n.name,this.value=n.value)}}();l.FieldData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.title=n.title,this.firstName=n.firstName,this.middleName=n.middleName,this.lastName=n.lastName,this.address1=n.address1,this.address2=n.address2,this.address3=n.address3,this.city=n.city,this.state=n.state,this.postalCode=n.postalCode,this.country=n.country,this.company=n.company,this.email=n.email,this.phone=n.phone,this.ssn=n.ssn,this.username=n.username,this.passportNumber=n.passportNumber,this.licenseNumber=n.licenseNumber)}}();l.IdentityData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(569),u=function(){return function(n){var l=this;null!=n&&(this.username=n.username,this.password=n.password,this.passwordRevisionDate=n.passwordRevisionDate,this.totp=n.totp,n.uris&&(this.uris=[],n.uris.forEach(function(n){l.uris.push(new t.LoginUriData(n))})))}}();l.LoginData=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.match=null,null!=n&&(this.uri=n.uri,this.match=n.match)}}();l.LoginUriData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.password=n.password,this.lastUsedDate=n.lastUsedDate)}}();l.PasswordHistoryData=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){null!=n&&(this.type=n.type)}}();l.SecureNoteData=t},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(n.uris=[],this.uris.forEach(function(l){n.uris.push(l.toLoginUriData())})),n},l}(e(106).default);l.Login=s},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(569),o=e(223),r=function(n){function l(l,e){void 0===e&&(e=!1);var t=n.call(this)||this;return null==l?t:(t.match=l.match,t.buildDomainModel(t,l,{uri:null},e,[]),t)}return t(l,n),l.prototype.decrypt=function(n){return this.decryptObj(new o.LoginUriView(this),{uri:null},n)},l.prototype.toLoginUriData=function(){var n=new u.LoginUriData;return this.buildDataModel(this,n,{uri:null},["match"]),n},l}(e(106).default);l.LoginUri=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}(),u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&t.groups.forEach(function(n){var l=i.groups.filter(function(l){return!l.accessAll&&l.id===n.id});null!=l&&l.length>0&&(l[0].checked=!0,l[0].readOnly=n.readOnly)}),[3,9];case 8:return u.sent(),[3,9];case 9:return[3,11];case 10:this.title=this.i18nService.t("addCollection"),u.label=11;case 11:return this.groups.forEach(function(n){n.accessAll&&(n.checked=!0)}),this.loading=!1,[2]}})})},n.prototype.check=function(n,l){n.accessAll||(n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1))},n.prototype.selectAll=function(n){var l=this;this.groups.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:if(null==this.orgKey)throw new Error("No encryption key for this organization.");return n=new i.CollectionRequest,l=n,[4,this.cryptoService.encrypt(this.name,this.orgKey)];case 1:l.name=e.sent().encryptedString,n.groups=this.groups.filter(function(n){return n.checked&&!n.accessAll}).map(function(n){return new a.SelectionReadOnlyRequest(n.id,!!n.readOnly)}),e.label=2;case 2:return e.trys.push([2,4,,5]),this.editMode?this.formPromise=this.apiService.putCollection(this.organizationId,this.collectionId,n):this.formPromise=this.apiService.postCollection(this.organizationId,n),[4,this.formPromise];case 3:return e.sent(),this.analytics.eventTrack.next({action:this.editMode?"Edited Collection":"Created Collection"}),this.toasterService.popAsync("success",null,this.i18nService.t(this.editMode?"editedCollectionId":"createdCollectionId",this.name)),this.onSavedCollection.emit(),[3,5];case 4:return e.sent(),[3,5];case 5:return[2]}})})},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.editMode?[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteCollectionConfirmation"),this.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")]:[2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.apiService.deleteCollection(this.organizationId,this.collectionId),[4,this.deletePromise];case 3:return n.sent(),this.analytics.eventTrack.next({action:"Deleted Collection"}),this.toasterService.popAsync("success",null,this.i18nService.t("deletedCollectionId",this.name)),this.onDeletedCollection.emit(),[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}})})},n}();l.CollectionAddEditComponent=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.groups=[],null!=n&&(this.name=n.name?n.name.encryptedString:null)}}();l.CollectionRequest=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(e[0].checked=!0,e[0].readOnly=n.readOnly)}),[3,5];case 4:return e.sent(),[3,5];case 5:return[3,7];case 6:this.title=this.i18nService.t("addGroup"),e.label=7;case 7:return this.loading=!1,[2]}})})},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){var n,l,e;return u(this,function(t){switch(t.label){case 0:return[4,this.apiService.getCollections(this.organizationId)];case 1:return n=t.sent(),l=n.data.map(function(n){return new i.Collection(new r.CollectionData(n))}),e=this,[4,this.collectionService.decryptMany(l)];case 2:return e.collections=t.sent(),[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1)},n.prototype.selectAll=function(n){var l=this;this.collections.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:(n=new a.GroupRequest).name=this.name,n.externalId=this.externalId,n.accessAll="all"===this.access,n.accessAll||(n.collections=this.collections.filter(function(n){return n.checked}).map(function(n){return new s.SelectionReadOnlyRequest(n.id,!!n.readOnly)})),l.label=1;case 1:return l.trys.push([1,3,,4]),this.editMode?this.formPromise=this.apiService.putGroup(this.organizationId,this.groupId,n):this.formPromise=this.apiService.postGroup(this.organizationId,n),[4,this.formPromise];case 2:return l.sent(),this.analytics.eventTrack.next({action:this.editMode?"Edited Group":"Created Group"}),this.toasterService.popAsync("success",null,this.i18nService.t(this.editMode?"editedGroupId":"createdGroupId",this.name)),this.onSavedGroup.emit(),[3,4];case 3:return l.sent(),[3,4];case 4:return[2]}})})},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.editMode?[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteGroupConfirmation"),this.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")]:[2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.apiService.deleteGroup(this.organizationId,this.groupId),[4,this.deletePromise];case 3:return n.sent(),this.analytics.eventTrack.next({action:"Deleted Group"}),this.toasterService.popAsync("success",null,this.i18nService.t("deletedGroupId",this.name)),this.onDeletedGroup.emit(),[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}})})},n}();l.GroupAddEditComponent=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUserConfirmRequest=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(e[0].checked=!0,e[0].readOnly=n.readOnly)}),[3,5];case 4:return e.sent(),[3,5];case 5:return[3,7];case 6:this.title=this.i18nService.t("inviteUser"),e.label=7;case 7:return this.loading=!1,[2]}})})},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){var n,l,e;return u(this,function(t){switch(t.label){case 0:return[4,this.apiService.getCollections(this.organizationId)];case 1:return n=t.sent(),l=n.data.map(function(n){return new i.Collection(new r.CollectionData(n))}),e=this,[4,this.collectionService.decryptMany(l)];case 2:return e.collections=t.sent(),[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1)},n.prototype.selectAll=function(n){var l=this;this.collections.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:n=null,"all"!==this.access&&(n=this.collections.filter(function(n){return n.checked}).map(function(n){return new d.SelectionReadOnlyRequest(n.id,!!n.readOnly)})),e.label=1;case 1:return e.trys.push([1,3,,4]),this.editMode?((l=new s.OrganizationUserUpdateRequest).accessAll="all"===this.access,l.type=this.type,l.collections=n,this.formPromise=this.apiService.putOrganizationUser(this.organizationId,this.organizationUserId,l)):((l=new a.OrganizationUserInviteRequest).emails=this.emails.trim().split(/\s*,\s*/),l.accessAll="all"===this.access,l.type=this.type,l.collections=n,this.formPromise=this.apiService.postOrganizationUserInvite(this.organizationId,l)),[4,this.formPromise];case 2:return e.sent(),this.analytics.eventTrack.next({action:this.editMode?"Edited User":"Invited User"}),this.toasterService.popAsync("success",null,this.i18nService.t(this.editMode?"editedUserId":"invitedUsers",this.name)),this.onSavedUser.emit(),[3,4];case 3:return e.sent(),[3,4];case 4:return[2]}})})},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.editMode?[4,this.platformUtilsService.showDialog(this.i18nService.t("removeUserConfirmation"),this.name,this.i18nService.t("yes"),this.i18nService.t("no"),"warning")]:[2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.apiService.deleteOrganizationUser(this.organizationId,this.organizationUserId),[4,this.deletePromise];case 3:return n.sent(),this.analytics.eventTrack.next({action:"Deleted User"}),this.toasterService.popAsync("success",null,this.i18nService.t("removedUserId",this.name)),this.onDeletedUser.emit(),[3,5];case 4:return n.sent(),[3,5];case 5:return[2]}})})},n}();l.UserAddEditComponent=p},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(l[0].checked=!0)}),[3,5];case 4:return u.sent(),[3,5];case 5:return this.loading=!1,[2]}})})},n.prototype.check=function(n,l){n.checked=null==l?!n.checked:l,n.checked||(n.readOnly=!1)},n.prototype.selectAll=function(n){var l=this;this.groups.forEach(function(e){return l.check(e,n)})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:(n=new r.OrganizationUserUpdateGroupsRequest).groupIds=this.groups.filter(function(n){return n.checked}).map(function(n){return n.id}),l.label=1;case 1:return l.trys.push([1,3,,4]),this.formPromise=this.apiService.putOrganizationUserGroups(this.organizationId,this.organizationUserId,n),[4,this.formPromise];case 2:return l.sent(),this.analytics.eventTrack.next({action:"Edited User Groups"}),this.toasterService.popAsync("success",null,this.i18nService.t("editedGroupsForUser",this.name)),this.onSavedUser.emit(),[3,4];case 3:return l.sent(),[3,4];case 4:return[2]}})})},n}();l.UserGroupsComponent=a},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0){var e=this.formEls[0];if("input"===e.tagName.toLowerCase()){var t=e;if(null!=t.type&&"checkbox"===t.type.toLowerCase())return void t.click()}e.focus()}},n}();l.BoxRowDirective=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(12);var t=function(){function n(n,l){this.elementRef=n,this.renderer=l,this.trueValue=!0,this.falseValue=!1,this.propagateChange=function(n){}}return n.prototype.onHostChange=function(n){this.propagateChange(n.target.checked?this.trueValue:this.falseValue)},n.prototype.writeValue=function(n){n===this.trueValue?this.renderer.setProperty(this.elementRef.nativeElement,"checked",!0):this.renderer.setProperty(this.elementRef.nativeElement,"checked",!1)},n.prototype.registerOnChange=function(n){this.propagateChange=n},n.prototype.registerOnTouched=function(n){},n.prototype.setDisabledState=function(n){},n}();l.TrueFalseValueDirective=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1?[4,l.json()]:[3,3];case 2:e=u.sent(),u.label=3;case 3:return null==e?[3,6]:200!==l.status?[3,4]:[2,new v.IdentityTokenResponse(e)];case 4:return 400===l.status&&e.TwoFactorProviders2&&Object.keys(e.TwoFactorProviders2).length?[4,this.tokenService.clearTwoFactorToken(n.email)]:[3,6];case 5:return u.sent(),[2,new h.IdentityTwoFactorResponse(e)];case 6:return[2,Promise.reject(new d.ErrorResponse(e,l.status,!0))]}})})},n.prototype.refreshIdentityToken=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,this.doRefreshToken()];case 1:return n.sent(),[3,3];case 2:return n.sent(),[2,Promise.reject(null)];case 3:return[2]}})})},n.prototype.getProfile=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/accounts/profile",null,!0,!0)];case 1:return n=l.sent(),[2,new w.ProfileResponse(n)]}})})},n.prototype.getUserBilling=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/accounts/billing",null,!0,!0)];case 1:return n=l.sent(),[2,new r.BillingResponse(n)]}})})},n.prototype.putProfile=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/accounts/profile",n,!0,!0)];case 1:return l=e.sent(),[2,new w.ProfileResponse(l)]}})})},n.prototype.postPrelogin=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/accounts/prelogin",n,!1,!0)];case 1:return l=e.sent(),[2,new b.PreloginResponse(l)]}})})},n.prototype.postEmailToken=function(n){return this.send("POST","/accounts/email-token",n,!0,!1)},n.prototype.postEmail=function(n){return this.send("POST","/accounts/email",n,!0,!1)},n.prototype.postPassword=function(n){return this.send("POST","/accounts/password",n,!0,!1)},n.prototype.postSecurityStamp=function(n){return this.send("POST","/accounts/security-stamp",n,!0,!1)},n.prototype.deleteAccount=function(n){return this.send("DELETE","/accounts",n,!0,!1)},n.prototype.getAccountRevisionDate=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,this.send("GET","/accounts/revision-date",null,!0,!0)];case 1:return[2,n.sent()]}})})},n.prototype.postPasswordHint=function(n){return this.send("POST","/accounts/password-hint",n,!1,!1)},n.prototype.postRegister=function(n){return this.send("POST","/accounts/register",n,!1,!1)},n.prototype.postPremium=function(n){return this.send("POST","/accounts/premium",n,!0,!1)},n.prototype.postReinstatePremium=function(){return this.send("POST","/accounts/reinstate-premium",null,!0,!1)},n.prototype.postCancelPremium=function(){return this.send("POST","/accounts/cancel-premium",null,!0,!1)},n.prototype.postAccountStorage=function(n){return this.send("POST","/accounts/storage",n,!0,!1)},n.prototype.postAccountPayment=function(n){return this.send("POST","/accounts/payment",n,!0,!1)},n.prototype.postAccountLicense=function(n){return this.send("POST","/accounts/license",n,!0,!1)},n.prototype.postAccountKeys=function(n){return this.send("POST","/accounts/keys",n,!0,!1)},n.prototype.postAccountKey=function(n){return this.send("POST","/accounts/key",n,!0,!1)},n.prototype.postAccountVerifyEmail=function(){return this.send("POST","/accounts/verify-email",null,!0,!1)},n.prototype.postAccountVerifyEmailToken=function(n){return this.send("POST","/accounts/verify-email-token",n,!1,!1)},n.prototype.postAccountRecoverDelete=function(n){return this.send("POST","/accounts/delete-recover",n,!1,!1)},n.prototype.postAccountRecoverDeleteToken=function(n){return this.send("POST","/accounts/delete-recover-token",n,!1,!1)},n.prototype.postAccountKdf=function(n){return this.send("POST","/accounts/kdf",n,!0,!1)},n.prototype.getFolder=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/folders/"+n,null,!0,!0)];case 1:return l=e.sent(),[2,new p.FolderResponse(l)]}})})},n.prototype.postFolder=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/folders",n,!0,!0)];case 1:return l=e.sent(),[2,new p.FolderResponse(l)]}})})},n.prototype.putFolder=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/folders/"+n,l,!0,!0)];case 1:return e=t.sent(),[2,new p.FolderResponse(e)]}})})},n.prototype.deleteFolder=function(n){return this.send("DELETE","/folders/"+n,null,!0,!1)},n.prototype.getCipher=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/ciphers/"+n,null,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.getCipherAdmin=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/ciphers/"+n+"/admin",null,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.getCiphersOrganization=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/ciphers/organization-details?organizationId="+n,null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,i.CipherResponse)]}})})},n.prototype.postCipher=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/ciphers",n,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.postCipherCreate=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/ciphers/create",n,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.postCipherAdmin=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/ciphers/admin",n,!0,!0)];case 1:return l=e.sent(),[2,new i.CipherResponse(l)]}})})},n.prototype.putCipher=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/ciphers/"+n,l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.putCipherAdmin=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/ciphers/"+n+"/admin",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.deleteCipher=function(n){return this.send("DELETE","/ciphers/"+n,null,!0,!1)},n.prototype.deleteCipherAdmin=function(n){return this.send("DELETE","/ciphers/"+n+"/admin",null,!0,!1)},n.prototype.deleteManyCiphers=function(n){return this.send("DELETE","/ciphers",n,!0,!1)},n.prototype.putMoveCiphers=function(n){return this.send("PUT","/ciphers/move",n,!0,!1)},n.prototype.putShareCipher=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/ciphers/"+n+"/share",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.putShareCiphers=function(n){return this.send("PUT","/ciphers/share",n,!0,!1)},n.prototype.putCipherCollections=function(n,l){return this.send("PUT","/ciphers/"+n+"/collections",l,!0,!1)},n.prototype.putCipherCollectionsAdmin=function(n,l){return this.send("PUT","/ciphers/"+n+"/collections-admin",l,!0,!1)},n.prototype.postPurgeCiphers=function(n,l){void 0===l&&(l=null);var e="/ciphers/purge";return null!=l&&(e+="?organizationId="+l),this.send("POST",e,n,!0,!1)},n.prototype.postImportCiphers=function(n){return this.send("POST","/ciphers/import",n,!0,!1)},n.prototype.postImportOrganizationCiphers=function(n,l){return this.send("POST","/ciphers/import-organization?organizationId="+n,l,!0,!1)},n.prototype.postCipherAttachment=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/ciphers/"+n+"/attachment",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.postCipherAttachmentAdmin=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/ciphers/"+n+"/attachment-admin",l,!0,!0)];case 1:return e=t.sent(),[2,new i.CipherResponse(e)]}})})},n.prototype.deleteCipherAttachment=function(n,l){return this.send("DELETE","/ciphers/"+n+"/attachment/"+l,null,!0,!1)},n.prototype.deleteCipherAttachmentAdmin=function(n,l){return this.send("DELETE","/ciphers/"+n+"/attachment/"+l+"/admin",null,!0,!1)},n.prototype.postShareCipherAttachment=function(n,l,e,t){return this.send("POST","/ciphers/"+n+"/attachment/"+l+"/share?organizationId="+t,e,!0,!1)},n.prototype.getCollectionDetails=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("GET","/organizations/"+n+"/collections/"+l+"/details",null,!0,!0)];case 1:return e=t.sent(),[2,new a.CollectionGroupDetailsResponse(e)]}})})},n.prototype.getUserCollections=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/collections",null,!0,!0)];case 1:return n=l.sent(),[2,new g.ListResponse(n,a.CollectionResponse)]}})})},n.prototype.getCollections=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/collections",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,a.CollectionResponse)]}})})},n.prototype.getCollectionUsers=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/collections/"+l+"/users",null,!0,!0)];case 1:return[2,e.sent().map(function(n){return new S.SelectionReadOnlyResponse(n)})]}})})},n.prototype.postCollection=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/organizations/"+n+"/collections",l,!0,!0)];case 1:return e=t.sent(),[2,new a.CollectionResponse(e)]}})})},n.prototype.putCollection=function(n,l,e){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/collections/"+l,e,!0,!0)];case 1:return t=u.sent(),[2,new a.CollectionResponse(t)]}})})},n.prototype.putCollectionUsers=function(n,l,e){return t(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/collections/"+l+"/users",e,!0,!1)];case 1:return t.sent(),[2]}})})},n.prototype.deleteCollection=function(n,l){return this.send("DELETE","/organizations/"+n+"/collections/"+l,null,!0,!1)},n.prototype.deleteCollectionUser=function(n,l,e){return this.send("DELETE","/organizations/"+n+"/collections/"+l+"/user/"+e,null,!0,!1)},n.prototype.getGroupDetails=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("GET","/organizations/"+n+"/groups/"+l+"/details",null,!0,!0)];case 1:return e=t.sent(),[2,new f.GroupDetailsResponse(e)]}})})},n.prototype.getGroups=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/groups",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,f.GroupResponse)]}})})},n.prototype.getGroupUsers=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/groups/"+l+"/users",null,!0,!0)];case 1:return[2,e.sent()]}})})},n.prototype.postGroup=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/organizations/"+n+"/groups",l,!0,!0)];case 1:return e=t.sent(),[2,new f.GroupResponse(e)]}})})},n.prototype.putGroup=function(n,l,e){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/groups/"+l,e,!0,!0)];case 1:return t=u.sent(),[2,new f.GroupResponse(t)]}})})},n.prototype.putGroupUsers=function(n,l,e){return t(this,void 0,void 0,function(){return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/groups/"+l+"/users",e,!0,!1)];case 1:return t.sent(),[2]}})})},n.prototype.deleteGroup=function(n,l){return this.send("DELETE","/organizations/"+n+"/groups/"+l,null,!0,!1)},n.prototype.deleteGroupUser=function(n,l,e){return this.send("DELETE","/organizations/"+n+"/groups/"+l+"/user/"+e,null,!0,!1)},n.prototype.getOrganizationUser=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("GET","/organizations/"+n+"/users/"+l,null,!0,!0)];case 1:return e=t.sent(),[2,new C.OrganizationUserDetailsResponse(e)]}})})},n.prototype.getOrganizationUserGroups=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/users/"+l+"/groups",null,!0,!0)];case 1:return[2,e.sent()]}})})},n.prototype.getOrganizationUsers=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/users",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,C.OrganizationUserUserDetailsResponse)]}})})},n.prototype.postOrganizationUserInvite=function(n,l){return this.send("POST","/organizations/"+n+"/users/invite",l,!0,!1)},n.prototype.postOrganizationUserReinvite=function(n,l){return this.send("POST","/organizations/"+n+"/users/"+l+"/reinvite",null,!0,!1)},n.prototype.postOrganizationUserAccept=function(n,l,e){return this.send("POST","/organizations/"+n+"/users/"+l+"/accept",e,!0,!1)},n.prototype.postOrganizationUserConfirm=function(n,l,e){return this.send("POST","/organizations/"+n+"/users/"+l+"/confirm",e,!0,!1)},n.prototype.putOrganizationUser=function(n,l,e){return this.send("PUT","/organizations/"+n+"/users/"+l,e,!0,!1)},n.prototype.putOrganizationUserGroups=function(n,l,e){return this.send("PUT","/organizations/"+n+"/users/"+l+"/groups",e,!0,!1)},n.prototype.deleteOrganizationUser=function(n,l){return this.send("DELETE","/organizations/"+n+"/users/"+l,null,!0,!1)},n.prototype.getSync=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:return n=this.isDesktopClient||this.isWebClient?"/sync?excludeDomains=true":"/sync",[4,this.send("GET",n,null,!0,!0)];case 1:return l=e.sent(),[2,new _.SyncResponse(l)]}})})},n.prototype.postImportDirectory=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){return[2,this.send("POST","/organizations/"+n+"/import",l,!0,!1)]})})},n.prototype.getSettingsDomains=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/settings/domains",null,!0,!0)];case 1:return n=l.sent(),[2,new s.DomainsResponse(n)]}})})},n.prototype.putSettingsDomains=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/settings/domains",n,!0,!0)];case 1:return l=e.sent(),[2,new s.DomainsResponse(l)]}})})},n.prototype.getTwoFactorProviders=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return[4,this.send("GET","/two-factor",null,!0,!0)];case 1:return n=l.sent(),[2,new g.ListResponse(n,A.TwoFactorProviderResponse)]}})})},n.prototype.getTwoFactorOrganizationProviders=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/two-factor",null,!0,!0)];case 1:return l=e.sent(),[2,new g.ListResponse(l,A.TwoFactorProviderResponse)]}})})},n.prototype.getTwoFactorAuthenticator=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-authenticator",n,!0,!0)];case 1:return l=e.sent(),[2,new R.TwoFactorAuthenticatorResponse(l)]}})})},n.prototype.getTwoFactorEmail=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-email",n,!0,!0)];case 1:return l=e.sent(),[2,new k.TwoFactorEmailResponse(l)]}})})},n.prototype.getTwoFactorDuo=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-duo",n,!0,!0)];case 1:return l=e.sent(),[2,new I.TwoFactorDuoResponse(l)]}})})},n.prototype.getTwoFactorOrganizationDuo=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("POST","/organizations/"+n+"/two-factor/get-duo",l,!0,!0)];case 1:return e=t.sent(),[2,new I.TwoFactorDuoResponse(e)]}})})},n.prototype.getTwoFactorYubiKey=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-yubikey",n,!0,!0)];case 1:return l=e.sent(),[2,new E.TwoFactorYubiKeyResponse(l)]}})})},n.prototype.getTwoFactorU2f=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-u2f",n,!0,!0)];case 1:return l=e.sent(),[2,new N.TwoFactorU2fResponse(l)]}})})},n.prototype.getTwoFactorU2fChallenge=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-u2f-challenge",n,!0,!0)];case 1:return l=e.sent(),[2,new N.ChallengeResponse(l)]}})})},n.prototype.getTwoFactorRecover=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/two-factor/get-recover",n,!0,!0)];case 1:return l=e.sent(),[2,new O.TwoFactorRecoverResponse(l)]}})})},n.prototype.putTwoFactorAuthenticator=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/authenticator",n,!0,!0)];case 1:return l=e.sent(),[2,new R.TwoFactorAuthenticatorResponse(l)]}})})},n.prototype.putTwoFactorEmail=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/email",n,!0,!0)];case 1:return l=e.sent(),[2,new k.TwoFactorEmailResponse(l)]}})})},n.prototype.putTwoFactorDuo=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/duo",n,!0,!0)];case 1:return l=e.sent(),[2,new I.TwoFactorDuoResponse(l)]}})})},n.prototype.putTwoFactorOrganizationDuo=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/two-factor/duo",l,!0,!0)];case 1:return e=t.sent(),[2,new I.TwoFactorDuoResponse(e)]}})})},n.prototype.putTwoFactorYubiKey=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/yubikey",n,!0,!0)];case 1:return l=e.sent(),[2,new E.TwoFactorYubiKeyResponse(l)]}})})},n.prototype.putTwoFactorU2f=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/u2f",n,!0,!0)];case 1:return l=e.sent(),[2,new N.TwoFactorU2fResponse(l)]}})})},n.prototype.deleteTwoFactorU2f=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("DELETE","/two-factor/u2f",n,!0,!0)];case 1:return l=e.sent(),[2,new N.TwoFactorU2fResponse(l)]}})})},n.prototype.putTwoFactorDisable=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("PUT","/two-factor/disable",n,!0,!0)];case 1:return l=e.sent(),[2,new A.TwoFactorProviderResponse(l)]}})})},n.prototype.putTwoFactorOrganizationDisable=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n+"/two-factor/disable",l,!0,!0)];case 1:return e=t.sent(),[2,new A.TwoFactorProviderResponse(e)]}})})},n.prototype.postTwoFactorRecover=function(n){return this.send("POST","/two-factor/recover",n,!1,!1)},n.prototype.postTwoFactorEmailSetup=function(n){return this.send("POST","/two-factor/send-email",n,!0,!1)},n.prototype.postTwoFactorEmail=function(n){return this.send("POST","/two-factor/send-email-login",n,!1,!1)},n.prototype.getOrganization=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n,null,!0,!0)];case 1:return l=e.sent(),[2,new y.OrganizationResponse(l)]}})})},n.prototype.getOrganizationBilling=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/organizations/"+n+"/billing",null,!0,!0)];case 1:return l=e.sent(),[2,new m.OrganizationBillingResponse(l)]}})})},n.prototype.getOrganizationLicense=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){return[2,this.send("GET","/organizations/"+n+"/license?installationId="+l,null,!0,!0)]})})},n.prototype.postOrganization=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/organizations",n,!0,!0)];case 1:return l=e.sent(),[2,new y.OrganizationResponse(l)]}})})},n.prototype.putOrganization=function(n,l){return t(this,void 0,void 0,function(){var e;return u(this,function(t){switch(t.label){case 0:return[4,this.send("PUT","/organizations/"+n,l,!0,!0)];case 1:return e=t.sent(),[2,new y.OrganizationResponse(e)]}})})},n.prototype.postLeaveOrganization=function(n){return this.send("POST","/organizations/"+n+"/leave",null,!0,!1)},n.prototype.postOrganizationLicense=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("POST","/organizations/license",n,!0,!0)];case 1:return l=e.sent(),[2,new y.OrganizationResponse(l)]}})})},n.prototype.postOrganizationLicenseUpdate=function(n,l){return t(this,void 0,void 0,function(){return u(this,function(e){return[2,this.send("POST","/organizations/"+n+"/license",l,!0,!1)]})})},n.prototype.postOrganizationSeat=function(n,l){return this.send("POST","/organizations/"+n+"/seat",l,!0,!1)},n.prototype.postOrganizationStorage=function(n,l){return this.send("POST","/organizations/"+n+"/storage",l,!0,!1)},n.prototype.postOrganizationPayment=function(n,l){return this.send("POST","/organizations/"+n+"/payment",l,!0,!1)},n.prototype.postOrganizationVerifyBank=function(n,l){return this.send("POST","/organizations/"+n+"/verify-bank",l,!0,!1)},n.prototype.postOrganizationCancel=function(n){return this.send("POST","/organizations/"+n+"/cancel",null,!0,!1)},n.prototype.postOrganizationReinstate=function(n){return this.send("POST","/organizations/"+n+"/reinstate",null,!0,!1)},n.prototype.deleteOrganization=function(n,l){return this.send("DELETE","/organizations/"+n,l,!0,!1)},n.prototype.getEvents=function(n,l,e){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/events",n,l,e),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getEventsCipher=function(n,l,e,o){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/ciphers/"+n+"/events",l,e,o),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getEventsOrganization=function(n,l,e,o){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/organizations/"+n+"/events",l,e,o),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getEventsOrganizationUser=function(n,l,e,o,r){return t(this,void 0,void 0,function(){var t;return u(this,function(u){switch(u.label){case 0:return[4,this.send("GET",this.addEventParameters("/organizations/"+n+"/users/"+l+"/events",e,o,r),null,!0,!0)];case 1:return t=u.sent(),[2,new g.ListResponse(t,c.EventResponse)]}})})},n.prototype.getUserPublicKey=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.send("GET","/users/"+n+"/public-key",null,!0,!0)];case 1:return l=e.sent(),[2,new T.UserKeyResponse(l)]}})})},n.prototype.getActiveBearerToken=function(){return t(this,void 0,void 0,function(){var n,l;return u(this,function(e){switch(e.label){case 0:return[4,this.tokenService.getToken()];case 1:return n=e.sent(),this.tokenService.tokenNeedsRefresh()?[4,this.doRefreshToken()]:[3,3];case 2:l=e.sent(),n=l.accessToken,e.label=3;case 3:return[2,n]}})})},n.prototype.fetch=function(n){return"GET"===n.method&&(n.headers.set("Cache-Control","no-cache"),n.headers.set("Pragma","no-cache")),fetch(n)},n.prototype.send=function(n,l,e,o,r){return t(this,void 0,void 0,function(){var t,i,a,s,d;return u(this,function(u){switch(u.label){case 0:return t=new Headers({"Device-Type":this.deviceType}),i={cache:"no-cache",credentials:this.getCredentials(),method:n},o?[4,this.getActiveBearerToken()]:[3,2];case 1:a=u.sent(),t.set("Authorization","Bearer "+a),u.label=2;case 2:return null!=e&&("string"==typeof e?(i.body=e,t.set("Content-Type","application/x-www-form-urlencoded; charset=utf-8")):"object"==typeof e&&(e instanceof FormData?i.body=e:(t.set("Content-Type","application/json; charset=utf-8"),i.body=JSON.stringify(e)))),r&&t.set("Accept","application/json"),i.headers=t,[4,this.fetch(new Request(this.apiBaseUrl+l,i))];case 3:return s=u.sent(),r&&200===s.status?[4,s.json()]:[3,5];case 4:return[2,u.sent()];case 5:return 200===s.status?[3,7]:[4,this.handleError(s,!1)];case 6:return d=u.sent(),[2,Promise.reject(d)];case 7:return[2]}})})},n.prototype.handleError=function(n,l){return t(this,void 0,void 0,function(){var e,t;return u(this,function(u){switch(u.label){case 0:return l&&400===n.status||401===n.status||403===n.status?[4,this.logoutCallback(!0)]:[3,2];case 1:return u.sent(),[2,null];case 2:return e=null,null!=(t=n.headers.get("content-type"))&&t.indexOf("application/json")>-1?[4,n.json()]:[3,4];case 3:e=u.sent(),u.label=4;case 4:return[2,new d.ErrorResponse(e,n.status,l)]}})})},n.prototype.doRefreshToken=function(){return t(this,void 0,void 0,function(){var n,l,e,t,o,r;return u(this,function(u){switch(u.label){case 0:return[4,this.tokenService.getRefreshToken()];case 1:if(null==(n=u.sent())||""===n)throw new Error;return l=this.tokenService.decodeToken(),[4,this.fetch(new Request(this.identityBaseUrl+"/connect/token",{body:this.qsStringify({grant_type:"refresh_token",client_id:l.client_id,refresh_token:n}),cache:"no-cache",credentials:this.getCredentials(),headers:new Headers({"Content-Type":"application/x-www-form-urlencoded; charset=utf-8",Accept:"application/json","Device-Type":this.deviceType}),method:"POST"}))];case 2:return 200!==(e=u.sent()).status?[3,5]:[4,e.json()];case 3:return t=u.sent(),o=new v.IdentityTokenResponse(t),[4,this.tokenService.setTokens(o.accessToken,o.refreshToken)];case 4:return u.sent(),[2,o];case 5:return[4,this.handleError(e,!0)];case 6:return r=u.sent(),[2,Promise.reject(r)]}})})},n.prototype.qsStringify=function(n){return Object.keys(n).map(function(l){return encodeURIComponent(l)+"="+encodeURIComponent(n[l])}).join("&")},n.prototype.getCredentials=function(){if(!this.isWebClient||this.usingBaseUrl)return"include"},n.prototype.addEventParameters=function(n,l,e,t){return null!=l&&(n+="?start="+l),null!=e&&(n+=n.indexOf("?")>-1?"&":"?",n+="end="+e),null!=t&&(n+=n.indexOf("?")>-1?"&":"?",n+="continuationToken="+t),n},n}();l.ApiService=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.charges=[],this.storageName=n.StorageName,this.storageGb=n.StorageGb,this.maxStorageGb=n.MaxStorageGb,this.paymentSource=null==n.PaymentSource?null:new u(n.PaymentSource),this.subscription=null==n.Subscription?null:new o(n.Subscription),this.upcomingInvoice=null==n.UpcomingInvoice?null:new i(n.UpcomingInvoice),null!=n.Charges&&(this.charges=n.Charges.map(function(n){return new a(n)})),this.license=n.License,this.expiration=n.Expiration}}();l.BillingResponse=t;var u=function(){return function(n){this.type=n.Type,this.cardBrand=n.CardBrand,this.description=n.Description,this.needsVerification=n.NeedsVerification}}();l.BillingSourceResponse=u;var o=function(){return function(n){this.items=[],this.trialEndDate=n.TrialStartDate,this.trialEndDate=n.TrialEndDate,this.periodStartDate=n.PeriodStartDate,this.periodEndDate=n.PeriodEndDate,this.cancelledDate=n.CancelledDate,this.cancelAtEndDate=n.CancelAtEndDate,this.status=n.Status,this.cancelled=n.Cancelled,null!=n.Items&&(this.items=n.Items.map(function(n){return new r(n)}))}}();l.BillingSubscriptionResponse=o;var r=function(){return function(n){this.name=n.Name,this.amount=n.Amount,this.quantity=n.Quantity,this.interval=n.Interval}}();l.BillingSubscriptionItemResponse=r;var i=function(){return function(n){this.date=n.Date,this.amount=n.Amount}}();l.BillingInvoiceResponse=i;var a=function(){return function(n){this.createdDate=n.CreatedDate,this.amount=n.Amount,this.paymentSource=null!=n.PaymentSource?new u(n.PaymentSource):null,this.status=n.Status,this.failureMessage=n.FailureMessage,this.refunded=n.Refunded,this.partiallyRefunded=n.PartiallyRefunded,this.refundedAmount=n.RefundedAmount,this.invoiceId=n.InvoiceId}}();l.BillingChargeResponse=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(916),u=e(917),o=e(918),r=e(919),i=e(920),a=e(921),s=e(923),d=function(){return function(n){var l=this;this.id=n.Id,this.organizationId=n.OrganizationId,this.folderId=n.FolderId||null,this.type=n.Type,this.name=n.Name,this.notes=n.Notes,this.favorite=n.Favorite||!1,this.edit=n.Edit||!0,this.organizationUseTotp=n.OrganizationUseTotp,this.revisionDate=n.RevisionDate,null!=n.Login&&(this.login=new a.LoginApi(n.Login)),null!=n.Card&&(this.card=new o.CardApi(n.Card)),null!=n.Identity&&(this.identity=new i.IdentityApi(n.Identity)),null!=n.SecureNote&&(this.secureNote=new s.SecureNoteApi(n.SecureNote)),null!=n.Fields&&(this.fields=[],n.Fields.forEach(function(n){l.fields.push(new r.FieldApi(n))})),null!=n.Attachments&&(this.attachments=[],n.Attachments.forEach(function(n){l.attachments.push(new t.AttachmentResponse(n))})),null!=n.PasswordHistory&&(this.passwordHistory=[],n.PasswordHistory.forEach(function(n){l.passwordHistory.push(new u.PasswordHistoryResponse(n))})),n.CollectionIds&&(this.collectionIds=[],n.CollectionIds.forEach(function(n){l.collectionIds.push(n)}))}}();l.CipherResponse=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(264),o=function(){return function(n){this.id=n.Id,this.organizationId=n.OrganizationId,this.name=n.Name}}();l.CollectionResponse=o;var r=function(n){function l(l){var e=n.call(this,l)||this;return e.readOnly=l.ReadOnly||!1,e}return t(l,n),l}(o);l.CollectionDetailsResponse=r;var i=function(n){function l(l){var e=n.call(this,l)||this;return e.groups=[],null!=l.Groups&&(e.groups=l.Groups.map(function(n){return new u.SelectionReadOnlyResponse(n)})),e}return t(l,n),l}(o);l.CollectionGroupDetailsResponse=i},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(924),u=function(){return function(n){var l=this;this.globalEquivalentDomains=[],this.equivalentDomains=n.EquivalentDomains,this.globalEquivalentDomains=[],n.GlobalEquivalentDomains&&n.GlobalEquivalentDomains.forEach(function(n){l.globalEquivalentDomains.push(new t.GlobalDomainResponse(n))})}}();l.DomainsResponse=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.name=n.Name,this.revisionDate=n.RevisionDate}}();l.FolderResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.id=n.Id,this.name=n.Name,this.businessName=n.BusinessName,this.businessAddress1=n.BusinessAddress1,this.businessAddress2=n.BusinessAddress2,this.businessAddress3=n.BusinessAddress3,this.businessCountry=n.BusinessCountry,this.businessTaxNumber=n.BusinessTaxNumber,this.billingEmail=n.BillingEmail,this.plan=n.Plan,this.planType=n.PlanType,this.seats=n.Seats,this.maxCollections=n.MaxCollections,this.maxStorageGb=n.MaxStorageGb,this.useGroups=n.UseGroups,this.useDirectory=n.UseDirectory,this.useEvents=n.UseEvents,this.useTotp=n.UseTotp,this.use2fa=n.Use2fa}}();l.OrganizationResponse=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(934),u=function(){return function(n){var l=this;this.organizations=[],this.id=n.Id,this.name=n.Name,this.email=n.Email,this.emailVerified=n.EmailVerified,this.masterPasswordHint=n.MasterPasswordHint,this.premium=n.Premium,this.culture=n.Culture,this.twoFactorEnabled=n.TwoFactorEnabled,this.key=n.Key,this.privateKey=n.PrivateKey,this.securityStamp=n.SecurityStamp,n.Organizations&&n.Organizations.forEach(function(n){l.organizations.push(new t.ProfileOrganizationResponse(n))})}}();l.ProfileResponse=u},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=0;i--)(u=n[i])&&(r=(o<3?u(r):o>3?u(l,e,r):u(l,e))||r);return o>3&&r&&Object.defineProperty(l,e,r),r},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},o=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]5&&(n.passwordHistory=n.passwordHistory.slice(0,5)),r.label=5;case 5:return(d=new f.Cipher).id=n.id,d.folderId=n.folderId,d.favorite=n.favorite,d.organizationId=n.organizationId,d.type=n.type,d.collectionIds=n.collectionIds,null!=l||null==d.organizationId?[3,7]:[4,this.cryptoService.getOrgKey(d.organizationId)];case 6:if(null==(l=r.sent()))throw new Error("Cannot encrypt cipher for organization. No key.");r.label=7;case 7:return[4,Promise.all([this.encryptObjProperty(n,d,{name:null,notes:null},l),this.encryptCipherData(d,n,l),this.encryptFields(n.fields,l).then(function(n){d.fields=n}),this.encryptPasswordHistories(n.passwordHistory,l).then(function(n){d.passwordHistory=n}),this.encryptAttachments(n.attachments,l).then(function(n){d.attachments=n})])];case 8:return r.sent(),[2,d]}})})},l.prototype.encryptAttachments=function(n,l){return o(this,void 0,void 0,function(){var e,t,u=this;return r(this,function(i){switch(i.label){case 0:return null==n||0===n.length?[2,null]:(e=[],t=[],n.forEach(function(n){return o(u,void 0,void 0,function(){var u,i,a=this;return r(this,function(s){return(u=new c.Attachment).id=n.id,u.size=n.size,u.sizeName=n.sizeName,u.url=n.url,i=this.encryptObjProperty(n,u,{fileName:null},l).then(function(){return o(a,void 0,void 0,function(){var e;return r(this,function(o){switch(o.label){case 0:return null==n.key?[3,2]:(e=u,[4,this.cryptoService.encrypt(n.key.key,l)]);case 1:e.key=o.sent(),o.label=2;case 2:return t.push(u),[2]}})})}),e.push(i),[2]})})}),[4,Promise.all(e)]);case 1:return i.sent(),[2,t]}})})},l.prototype.encryptFields=function(n,l){return o(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:return n&&n.length?(e=this,t=[],[4,n.reduce(function(n,u){return n.then(function(){return e.encryptField(u,l)}).then(function(n){t.push(n)})},Promise.resolve())]):[2,null];case 1:return u.sent(),[2,t]}})})},l.prototype.encryptField=function(n,l){return o(this,void 0,void 0,function(){var e;return r(this,function(t){switch(t.label){case 0:return(e=new v.Field).type=n.type,n.type===a.FieldType.Boolean&&"true"!==n.value&&(n.value="false"),[4,this.encryptObjProperty(n,e,{name:null,value:null},l)];case 1:return t.sent(),[2,e]}})})},l.prototype.encryptPasswordHistories=function(n,l){return o(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:return n&&n.length?(e=this,t=[],[4,n.reduce(function(n,u){return n.then(function(){return e.encryptPasswordHistory(u,l)}).then(function(n){t.push(n)})},Promise.resolve())]):[2,null];case 1:return u.sent(),[2,t]}})})},l.prototype.encryptPasswordHistory=function(n,l){return o(this,void 0,void 0,function(){var e;return r(this,function(t){switch(t.label){case 0:return(e=new y.Password).lastUsedDate=n.lastUsedDate,[4,this.encryptObjProperty(n,e,{password:null},l)];case 1:return t.sent(),[2,e]}})})},l.prototype.get=function(n){return o(this,void 0,void 0,function(){var l,e,t;return r(this,function(u){switch(u.label){case 0:return[4,this.userService.getUserId()];case 1:return l=u.sent(),[4,this.storageService.get(T)];case 2:return e=u.sent(),[4,this.storageService.get(E+l)];case 3:return null!=(t=u.sent())&&t.hasOwnProperty(n)?[2,new f.Cipher(t[n],!1,e?e[n]:null)]:[2,null]}})})},l.prototype.getAll=function(){return o(this,void 0,void 0,function(){var n,l,e,t,u;return r(this,function(o){switch(o.label){case 0:return[4,this.userService.getUserId()];case 1:return n=o.sent(),[4,this.storageService.get(T)];case 2:return l=o.sent(),[4,this.storageService.get(E+n)];case 3:for(u in e=o.sent(),t=[],e)e.hasOwnProperty(u)&&t.push(new f.Cipher(e[u],!1,l?l[u]:null));return[2,t]}})})},l.prototype.getAllDecrypted=function(){return o(this,void 0,void 0,function(){var n,l;return r(this,function(e){switch(e.label){case 0:return null!=this.decryptedCipherCache?[2,this.decryptedCipherCache]:(n=[],[4,this.cryptoService.hasKey()]);case 1:if(!e.sent())throw new Error("No key.");return l=[],[4,this.getAll()];case 2:return e.sent().forEach(function(e){l.push(e.decrypt().then(function(l){return n.push(l)}))}),[4,Promise.all(l)];case 3:return e.sent(),n.sort(this.getLocaleSortingFunction()),this.decryptedCipherCache=n,[2,this.decryptedCipherCache]}})})},l.prototype.getAllDecryptedForGrouping=function(n,l){return void 0===l&&(l=!0),o(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return[4,this.getAllDecrypted()];case 1:return[2,e.sent().filter(function(e){return!(!l||e.folderId!==n)||!l&&null!=e.collectionIds&&e.collectionIds.indexOf(n)>-1})]}})})},l.prototype.getAllDecryptedForUrl=function(n,l){return o(this,void 0,void 0,function(){var e,t,u,o;return r(this,function(r){switch(r.label){case 0:return null!=n||l?(e=N.Utils.getDomain(n),t=null==e?Promise.resolve([]):this.settingsService.getEquivalentDomains().then(function(n){var l=[];return n.forEach(function(n){n.length&&n.indexOf(e)>=0&&(l=l.concat(n))}),l.length||l.push(e),l}),[4,Promise.all([t,this.getAllDecrypted()])]):[2,Promise.resolve([])];case 1:return u=r.sent(),o=u[0],[2,u[1].filter(function(t){if(l&&l.indexOf(t.type)>-1)return!0;if(null!=n&&t.type===i.CipherType.Login&&null!=t.login.uris)for(var u=0;u-1){if(!V.has(r.domain))return!0;var a=N.Utils.getHost(n);if(!V.get(r.domain).has(a))return!0}break;case s.UriMatchType.Host:var d=N.Utils.getHost(n);if(null!=d&&d===N.Utils.getHost(r.uri))return!0;break;case s.UriMatchType.Exact:if(n===r.uri)return!0;break;case s.UriMatchType.StartsWith:if(n.startsWith(r.uri))return!0;break;case s.UriMatchType.RegularExpression:try{if(new RegExp(r.uri,"i").test(n))return!0}catch(n){}break;case s.UriMatchType.Never:}}return!1})]}})})},l.prototype.getAllFromApiForOrganization=function(n){return o(this,void 0,void 0,function(){var l,e,t;return r(this,function(u){switch(u.label){case 0:return[4,this.apiService.getCiphersOrganization(n)];case 1:return null!=(l=u.sent())&&null!=l.data&&l.data.length?(e=[],t=[],l.data.forEach(function(n){var l=new d.CipherData(n),u=new f.Cipher(l);t.push(u.decrypt().then(function(n){return e.push(n)}))}),[4,Promise.all(t)]):[3,3];case 2:return u.sent(),e.sort(this.getLocaleSortingFunction()),[2,e];case 3:return[2,[]]}})})},l.prototype.getLastUsedForUrl=function(n){return o(this,void 0,void 0,function(){var l;return r(this,function(e){switch(e.label){case 0:return[4,this.getAllDecryptedForUrl(n)];case 1:return 0===(l=e.sent()).length?[2,null]:[2,l.sort(this.sortCiphersByLastUsed)[0]]}})})},l.prototype.updateLastUsedDate=function(n){return o(this,void 0,void 0,function(){var l,e,t;return r(this,function(u){switch(u.label){case 0:return[4,this.storageService.get(T)];case 1:return(l=u.sent())||(l={}),l[n]?l[n].lastUsedDate=(new Date).getTime():l[n]={lastUsedDate:(new Date).getTime()},[4,this.storageService.save(T,l)];case 2:if(u.sent(),null==this.decryptedCipherCache)return[2];for(e=0;et?-1:null!=t&&null==e?1:0},l.prototype.sortCiphersByLastUsedThenName=function(n,l){var e=this.sortCiphersByLastUsed(n,l);return 0!==e?e:this.getLocaleSortingFunction()(n,l)},l.prototype.getLocaleSortingFunction=function(){var n=this;return function(l,e){var t=l.name,u=e.name;if(null==t&&null!=u)return-1;if(null!=t&&null==u)return 1;if(null==t&&null==u)return 0;var o=n.i18nService.collator?n.i18nService.collator.compare(t,u):t.localeCompare(u);return 0!==o||l.type!==i.CipherType.Login||e.type!==i.CipherType.Login?o:(null!=l.login.username&&(t+=l.login.username),null!=e.login.username&&(u+=e.login.username),n.i18nService.collator?n.i18nService.collator.compare(t,u):t.localeCompare(u))}},l.prototype.shareAttachmentWithServer=function(l,e,t){return o(this,void 0,void 0,function(){var u,o,i,a,s,d,c,p,f,v;return r(this,function(r){switch(r.label){case 0:return[4,fetch(new Request(l.url,{cache:"no-cache"}))];case 1:if(200!==(u=r.sent()).status)throw Error("Failed to download attachment: "+u.status.toString());return[4,u.arrayBuffer()];case 2:return o=r.sent(),[4,this.cryptoService.decryptFromBytes(o,null)];case 3:return i=r.sent(),[4,this.cryptoService.getOrgKey(t)];case 4:return a=r.sent(),[4,this.cryptoService.encrypt(l.fileName,a)];case 5:return s=r.sent(),[4,this.cryptoService.makeEncKey(a)];case 6:return d=r.sent(),[4,this.cryptoService.encryptToBytes(i,d[0])];case 7:c=r.sent(),p=new FormData;try{p.append("key",d[1].encryptedString),f=new Blob([c],{type:"application/octet-stream"}),p.append("data",f,s.encryptedString)}catch(l){if(!N.Utils.isNode||N.Utils.isBrowser)throw l;p.append("key",d[1].encryptedString),p.append("data",n.from(c),{filepath:s.encryptedString,contentType:"application/octet-stream"})}r.label=8;case 8:return r.trys.push([8,10,,11]),[4,this.apiService.postShareCipherAttachment(e,l.id,p,t)];case 9:return r.sent(),[3,11];case 10:throw v=r.sent(),new Error(v.getSingleMessage());case 11:return[2]}})})},l.prototype.encryptObjProperty=function(n,l,e,t){return o(this,void 0,void 0,function(){var u,o,i;return r(this,function(r){switch(r.label){case 0:for(i in u=[],o=this,e)e.hasOwnProperty(i)&&function(l,r){var i=Promise.resolve().then(function(){var u=n[e[l]||l];return u&&""!==u?o.cryptoService.encrypt(u,t):null}).then(function(n){r[l]=n});u.push(i)}(i,l);return[4,Promise.all(u)];case 1:return r.sent(),[2]}})})},l.prototype.encryptCipherData=function(n,l,e){return o(this,void 0,void 0,function(){var t,u;return r(this,function(o){switch(o.label){case 0:switch(n.type){case i.CipherType.Login:return[3,1];case i.CipherType.SecureNote:return[3,7];case i.CipherType.Card:return[3,8];case i.CipherType.Identity:return[3,10]}return[3,12];case 1:return n.login=new g.Login,n.login.passwordRevisionDate=l.login.passwordRevisionDate,[4,this.encryptObjProperty(l.login,n.login,{username:null,password:null,totp:null},e)];case 2:if(o.sent(),null==l.login.uris)return[3,6];n.login.uris=[],t=0,o.label=3;case 3:return t0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=0;i--)(u=n[i])&&(r=(o<3?u(r):o>3?u(l,e,r):u(l,e))||r);return o>3&&r&&Object.defineProperty(l,e,r),r},u=this&&this.__metadata||function(n,l){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,l)},o=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},r=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0?[2,this.orgKeys]:[4,this.storageService.get(y)];case 1:if(null==(n=r.sent()))return[2,null];for(u in l=new Map,e=!1,t=[],n)t.push(u);o=0,r.label=2;case 2:return o53)throw new Error("We cannot generate numbers larger than 53 bits.");return o=Math.ceil(u/8),i=Math.pow(2,u)-1,s=Uint8Array.bind,[4,this.cryptoFunctionService.randomBytes(o)];case 1:for(a=new(s.apply(Uint8Array,[void 0,r.sent()])),d=8*(o-1),c=0;c=t?[2,this.randomNumber(n,l)]:[2,n+e]}})})},n.prototype.aesEncrypt=function(n,l){return o(this,void 0,void 0,function(){var e,t,u,o,i,a;return r(this,function(r){switch(r.label){case 0:return e=new c.EncryptedObject,t=e,[4,this.getKeyForEncryption(l)];case 1:return t.key=r.sent(),u=e,[4,this.cryptoFunctionService.randomBytes(16)];case 2:return u.iv=r.sent(),o=e,[4,this.cryptoFunctionService.aesEncrypt(n,e.iv,e.key.encKey)];case 3:return o.data=r.sent(),null==e.key.macKey?[3,5]:((i=new Uint8Array(e.iv.byteLength+e.data.byteLength)).set(new Uint8Array(e.iv),0),i.set(new Uint8Array(e.data),e.iv.byteLength),a=e,[4,this.cryptoFunctionService.hmac(i.buffer,e.key.macKey,"sha256")]);case 4:a.mac=r.sent(),r.label=5;case 5:return[2,e]}})})},n.prototype.aesDecryptToUtf8=function(n,l,e,t,u){return o(this,void 0,void 0,function(){var o,i,a,s;return r(this,function(r){switch(r.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return o=r.sent(),null!=(i=this.resolveLegacyKey(n,o)).macKey&&null==t?(console.error("mac required."),[2,null]):i.encType!==n?(console.error("encType unavailable."),[2,null]):null==(a=this.cryptoFunctionService.aesDecryptFastParameters(l,e,t,i)).macKey||null==a.mac?[3,4]:[4,this.cryptoFunctionService.hmacFast(a.macData,a.macKey,"sha256")];case 2:return s=r.sent(),[4,this.cryptoFunctionService.compareFast(a.mac,s)];case 3:if(!r.sent())return console.error("mac failed."),[2,null];r.label=4;case 4:return[2,this.cryptoFunctionService.aesDecryptFast(a)]}})})},n.prototype.aesDecryptToBytes=function(n,l,e,t,u){return o(this,void 0,void 0,function(){var o,i,a,s;return r(this,function(r){switch(r.label){case 0:return[4,this.getKeyForEncryption(u)];case 1:return o=r.sent(),null!=(i=this.resolveLegacyKey(n,o)).macKey&&null==t?[2,null]:i.encType!==n?[2,null]:null==i.macKey||null==t?[3,4]:((a=new Uint8Array(e.byteLength+l.byteLength)).set(new Uint8Array(e),0),a.set(new Uint8Array(l),e.byteLength),[4,this.cryptoFunctionService.hmac(a.buffer,i.macKey,"sha256")]);case 2:return null===(s=r.sent())?[2,null]:[4,this.cryptoFunctionService.compare(t,s)];case 3:if(!r.sent())return console.error("mac failed."),[2,null];r.label=4;case 4:return[4,this.cryptoFunctionService.aesDecrypt(l,e,i.encKey)];case 5:return[2,r.sent()]}})})},n.prototype.rsaDecrypt=function(n){return o(this,void 0,void 0,function(){var l,e,t,u,o,i;return r(this,function(r){switch(r.label){case 0:if(l=n.split("."),e=null,1===l.length)e=a.EncryptionType.Rsa2048_OaepSha256_B64,t=[l[0]];else if(2===l.length)try{e=parseInt(l[0],null),t=l[1].split("|")}catch(n){}switch(e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}if(null==t||t.length<=0)throw new Error("encPieces unavailable.");return u=h.Utils.fromB64ToArray(t[0]).buffer,[4,this.getPrivateKey()];case 1:if(null==(o=r.sent()))throw new Error("No private key.");switch(i="sha1",e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:i="sha256";break;case a.EncryptionType.Rsa2048_OaepSha1_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:break;default:throw new Error("encType unavailable.")}return[2,this.cryptoFunctionService.rsaDecrypt(u,o,i)]}})})},n.prototype.getKeyForEncryption=function(n){return o(this,void 0,void 0,function(){var l;return r(this,function(e){switch(e.label){case 0:return null!=n?[2,n]:[4,this.getEncKey()];case 1:return null!=(l=e.sent())?[2,l]:[4,this.getKey()];case 2:return[2,e.sent()]}})})},n.prototype.resolveLegacyKey=function(n,l){return n===a.EncryptionType.AesCbc128_HmacSha256_B64&&l.encType===a.EncryptionType.AesCbc256_B64?(null==this.legacyEtmKey&&(this.legacyEtmKey=new p.SymmetricCryptoKey(l.key,a.EncryptionType.AesCbc128_HmacSha256_B64)),this.legacyEtmKey):l},n.prototype.stretchKey=function(n){return o(this,void 0,void 0,function(){var l,e,t,u,o;return r(this,function(r){switch(r.label){case 0:return l=new Uint8Array(64),t=(e=l).set,[4,this.hkdfExpand(n.key,h.Utils.fromUtf8ToArray("enc"),32)];case 1:return t.apply(e,[r.sent()]),o=(u=l).set,[4,this.hkdfExpand(n.key,h.Utils.fromUtf8ToArray("mac"),32)];case 2:return o.apply(u,[r.sent(),32]),[2,new p.SymmetricCryptoKey(l.buffer)]}})})},n.prototype.hkdfExpand=function(n,l,e){return o(this,void 0,void 0,function(){var t,u,o,i,a,s,d;return r(this,function(r){switch(r.label){case 0:t=32,u=new Uint8Array(e),o=new Uint8Array(0),i=Math.ceil(e/t),a=0,r.label=1;case 1:return ao)throw new Error("Output entropy of hash function is too small");for(a=[],s=i.fromArray(u,256);t--;)d=s.mod(g.EEFLongWordList.length),s=s.divide(g.EEFLongWordList.length),a.push(g.EEFLongWordList[d]);return[2,a]})})},n.prototype.buildEncKey=function(n,l){return void 0===l&&(l=null),o(this,void 0,void 0,function(){var e,t;return r(this,function(u){switch(u.label){case 0:return e=null,32!==n.key.byteLength?[3,3]:[4,this.stretchKey(n)];case 1:return t=u.sent(),[4,this.encrypt(l,t)];case 2:return e=u.sent(),[3,6];case 3:return 64!==n.key.byteLength?[3,5]:[4,this.encrypt(l,n)];case 4:return e=u.sent(),[3,6];case 5:throw new Error("Invalid key size.");case 6:return[2,[new p.SymmetricCryptoKey(l),e]]}})})},t([v.sequentialize(S),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getEncKey",null),t([v.sequentialize(_),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",Promise)],n.prototype,"getOrgKeys",null),n}();l.CryptoService=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),l.EEFLongWordList=["abacus","abdomen","abdominal","abide","abiding","ability","ablaze","able","abnormal","abrasion","abrasive","abreast","abridge","abroad","abruptly","absence","absentee","absently","absinthe","absolute","absolve","abstain","abstract","absurd","accent","acclaim","acclimate","accompany","account","accuracy","accurate","accustom","acetone","achiness","aching","acid","acorn","acquaint","acquire","acre","acrobat","acronym","acting","action","activate","activator","active","activism","activist","activity","actress","acts","acutely","acuteness","aeration","aerobics","aerosol","aerospace","afar","affair","affected","affecting","affection","affidavit","affiliate","affirm","affix","afflicted","affluent","afford","affront","aflame","afloat","aflutter","afoot","afraid","afterglow","afterlife","aftermath","aftermost","afternoon","aged","ageless","agency","agenda","agent","aggregate","aghast","agile","agility","aging","agnostic","agonize","agonizing","agony","agreeable","agreeably","agreed","agreeing","agreement","aground","ahead","ahoy","aide","aids","aim","ajar","alabaster","alarm","albatross","album","alfalfa","algebra","algorithm","alias","alibi","alienable","alienate","aliens","alike","alive","alkaline","alkalize","almanac","almighty","almost","aloe","aloft","aloha","alone","alongside","aloof","alphabet","alright","although","altitude","alto","aluminum","alumni","always","amaretto","amaze","amazingly","amber","ambiance","ambiguity","ambiguous","ambition","ambitious","ambulance","ambush","amendable","amendment","amends","amenity","amiable","amicably","amid","amigo","amino","amiss","ammonia","ammonium","amnesty","amniotic","among","amount","amperage","ample","amplifier","amplify","amply","amuck","amulet","amusable","amused","amusement","amuser","amusing","anaconda","anaerobic","anagram","anatomist","anatomy","anchor","anchovy","ancient","android","anemia","anemic","aneurism","anew","angelfish","angelic","anger","angled","angler","angles","angling","angrily","angriness","anguished","angular","animal","animate","animating","animation","animator","anime","animosity","ankle","annex","annotate","announcer","annoying","annually","annuity","anointer","another","answering","antacid","antarctic","anteater","antelope","antennae","anthem","anthill","anthology","antibody","antics","antidote","antihero","antiquely","antiques","antiquity","antirust","antitoxic","antitrust","antiviral","antivirus","antler","antonym","antsy","anvil","anybody","anyhow","anymore","anyone","anyplace","anything","anytime","anyway","anywhere","aorta","apache","apostle","appealing","appear","appease","appeasing","appendage","appendix","appetite","appetizer","applaud","applause","apple","appliance","applicant","applied","apply","appointee","appraisal","appraiser","apprehend","approach","approval","approve","apricot","april","apron","aptitude","aptly","aqua","aqueduct","arbitrary","arbitrate","ardently","area","arena","arguable","arguably","argue","arise","armadillo","armband","armchair","armed","armful","armhole","arming","armless","armoire","armored","armory","armrest","army","aroma","arose","around","arousal","arrange","array","arrest","arrival","arrive","arrogance","arrogant","arson","art","ascend","ascension","ascent","ascertain","ashamed","ashen","ashes","ashy","aside","askew","asleep","asparagus","aspect","aspirate","aspire","aspirin","astonish","astound","astride","astrology","astronaut","astronomy","astute","atlantic","atlas","atom","atonable","atop","atrium","atrocious","atrophy","attach","attain","attempt","attendant","attendee","attention","attentive","attest","attic","attire","attitude","attractor","attribute","atypical","auction","audacious","audacity","audible","audibly","audience","audio","audition","augmented","august","authentic","author","autism","autistic","autograph","automaker","automated","automatic","autopilot","available","avalanche","avatar","avenge","avenging","avenue","average","aversion","avert","aviation","aviator","avid","avoid","await","awaken","award","aware","awhile","awkward","awning","awoke","awry","axis","babble","babbling","babied","baboon","backache","backboard","backboned","backdrop","backed","backer","backfield","backfire","backhand","backing","backlands","backlash","backless","backlight","backlit","backlog","backpack","backpedal","backrest","backroom","backshift","backside","backslid","backspace","backspin","backstab","backstage","backtalk","backtrack","backup","backward","backwash","backwater","backyard","bacon","bacteria","bacterium","badass","badge","badland","badly","badness","baffle","baffling","bagel","bagful","baggage","bagged","baggie","bagginess","bagging","baggy","bagpipe","baguette","baked","bakery","bakeshop","baking","balance","balancing","balcony","balmy","balsamic","bamboo","banana","banish","banister","banjo","bankable","bankbook","banked","banker","banking","banknote","bankroll","banner","bannister","banshee","banter","barbecue","barbed","barbell","barber","barcode","barge","bargraph","barista","baritone","barley","barmaid","barman","barn","barometer","barrack","barracuda","barrel","barrette","barricade","barrier","barstool","bartender","barterer","bash","basically","basics","basil","basin","basis","basket","batboy","batch","bath","baton","bats","battalion","battered","battering","battery","batting","battle","bauble","bazooka","blabber","bladder","blade","blah","blame","blaming","blanching","blandness","blank","blaspheme","blasphemy","blast","blatancy","blatantly","blazer","blazing","bleach","bleak","bleep","blemish","blend","bless","blighted","blimp","bling","blinked","blinker","blinking","blinks","blip","blissful","blitz","blizzard","bloated","bloating","blob","blog","bloomers","blooming","blooper","blot","blouse","blubber","bluff","bluish","blunderer","blunt","blurb","blurred","blurry","blurt","blush","blustery","boaster","boastful","boasting","boat","bobbed","bobbing","bobble","bobcat","bobsled","bobtail","bodacious","body","bogged","boggle","bogus","boil","bok","bolster","bolt","bonanza","bonded","bonding","bondless","boned","bonehead","boneless","bonelike","boney","bonfire","bonnet","bonsai","bonus","bony","boogeyman","boogieman","book","boondocks","booted","booth","bootie","booting","bootlace","bootleg","boots","boozy","borax","boring","borough","borrower","borrowing","boss","botanical","botanist","botany","botch","both","bottle","bottling","bottom","bounce","bouncing","bouncy","bounding","boundless","bountiful","bovine","boxcar","boxer","boxing","boxlike","boxy","breach","breath","breeches","breeching","breeder","breeding","breeze","breezy","brethren","brewery","brewing","briar","bribe","brick","bride","bridged","brigade","bright","brilliant","brim","bring","brink","brisket","briskly","briskness","bristle","brittle","broadband","broadcast","broaden","broadly","broadness","broadside","broadways","broiler","broiling","broken","broker","bronchial","bronco","bronze","bronzing","brook","broom","brought","browbeat","brownnose","browse","browsing","bruising","brunch","brunette","brunt","brush","brussels","brute","brutishly","bubble","bubbling","bubbly","buccaneer","bucked","bucket","buckle","buckshot","buckskin","bucktooth","buckwheat","buddhism","buddhist","budding","buddy","budget","buffalo","buffed","buffer","buffing","buffoon","buggy","bulb","bulge","bulginess","bulgur","bulk","bulldog","bulldozer","bullfight","bullfrog","bullhorn","bullion","bullish","bullpen","bullring","bullseye","bullwhip","bully","bunch","bundle","bungee","bunion","bunkbed","bunkhouse","bunkmate","bunny","bunt","busboy","bush","busily","busload","bust","busybody","buzz","cabana","cabbage","cabbie","cabdriver","cable","caboose","cache","cackle","cacti","cactus","caddie","caddy","cadet","cadillac","cadmium","cage","cahoots","cake","calamari","calamity","calcium","calculate","calculus","caliber","calibrate","calm","caloric","calorie","calzone","camcorder","cameo","camera","camisole","camper","campfire","camping","campsite","campus","canal","canary","cancel","candied","candle","candy","cane","canine","canister","cannabis","canned","canning","cannon","cannot","canola","canon","canopener","canopy","canteen","canyon","capable","capably","capacity","cape","capillary","capital","capitol","capped","capricorn","capsize","capsule","caption","captivate","captive","captivity","capture","caramel","carat","caravan","carbon","cardboard","carded","cardiac","cardigan","cardinal","cardstock","carefully","caregiver","careless","caress","caretaker","cargo","caring","carless","carload","carmaker","carnage","carnation","carnival","carnivore","carol","carpenter","carpentry","carpool","carport","carried","carrot","carrousel","carry","cartel","cartload","carton","cartoon","cartridge","cartwheel","carve","carving","carwash","cascade","case","cash","casing","casino","casket","cassette","casually","casualty","catacomb","catalog","catalyst","catalyze","catapult","cataract","catatonic","catcall","catchable","catcher","catching","catchy","caterer","catering","catfight","catfish","cathedral","cathouse","catlike","catnap","catnip","catsup","cattail","cattishly","cattle","catty","catwalk","caucasian","caucus","causal","causation","cause","causing","cauterize","caution","cautious","cavalier","cavalry","caviar","cavity","cedar","celery","celestial","celibacy","celibate","celtic","cement","census","ceramics","ceremony","certainly","certainty","certified","certify","cesarean","cesspool","chafe","chaffing","chain","chair","chalice","challenge","chamber","chamomile","champion","chance","change","channel","chant","chaos","chaperone","chaplain","chapped","chaps","chapter","character","charbroil","charcoal","charger","charging","chariot","charity","charm","charred","charter","charting","chase","chasing","chaste","chastise","chastity","chatroom","chatter","chatting","chatty","cheating","cheddar","cheek","cheer","cheese","cheesy","chef","chemicals","chemist","chemo","cherisher","cherub","chess","chest","chevron","chevy","chewable","chewer","chewing","chewy","chief","chihuahua","childcare","childhood","childish","childless","childlike","chili","chill","chimp","chip","chirping","chirpy","chitchat","chivalry","chive","chloride","chlorine","choice","chokehold","choking","chomp","chooser","choosing","choosy","chop","chosen","chowder","chowtime","chrome","chubby","chuck","chug","chummy","chump","chunk","churn","chute","cider","cilantro","cinch","cinema","cinnamon","circle","circling","circular","circulate","circus","citable","citadel","citation","citizen","citric","citrus","city","civic","civil","clad","claim","clambake","clammy","clamor","clamp","clamshell","clang","clanking","clapped","clapper","clapping","clarify","clarinet","clarity","clash","clasp","class","clatter","clause","clavicle","claw","clay","clean","clear","cleat","cleaver","cleft","clench","clergyman","clerical","clerk","clever","clicker","client","climate","climatic","cling","clinic","clinking","clip","clique","cloak","clobber","clock","clone","cloning","closable","closure","clothes","clothing","cloud","clover","clubbed","clubbing","clubhouse","clump","clumsily","clumsy","clunky","clustered","clutch","clutter","coach","coagulant","coastal","coaster","coasting","coastland","coastline","coat","coauthor","cobalt","cobbler","cobweb","cocoa","coconut","cod","coeditor","coerce","coexist","coffee","cofounder","cognition","cognitive","cogwheel","coherence","coherent","cohesive","coil","coke","cola","cold","coleslaw","coliseum","collage","collapse","collar","collected","collector","collide","collie","collision","colonial","colonist","colonize","colony","colossal","colt","coma","come","comfort","comfy","comic","coming","comma","commence","commend","comment","commerce","commode","commodity","commodore","common","commotion","commute","commuting","compacted","compacter","compactly","compactor","companion","company","compare","compel","compile","comply","component","composed","composer","composite","compost","composure","compound","compress","comprised","computer","computing","comrade","concave","conceal","conceded","concept","concerned","concert","conch","concierge","concise","conclude","concrete","concur","condense","condiment","condition","condone","conducive","conductor","conduit","cone","confess","confetti","confidant","confident","confider","confiding","configure","confined","confining","confirm","conflict","conform","confound","confront","confused","confusing","confusion","congenial","congested","congrats","congress","conical","conjoined","conjure","conjuror","connected","connector","consensus","consent","console","consoling","consonant","constable","constant","constrain","constrict","construct","consult","consumer","consuming","contact","container","contempt","contend","contented","contently","contents","contest","context","contort","contour","contrite","control","contusion","convene","convent","copartner","cope","copied","copier","copilot","coping","copious","copper","copy","coral","cork","cornball","cornbread","corncob","cornea","corned","corner","cornfield","cornflake","cornhusk","cornmeal","cornstalk","corny","coronary","coroner","corporal","corporate","corral","correct","corridor","corrode","corroding","corrosive","corsage","corset","cortex","cosigner","cosmetics","cosmic","cosmos","cosponsor","cost","cottage","cotton","couch","cough","could","countable","countdown","counting","countless","country","county","courier","covenant","cover","coveted","coveting","coyness","cozily","coziness","cozy","crabbing","crabgrass","crablike","crabmeat","cradle","cradling","crafter","craftily","craftsman","craftwork","crafty","cramp","cranberry","crane","cranial","cranium","crank","crate","crave","craving","crawfish","crawlers","crawling","crayfish","crayon","crazed","crazily","craziness","crazy","creamed","creamer","creamlike","crease","creasing","creatable","create","creation","creative","creature","credible","credibly","credit","creed","creme","creole","crepe","crept","crescent","crested","cresting","crestless","crevice","crewless","crewman","crewmate","crib","cricket","cried","crier","crimp","crimson","cringe","cringing","crinkle","crinkly","crisped","crisping","crisply","crispness","crispy","criteria","critter","croak","crock","crook","croon","crop","cross","crouch","crouton","crowbar","crowd","crown","crucial","crudely","crudeness","cruelly","cruelness","cruelty","crumb","crummiest","crummy","crumpet","crumpled","cruncher","crunching","crunchy","crusader","crushable","crushed","crusher","crushing","crust","crux","crying","cryptic","crystal","cubbyhole","cube","cubical","cubicle","cucumber","cuddle","cuddly","cufflink","culinary","culminate","culpable","culprit","cultivate","cultural","culture","cupbearer","cupcake","cupid","cupped","cupping","curable","curator","curdle","cure","curfew","curing","curled","curler","curliness","curling","curly","curry","curse","cursive","cursor","curtain","curtly","curtsy","curvature","curve","curvy","cushy","cusp","cussed","custard","custodian","custody","customary","customer","customize","customs","cut","cycle","cyclic","cycling","cyclist","cylinder","cymbal","cytoplasm","cytoplast","dab","dad","daffodil","dagger","daily","daintily","dainty","dairy","daisy","dallying","dance","dancing","dandelion","dander","dandruff","dandy","danger","dangle","dangling","daredevil","dares","daringly","darkened","darkening","darkish","darkness","darkroom","darling","darn","dart","darwinism","dash","dastardly","data","datebook","dating","daughter","daunting","dawdler","dawn","daybed","daybreak","daycare","daydream","daylight","daylong","dayroom","daytime","dazzler","dazzling","deacon","deafening","deafness","dealer","dealing","dealmaker","dealt","dean","debatable","debate","debating","debit","debrief","debtless","debtor","debug","debunk","decade","decaf","decal","decathlon","decay","deceased","deceit","deceiver","deceiving","december","decency","decent","deception","deceptive","decibel","decidable","decimal","decimeter","decipher","deck","declared","decline","decode","decompose","decorated","decorator","decoy","decrease","decree","dedicate","dedicator","deduce","deduct","deed","deem","deepen","deeply","deepness","deface","defacing","defame","default","defeat","defection","defective","defendant","defender","defense","defensive","deferral","deferred","defiance","defiant","defile","defiling","define","definite","deflate","deflation","deflator","deflected","deflector","defog","deforest","defraud","defrost","deftly","defuse","defy","degraded","degrading","degrease","degree","dehydrate","deity","dejected","delay","delegate","delegator","delete","deletion","delicacy","delicate","delicious","delighted","delirious","delirium","deliverer","delivery","delouse","delta","deluge","delusion","deluxe","demanding","demeaning","demeanor","demise","democracy","democrat","demote","demotion","demystify","denatured","deniable","denial","denim","denote","dense","density","dental","dentist","denture","deny","deodorant","deodorize","departed","departure","depict","deplete","depletion","deplored","deploy","deport","depose","depraved","depravity","deprecate","depress","deprive","depth","deputize","deputy","derail","deranged","derby","derived","desecrate","deserve","deserving","designate","designed","designer","designing","deskbound","desktop","deskwork","desolate","despair","despise","despite","destiny","destitute","destruct","detached","detail","detection","detective","detector","detention","detergent","detest","detonate","detonator","detoxify","detract","deuce","devalue","deviancy","deviant","deviate","deviation","deviator","device","devious","devotedly","devotee","devotion","devourer","devouring","devoutly","dexterity","dexterous","diabetes","diabetic","diabolic","diagnoses","diagnosis","diagram","dial","diameter","diaper","diaphragm","diary","dice","dicing","dictate","dictation","dictator","difficult","diffused","diffuser","diffusion","diffusive","dig","dilation","diligence","diligent","dill","dilute","dime","diminish","dimly","dimmed","dimmer","dimness","dimple","diner","dingbat","dinghy","dinginess","dingo","dingy","dining","dinner","diocese","dioxide","diploma","dipped","dipper","dipping","directed","direction","directive","directly","directory","direness","dirtiness","disabled","disagree","disallow","disarm","disarray","disaster","disband","disbelief","disburse","discard","discern","discharge","disclose","discolor","discount","discourse","discover","discuss","disdain","disengage","disfigure","disgrace","dish","disinfect","disjoin","disk","dislike","disliking","dislocate","dislodge","disloyal","dismantle","dismay","dismiss","dismount","disobey","disorder","disown","disparate","disparity","dispatch","dispense","dispersal","dispersed","disperser","displace","display","displease","disposal","dispose","disprove","dispute","disregard","disrupt","dissuade","distance","distant","distaste","distill","distinct","distort","distract","distress","district","distrust","ditch","ditto","ditzy","dividable","divided","dividend","dividers","dividing","divinely","diving","divinity","divisible","divisibly","division","divisive","divorcee","dizziness","dizzy","doable","docile","dock","doctrine","document","dodge","dodgy","doily","doing","dole","dollar","dollhouse","dollop","dolly","dolphin","domain","domelike","domestic","dominion","dominoes","donated","donation","donator","donor","donut","doodle","doorbell","doorframe","doorknob","doorman","doormat","doornail","doorpost","doorstep","doorstop","doorway","doozy","dork","dormitory","dorsal","dosage","dose","dotted","doubling","douche","dove","down","dowry","doze","drab","dragging","dragonfly","dragonish","dragster","drainable","drainage","drained","drainer","drainpipe","dramatic","dramatize","drank","drapery","drastic","draw","dreaded","dreadful","dreadlock","dreamboat","dreamily","dreamland","dreamless","dreamlike","dreamt","dreamy","drearily","dreary","drench","dress","drew","dribble","dried","drier","drift","driller","drilling","drinkable","drinking","dripping","drippy","drivable","driven","driver","driveway","driving","drizzle","drizzly","drone","drool","droop","drop-down","dropbox","dropkick","droplet","dropout","dropper","drove","drown","drowsily","drudge","drum","dry","dubbed","dubiously","duchess","duckbill","ducking","duckling","ducktail","ducky","duct","dude","duffel","dugout","duh","duke","duller","dullness","duly","dumping","dumpling","dumpster","duo","dupe","duplex","duplicate","duplicity","durable","durably","duration","duress","during","dusk","dust","dutiful","duty","duvet","dwarf","dweeb","dwelled","dweller","dwelling","dwindle","dwindling","dynamic","dynamite","dynasty","dyslexia","dyslexic","each","eagle","earache","eardrum","earflap","earful","earlobe","early","earmark","earmuff","earphone","earpiece","earplugs","earring","earshot","earthen","earthlike","earthling","earthly","earthworm","earthy","earwig","easeful","easel","easiest","easily","easiness","easing","eastbound","eastcoast","easter","eastward","eatable","eaten","eatery","eating","eats","ebay","ebony","ebook","ecard","eccentric","echo","eclair","eclipse","ecologist","ecology","economic","economist","economy","ecosphere","ecosystem","edge","edginess","edging","edgy","edition","editor","educated","education","educator","eel","effective","effects","efficient","effort","eggbeater","egging","eggnog","eggplant","eggshell","egomaniac","egotism","egotistic","either","eject","elaborate","elastic","elated","elbow","eldercare","elderly","eldest","electable","election","elective","elephant","elevate","elevating","elevation","elevator","eleven","elf","eligible","eligibly","eliminate","elite","elitism","elixir","elk","ellipse","elliptic","elm","elongated","elope","eloquence","eloquent","elsewhere","elude","elusive","elves","email","embargo","embark","embassy","embattled","embellish","ember","embezzle","emblaze","emblem","embody","embolism","emboss","embroider","emcee","emerald","emergency","emission","emit","emote","emoticon","emotion","empathic","empathy","emperor","emphases","emphasis","emphasize","emphatic","empirical","employed","employee","employer","emporium","empower","emptier","emptiness","empty","emu","enable","enactment","enamel","enchanted","enchilada","encircle","enclose","enclosure","encode","encore","encounter","encourage","encroach","encrust","encrypt","endanger","endeared","endearing","ended","ending","endless","endnote","endocrine","endorphin","endorse","endowment","endpoint","endurable","endurance","enduring","energetic","energize","energy","enforced","enforcer","engaged","engaging","engine","engorge","engraved","engraver","engraving","engross","engulf","enhance","enigmatic","enjoyable","enjoyably","enjoyer","enjoying","enjoyment","enlarged","enlarging","enlighten","enlisted","enquirer","enrage","enrich","enroll","enslave","ensnare","ensure","entail","entangled","entering","entertain","enticing","entire","entitle","entity","entomb","entourage","entrap","entree","entrench","entrust","entryway","entwine","enunciate","envelope","enviable","enviably","envious","envision","envoy","envy","enzyme","epic","epidemic","epidermal","epidermis","epidural","epilepsy","epileptic","epilogue","epiphany","episode","equal","equate","equation","equator","equinox","equipment","equity","equivocal","eradicate","erasable","erased","eraser","erasure","ergonomic","errand","errant","erratic","error","erupt","escalate","escalator","escapable","escapade","escapist","escargot","eskimo","esophagus","espionage","espresso","esquire","essay","essence","essential","establish","estate","esteemed","estimate","estimator","estranged","estrogen","etching","eternal","eternity","ethanol","ether","ethically","ethics","euphemism","evacuate","evacuee","evade","evaluate","evaluator","evaporate","evasion","evasive","even","everglade","evergreen","everybody","everyday","everyone","evict","evidence","evident","evil","evoke","evolution","evolve","exact","exalted","example","excavate","excavator","exceeding","exception","excess","exchange","excitable","exciting","exclaim","exclude","excluding","exclusion","exclusive","excretion","excretory","excursion","excusable","excusably","excuse","exemplary","exemplify","exemption","exerciser","exert","exes","exfoliate","exhale","exhaust","exhume","exile","existing","exit","exodus","exonerate","exorcism","exorcist","expand","expanse","expansion","expansive","expectant","expedited","expediter","expel","expend","expenses","expensive","expert","expire","expiring","explain","expletive","explicit","explode","exploit","explore","exploring","exponent","exporter","exposable","expose","exposure","express","expulsion","exquisite","extended","extending","extent","extenuate","exterior","external","extinct","extortion","extradite","extras","extrovert","extrude","extruding","exuberant","fable","fabric","fabulous","facebook","facecloth","facedown","faceless","facelift","faceplate","faceted","facial","facility","facing","facsimile","faction","factoid","factor","factsheet","factual","faculty","fade","fading","failing","falcon","fall","false","falsify","fame","familiar","family","famine","famished","fanatic","fancied","fanciness","fancy","fanfare","fang","fanning","fantasize","fantastic","fantasy","fascism","fastball","faster","fasting","fastness","faucet","favorable","favorably","favored","favoring","favorite","fax","feast","federal","fedora","feeble","feed","feel","feisty","feline","felt-tip","feminine","feminism","feminist","feminize","femur","fence","fencing","fender","ferment","fernlike","ferocious","ferocity","ferret","ferris","ferry","fervor","fester","festival","festive","festivity","fetal","fetch","fever","fiber","fiction","fiddle","fiddling","fidelity","fidgeting","fidgety","fifteen","fifth","fiftieth","fifty","figment","figure","figurine","filing","filled","filler","filling","film","filter","filth","filtrate","finale","finalist","finalize","finally","finance","financial","finch","fineness","finer","finicky","finished","finisher","finishing","finite","finless","finlike","fiscally","fit","five","flaccid","flagman","flagpole","flagship","flagstick","flagstone","flail","flakily","flaky","flame","flammable","flanked","flanking","flannels","flap","flaring","flashback","flashbulb","flashcard","flashily","flashing","flashy","flask","flatbed","flatfoot","flatly","flatness","flatten","flattered","flatterer","flattery","flattop","flatware","flatworm","flavored","flavorful","flavoring","flaxseed","fled","fleshed","fleshy","flick","flier","flight","flinch","fling","flint","flip","flirt","float","flock","flogging","flop","floral","florist","floss","flounder","flyable","flyaway","flyer","flying","flyover","flypaper","foam","foe","fog","foil","folic","folk","follicle","follow","fondling","fondly","fondness","fondue","font","food","fool","footage","football","footbath","footboard","footer","footgear","foothill","foothold","footing","footless","footman","footnote","footpad","footpath","footprint","footrest","footsie","footsore","footwear","footwork","fossil","foster","founder","founding","fountain","fox","foyer","fraction","fracture","fragile","fragility","fragment","fragrance","fragrant","frail","frame","framing","frantic","fraternal","frayed","fraying","frays","freckled","freckles","freebase","freebee","freebie","freedom","freefall","freehand","freeing","freeload","freely","freemason","freeness","freestyle","freeware","freeway","freewill","freezable","freezing","freight","french","frenzied","frenzy","frequency","frequent","fresh","fretful","fretted","friction","friday","fridge","fried","friend","frighten","frightful","frigidity","frigidly","frill","fringe","frisbee","frisk","fritter","frivolous","frolic","from","front","frostbite","frosted","frostily","frosting","frostlike","frosty","froth","frown","frozen","fructose","frugality","frugally","fruit","frustrate","frying","gab","gaffe","gag","gainfully","gaining","gains","gala","gallantly","galleria","gallery","galley","gallon","gallows","gallstone","galore","galvanize","gambling","game","gaming","gamma","gander","gangly","gangrene","gangway","gap","garage","garbage","garden","gargle","garland","garlic","garment","garnet","garnish","garter","gas","gatherer","gathering","gating","gauging","gauntlet","gauze","gave","gawk","gazing","gear","gecko","geek","geiger","gem","gender","generic","generous","genetics","genre","gentile","gentleman","gently","gents","geography","geologic","geologist","geology","geometric","geometry","geranium","gerbil","geriatric","germicide","germinate","germless","germproof","gestate","gestation","gesture","getaway","getting","getup","giant","gibberish","giblet","giddily","giddiness","giddy","gift","gigabyte","gigahertz","gigantic","giggle","giggling","giggly","gigolo","gilled","gills","gimmick","girdle","giveaway","given","giver","giving","gizmo","gizzard","glacial","glacier","glade","gladiator","gladly","glamorous","glamour","glance","glancing","glandular","glare","glaring","glass","glaucoma","glazing","gleaming","gleeful","glider","gliding","glimmer","glimpse","glisten","glitch","glitter","glitzy","gloater","gloating","gloomily","gloomy","glorified","glorifier","glorify","glorious","glory","gloss","glove","glowing","glowworm","glucose","glue","gluten","glutinous","glutton","gnarly","gnat","goal","goatskin","goes","goggles","going","goldfish","goldmine","goldsmith","golf","goliath","gonad","gondola","gone","gong","good","gooey","goofball","goofiness","goofy","google","goon","gopher","gore","gorged","gorgeous","gory","gosling","gossip","gothic","gotten","gout","gown","grab","graceful","graceless","gracious","gradation","graded","grader","gradient","grading","gradually","graduate","graffiti","grafted","grafting","grain","granddad","grandkid","grandly","grandma","grandpa","grandson","granite","granny","granola","grant","granular","grape","graph","grapple","grappling","grasp","grass","gratified","gratify","grating","gratitude","gratuity","gravel","graveness","graves","graveyard","gravitate","gravity","gravy","gray","grazing","greasily","greedily","greedless","greedy","green","greeter","greeting","grew","greyhound","grid","grief","grievance","grieving","grievous","grill","grimace","grimacing","grime","griminess","grimy","grinch","grinning","grip","gristle","grit","groggily","groggy","groin","groom","groove","grooving","groovy","grope","ground","grouped","grout","grove","grower","growing","growl","grub","grudge","grudging","grueling","gruffly","grumble","grumbling","grumbly","grumpily","grunge","grunt","guacamole","guidable","guidance","guide","guiding","guileless","guise","gulf","gullible","gully","gulp","gumball","gumdrop","gumminess","gumming","gummy","gurgle","gurgling","guru","gush","gusto","gusty","gutless","guts","gutter","guy","guzzler","gyration","habitable","habitant","habitat","habitual","hacked","hacker","hacking","hacksaw","had","haggler","haiku","half","halogen","halt","halved","halves","hamburger","hamlet","hammock","hamper","hamster","hamstring","handbag","handball","handbook","handbrake","handcart","handclap","handclasp","handcraft","handcuff","handed","handful","handgrip","handgun","handheld","handiness","handiwork","handlebar","handled","handler","handling","handmade","handoff","handpick","handprint","handrail","handsaw","handset","handsfree","handshake","handstand","handwash","handwork","handwoven","handwrite","handyman","hangnail","hangout","hangover","hangup","hankering","hankie","hanky","haphazard","happening","happier","happiest","happily","happiness","happy","harbor","hardcopy","hardcore","hardcover","harddisk","hardened","hardener","hardening","hardhat","hardhead","hardiness","hardly","hardness","hardship","hardware","hardwired","hardwood","hardy","harmful","harmless","harmonica","harmonics","harmonize","harmony","harness","harpist","harsh","harvest","hash","hassle","haste","hastily","hastiness","hasty","hatbox","hatchback","hatchery","hatchet","hatching","hatchling","hate","hatless","hatred","haunt","haven","hazard","hazelnut","hazily","haziness","hazing","hazy","headache","headband","headboard","headcount","headdress","headed","header","headfirst","headgear","heading","headlamp","headless","headlock","headphone","headpiece","headrest","headroom","headscarf","headset","headsman","headstand","headstone","headway","headwear","heap","heat","heave","heavily","heaviness","heaving","hedge","hedging","heftiness","hefty","helium","helmet","helper","helpful","helping","helpless","helpline","hemlock","hemstitch","hence","henchman","henna","herald","herbal","herbicide","herbs","heritage","hermit","heroics","heroism","herring","herself","hertz","hesitancy","hesitant","hesitate","hexagon","hexagram","hubcap","huddle","huddling","huff","hug","hula","hulk","hull","human","humble","humbling","humbly","humid","humiliate","humility","humming","hummus","humongous","humorist","humorless","humorous","humpback","humped","humvee","hunchback","hundredth","hunger","hungrily","hungry","hunk","hunter","hunting","huntress","huntsman","hurdle","hurled","hurler","hurling","hurray","hurricane","hurried","hurry","hurt","husband","hush","husked","huskiness","hut","hybrid","hydrant","hydrated","hydration","hydrogen","hydroxide","hyperlink","hypertext","hyphen","hypnoses","hypnosis","hypnotic","hypnotism","hypnotist","hypnotize","hypocrisy","hypocrite","ibuprofen","ice","iciness","icing","icky","icon","icy","idealism","idealist","idealize","ideally","idealness","identical","identify","identity","ideology","idiocy","idiom","idly","igloo","ignition","ignore","iguana","illicitly","illusion","illusive","image","imaginary","imagines","imaging","imbecile","imitate","imitation","immature","immerse","immersion","imminent","immobile","immodest","immorally","immortal","immovable","immovably","immunity","immunize","impaired","impale","impart","impatient","impeach","impeding","impending","imperfect","imperial","impish","implant","implement","implicate","implicit","implode","implosion","implosive","imply","impolite","important","importer","impose","imposing","impotence","impotency","impotent","impound","imprecise","imprint","imprison","impromptu","improper","improve","improving","improvise","imprudent","impulse","impulsive","impure","impurity","iodine","iodize","ion","ipad","iphone","ipod","irate","irk","iron","irregular","irrigate","irritable","irritably","irritant","irritate","islamic","islamist","isolated","isolating","isolation","isotope","issue","issuing","italicize","italics","item","itinerary","itunes","ivory","ivy","jab","jackal","jacket","jackknife","jackpot","jailbird","jailbreak","jailer","jailhouse","jalapeno","jam","janitor","january","jargon","jarring","jasmine","jaundice","jaunt","java","jawed","jawless","jawline","jaws","jaybird","jaywalker","jazz","jeep","jeeringly","jellied","jelly","jersey","jester","jet","jiffy","jigsaw","jimmy","jingle","jingling","jinx","jitters","jittery","job","jockey","jockstrap","jogger","jogging","john","joining","jokester","jokingly","jolliness","jolly","jolt","jot","jovial","joyfully","joylessly","joyous","joyride","joystick","jubilance","jubilant","judge","judgingly","judicial","judiciary","judo","juggle","juggling","jugular","juice","juiciness","juicy","jujitsu","jukebox","july","jumble","jumbo","jump","junction","juncture","june","junior","juniper","junkie","junkman","junkyard","jurist","juror","jury","justice","justifier","justify","justly","justness","juvenile","kabob","kangaroo","karaoke","karate","karma","kebab","keenly","keenness","keep","keg","kelp","kennel","kept","kerchief","kerosene","kettle","kick","kiln","kilobyte","kilogram","kilometer","kilowatt","kilt","kimono","kindle","kindling","kindly","kindness","kindred","kinetic","kinfolk","king","kinship","kinsman","kinswoman","kissable","kisser","kissing","kitchen","kite","kitten","kitty","kiwi","kleenex","knapsack","knee","knelt","knickers","knoll","koala","kooky","kosher","krypton","kudos","kung","labored","laborer","laboring","laborious","labrador","ladder","ladies","ladle","ladybug","ladylike","lagged","lagging","lagoon","lair","lake","lance","landed","landfall","landfill","landing","landlady","landless","landline","landlord","landmark","landmass","landmine","landowner","landscape","landside","landslide","language","lankiness","lanky","lantern","lapdog","lapel","lapped","lapping","laptop","lard","large","lark","lash","lasso","last","latch","late","lather","latitude","latrine","latter","latticed","launch","launder","laundry","laurel","lavender","lavish","laxative","lazily","laziness","lazy","lecturer","left","legacy","legal","legend","legged","leggings","legible","legibly","legislate","lego","legroom","legume","legwarmer","legwork","lemon","lend","length","lens","lent","leotard","lesser","letdown","lethargic","lethargy","letter","lettuce","level","leverage","levers","levitate","levitator","liability","liable","liberty","librarian","library","licking","licorice","lid","life","lifter","lifting","liftoff","ligament","likely","likeness","likewise","liking","lilac","lilly","lily","limb","limeade","limelight","limes","limit","limping","limpness","line","lingo","linguini","linguist","lining","linked","linoleum","linseed","lint","lion","lip","liquefy","liqueur","liquid","lisp","list","litigate","litigator","litmus","litter","little","livable","lived","lively","liver","livestock","lividly","living","lizard","lubricant","lubricate","lucid","luckily","luckiness","luckless","lucrative","ludicrous","lugged","lukewarm","lullaby","lumber","luminance","luminous","lumpiness","lumping","lumpish","lunacy","lunar","lunchbox","luncheon","lunchroom","lunchtime","lung","lurch","lure","luridness","lurk","lushly","lushness","luster","lustfully","lustily","lustiness","lustrous","lusty","luxurious","luxury","lying","lyrically","lyricism","lyricist","lyrics","macarena","macaroni","macaw","mace","machine","machinist","magazine","magenta","maggot","magical","magician","magma","magnesium","magnetic","magnetism","magnetize","magnifier","magnify","magnitude","magnolia","mahogany","maimed","majestic","majesty","majorette","majority","makeover","maker","makeshift","making","malformed","malt","mama","mammal","mammary","mammogram","manager","managing","manatee","mandarin","mandate","mandatory","mandolin","manger","mangle","mango","mangy","manhandle","manhole","manhood","manhunt","manicotti","manicure","manifesto","manila","mankind","manlike","manliness","manly","manmade","manned","mannish","manor","manpower","mantis","mantra","manual","many","map","marathon","marauding","marbled","marbles","marbling","march","mardi","margarine","margarita","margin","marigold","marina","marine","marital","maritime","marlin","marmalade","maroon","married","marrow","marry","marshland","marshy","marsupial","marvelous","marxism","mascot","masculine","mashed","mashing","massager","masses","massive","mastiff","matador","matchbook","matchbox","matcher","matching","matchless","material","maternal","maternity","math","mating","matriarch","matrimony","matrix","matron","matted","matter","maturely","maturing","maturity","mauve","maverick","maximize","maximum","maybe","mayday","mayflower","moaner","moaning","mobile","mobility","mobilize","mobster","mocha","mocker","mockup","modified","modify","modular","modulator","module","moisten","moistness","moisture","molar","molasses","mold","molecular","molecule","molehill","mollusk","mom","monastery","monday","monetary","monetize","moneybags","moneyless","moneywise","mongoose","mongrel","monitor","monkhood","monogamy","monogram","monologue","monopoly","monorail","monotone","monotype","monoxide","monsieur","monsoon","monstrous","monthly","monument","moocher","moodiness","moody","mooing","moonbeam","mooned","moonlight","moonlike","moonlit","moonrise","moonscape","moonshine","moonstone","moonwalk","mop","morale","morality","morally","morbidity","morbidly","morphine","morphing","morse","mortality","mortally","mortician","mortified","mortify","mortuary","mosaic","mossy","most","mothball","mothproof","motion","motivate","motivator","motive","motocross","motor","motto","mountable","mountain","mounted","mounting","mourner","mournful","mouse","mousiness","moustache","mousy","mouth","movable","move","movie","moving","mower","mowing","much","muck","mud","mug","mulberry","mulch","mule","mulled","mullets","multiple","multiply","multitask","multitude","mumble","mumbling","mumbo","mummified","mummify","mummy","mumps","munchkin","mundane","municipal","muppet","mural","murkiness","murky","murmuring","muscular","museum","mushily","mushiness","mushroom","mushy","music","musket","muskiness","musky","mustang","mustard","muster","mustiness","musty","mutable","mutate","mutation","mute","mutilated","mutilator","mutiny","mutt","mutual","muzzle","myself","myspace","mystified","mystify","myth","nacho","nag","nail","name","naming","nanny","nanometer","nape","napkin","napped","napping","nappy","narrow","nastily","nastiness","national","native","nativity","natural","nature","naturist","nautical","navigate","navigator","navy","nearby","nearest","nearly","nearness","neatly","neatness","nebula","nebulizer","nectar","negate","negation","negative","neglector","negligee","negligent","negotiate","nemeses","nemesis","neon","nephew","nerd","nervous","nervy","nest","net","neurology","neuron","neurosis","neurotic","neuter","neutron","never","next","nibble","nickname","nicotine","niece","nifty","nimble","nimbly","nineteen","ninetieth","ninja","nintendo","ninth","nuclear","nuclei","nucleus","nugget","nullify","number","numbing","numbly","numbness","numeral","numerate","numerator","numeric","numerous","nuptials","nursery","nursing","nurture","nutcase","nutlike","nutmeg","nutrient","nutshell","nuttiness","nutty","nuzzle","nylon","oaf","oak","oasis","oat","obedience","obedient","obituary","object","obligate","obliged","oblivion","oblivious","oblong","obnoxious","oboe","obscure","obscurity","observant","observer","observing","obsessed","obsession","obsessive","obsolete","obstacle","obstinate","obstruct","obtain","obtrusive","obtuse","obvious","occultist","occupancy","occupant","occupier","occupy","ocean","ocelot","octagon","octane","october","octopus","ogle","oil","oink","ointment","okay","old","olive","olympics","omega","omen","ominous","omission","omit","omnivore","onboard","oncoming","ongoing","onion","online","onlooker","only","onscreen","onset","onshore","onslaught","onstage","onto","onward","onyx","oops","ooze","oozy","opacity","opal","open","operable","operate","operating","operation","operative","operator","opium","opossum","opponent","oppose","opposing","opposite","oppressed","oppressor","opt","opulently","osmosis","other","otter","ouch","ought","ounce","outage","outback","outbid","outboard","outbound","outbreak","outburst","outcast","outclass","outcome","outdated","outdoors","outer","outfield","outfit","outflank","outgoing","outgrow","outhouse","outing","outlast","outlet","outline","outlook","outlying","outmatch","outmost","outnumber","outplayed","outpost","outpour","output","outrage","outrank","outreach","outright","outscore","outsell","outshine","outshoot","outsider","outskirts","outsmart","outsource","outspoken","outtakes","outthink","outward","outweigh","outwit","oval","ovary","oven","overact","overall","overarch","overbid","overbill","overbite","overblown","overboard","overbook","overbuilt","overcast","overcoat","overcome","overcook","overcrowd","overdraft","overdrawn","overdress","overdrive","overdue","overeager","overeater","overexert","overfed","overfeed","overfill","overflow","overfull","overgrown","overhand","overhang","overhaul","overhead","overhear","overheat","overhung","overjoyed","overkill","overlabor","overlaid","overlap","overlay","overload","overlook","overlord","overlying","overnight","overpass","overpay","overplant","overplay","overpower","overprice","overrate","overreach","overreact","override","overripe","overrule","overrun","overshoot","overshot","oversight","oversized","oversleep","oversold","overspend","overstate","overstay","overstep","overstock","overstuff","oversweet","overtake","overthrow","overtime","overtly","overtone","overture","overturn","overuse","overvalue","overview","overwrite","owl","oxford","oxidant","oxidation","oxidize","oxidizing","oxygen","oxymoron","oyster","ozone","paced","pacemaker","pacific","pacifier","pacifism","pacifist","pacify","padded","padding","paddle","paddling","padlock","pagan","pager","paging","pajamas","palace","palatable","palm","palpable","palpitate","paltry","pampered","pamperer","pampers","pamphlet","panama","pancake","pancreas","panda","pandemic","pang","panhandle","panic","panning","panorama","panoramic","panther","pantomime","pantry","pants","pantyhose","paparazzi","papaya","paper","paprika","papyrus","parabola","parachute","parade","paradox","paragraph","parakeet","paralegal","paralyses","paralysis","paralyze","paramedic","parameter","paramount","parasail","parasite","parasitic","parcel","parched","parchment","pardon","parish","parka","parking","parkway","parlor","parmesan","parole","parrot","parsley","parsnip","partake","parted","parting","partition","partly","partner","partridge","party","passable","passably","passage","passcode","passenger","passerby","passing","passion","passive","passivism","passover","passport","password","pasta","pasted","pastel","pastime","pastor","pastrami","pasture","pasty","patchwork","patchy","paternal","paternity","path","patience","patient","patio","patriarch","patriot","patrol","patronage","patronize","pauper","pavement","paver","pavestone","pavilion","paving","pawing","payable","payback","paycheck","payday","payee","payer","paying","payment","payphone","payroll","pebble","pebbly","pecan","pectin","peculiar","peddling","pediatric","pedicure","pedigree","pedometer","pegboard","pelican","pellet","pelt","pelvis","penalize","penalty","pencil","pendant","pending","penholder","penknife","pennant","penniless","penny","penpal","pension","pentagon","pentagram","pep","perceive","percent","perch","percolate","perennial","perfected","perfectly","perfume","periscope","perish","perjurer","perjury","perkiness","perky","perm","peroxide","perpetual","perplexed","persecute","persevere","persuaded","persuader","pesky","peso","pessimism","pessimist","pester","pesticide","petal","petite","petition","petri","petroleum","petted","petticoat","pettiness","petty","petunia","phantom","phobia","phoenix","phonebook","phoney","phonics","phoniness","phony","phosphate","photo","phrase","phrasing","placard","placate","placidly","plank","planner","plant","plasma","plaster","plastic","plated","platform","plating","platinum","platonic","platter","platypus","plausible","plausibly","playable","playback","player","playful","playgroup","playhouse","playing","playlist","playmaker","playmate","playoff","playpen","playroom","playset","plaything","playtime","plaza","pleading","pleat","pledge","plentiful","plenty","plethora","plexiglas","pliable","plod","plop","plot","plow","ploy","pluck","plug","plunder","plunging","plural","plus","plutonium","plywood","poach","pod","poem","poet","pogo","pointed","pointer","pointing","pointless","pointy","poise","poison","poker","poking","polar","police","policy","polio","polish","politely","polka","polo","polyester","polygon","polygraph","polymer","poncho","pond","pony","popcorn","pope","poplar","popper","poppy","popsicle","populace","popular","populate","porcupine","pork","porous","porridge","portable","portal","portfolio","porthole","portion","portly","portside","poser","posh","posing","possible","possibly","possum","postage","postal","postbox","postcard","posted","poster","posting","postnasal","posture","postwar","pouch","pounce","pouncing","pound","pouring","pout","powdered","powdering","powdery","power","powwow","pox","praising","prance","prancing","pranker","prankish","prankster","prayer","praying","preacher","preaching","preachy","preamble","precinct","precise","precision","precook","precut","predator","predefine","predict","preface","prefix","preflight","preformed","pregame","pregnancy","pregnant","preheated","prelaunch","prelaw","prelude","premiere","premises","premium","prenatal","preoccupy","preorder","prepaid","prepay","preplan","preppy","preschool","prescribe","preseason","preset","preshow","president","presoak","press","presume","presuming","preteen","pretended","pretender","pretense","pretext","pretty","pretzel","prevail","prevalent","prevent","preview","previous","prewar","prewashed","prideful","pried","primal","primarily","primary","primate","primer","primp","princess","print","prior","prism","prison","prissy","pristine","privacy","private","privatize","prize","proactive","probable","probably","probation","probe","probing","probiotic","problem","procedure","process","proclaim","procreate","procurer","prodigal","prodigy","produce","product","profane","profanity","professed","professor","profile","profound","profusely","progeny","prognosis","program","progress","projector","prologue","prolonged","promenade","prominent","promoter","promotion","prompter","promptly","prone","prong","pronounce","pronto","proofing","proofread","proofs","propeller","properly","property","proponent","proposal","propose","props","prorate","protector","protegee","proton","prototype","protozoan","protract","protrude","proud","provable","proved","proven","provided","provider","providing","province","proving","provoke","provoking","provolone","prowess","prowler","prowling","proximity","proxy","prozac","prude","prudishly","prune","pruning","pry","psychic","public","publisher","pucker","pueblo","pug","pull","pulmonary","pulp","pulsate","pulse","pulverize","puma","pumice","pummel","punch","punctual","punctuate","punctured","pungent","punisher","punk","pupil","puppet","puppy","purchase","pureblood","purebred","purely","pureness","purgatory","purge","purging","purifier","purify","purist","puritan","purity","purple","purplish","purposely","purr","purse","pursuable","pursuant","pursuit","purveyor","pushcart","pushchair","pusher","pushiness","pushing","pushover","pushpin","pushup","pushy","putdown","putt","puzzle","puzzling","pyramid","pyromania","python","quack","quadrant","quail","quaintly","quake","quaking","qualified","qualifier","qualify","quality","qualm","quantum","quarrel","quarry","quartered","quarterly","quarters","quartet","quench","query","quicken","quickly","quickness","quicksand","quickstep","quiet","quill","quilt","quintet","quintuple","quirk","quit","quiver","quizzical","quotable","quotation","quote","rabid","race","racing","racism","rack","racoon","radar","radial","radiance","radiantly","radiated","radiation","radiator","radio","radish","raffle","raft","rage","ragged","raging","ragweed","raider","railcar","railing","railroad","railway","raisin","rake","raking","rally","ramble","rambling","ramp","ramrod","ranch","rancidity","random","ranged","ranger","ranging","ranked","ranking","ransack","ranting","rants","rare","rarity","rascal","rash","rasping","ravage","raven","ravine","raving","ravioli","ravishing","reabsorb","reach","reacquire","reaction","reactive","reactor","reaffirm","ream","reanalyze","reappear","reapply","reappoint","reapprove","rearrange","rearview","reason","reassign","reassure","reattach","reawake","rebalance","rebate","rebel","rebirth","reboot","reborn","rebound","rebuff","rebuild","rebuilt","reburial","rebuttal","recall","recant","recapture","recast","recede","recent","recess","recharger","recipient","recital","recite","reckless","reclaim","recliner","reclining","recluse","reclusive","recognize","recoil","recollect","recolor","reconcile","reconfirm","reconvene","recopy","record","recount","recoup","recovery","recreate","rectal","rectangle","rectified","rectify","recycled","recycler","recycling","reemerge","reenact","reenter","reentry","reexamine","referable","referee","reference","refill","refinance","refined","refinery","refining","refinish","reflected","reflector","reflex","reflux","refocus","refold","reforest","reformat","reformed","reformer","reformist","refract","refrain","refreeze","refresh","refried","refueling","refund","refurbish","refurnish","refusal","refuse","refusing","refutable","refute","regain","regalia","regally","reggae","regime","region","register","registrar","registry","regress","regretful","regroup","regular","regulate","regulator","rehab","reheat","rehire","rehydrate","reimburse","reissue","reiterate","rejoice","rejoicing","rejoin","rekindle","relapse","relapsing","relatable","related","relation","relative","relax","relay","relearn","release","relenting","reliable","reliably","reliance","reliant","relic","relieve","relieving","relight","relish","relive","reload","relocate","relock","reluctant","rely","remake","remark","remarry","rematch","remedial","remedy","remember","reminder","remindful","remission","remix","remnant","remodeler","remold","remorse","remote","removable","removal","removed","remover","removing","rename","renderer","rendering","rendition","renegade","renewable","renewably","renewal","renewed","renounce","renovate","renovator","rentable","rental","rented","renter","reoccupy","reoccur","reopen","reorder","repackage","repacking","repaint","repair","repave","repaying","repayment","repeal","repeated","repeater","repent","rephrase","replace","replay","replica","reply","reporter","repose","repossess","repost","repressed","reprimand","reprint","reprise","reproach","reprocess","reproduce","reprogram","reps","reptile","reptilian","repugnant","repulsion","repulsive","repurpose","reputable","reputably","request","require","requisite","reroute","rerun","resale","resample","rescuer","reseal","research","reselect","reseller","resemble","resend","resent","reset","reshape","reshoot","reshuffle","residence","residency","resident","residual","residue","resigned","resilient","resistant","resisting","resize","resolute","resolved","resonant","resonate","resort","resource","respect","resubmit","result","resume","resupply","resurface","resurrect","retail","retainer","retaining","retake","retaliate","retention","rethink","retinal","retired","retiree","retiring","retold","retool","retorted","retouch","retrace","retract","retrain","retread","retreat","retrial","retrieval","retriever","retry","return","retying","retype","reunion","reunite","reusable","reuse","reveal","reveler","revenge","revenue","reverb","revered","reverence","reverend","reversal","reverse","reversing","reversion","revert","revisable","revise","revision","revisit","revivable","revival","reviver","reviving","revocable","revoke","revolt","revolver","revolving","reward","rewash","rewind","rewire","reword","rework","rewrap","rewrite","rhyme","ribbon","ribcage","rice","riches","richly","richness","rickety","ricotta","riddance","ridden","ride","riding","rifling","rift","rigging","rigid","rigor","rimless","rimmed","rind","rink","rinse","rinsing","riot","ripcord","ripeness","ripening","ripping","ripple","rippling","riptide","rise","rising","risk","risotto","ritalin","ritzy","rival","riverbank","riverbed","riverboat","riverside","riveter","riveting","roamer","roaming","roast","robbing","robe","robin","robotics","robust","rockband","rocker","rocket","rockfish","rockiness","rocking","rocklike","rockslide","rockstar","rocky","rogue","roman","romp","rope","roping","roster","rosy","rotten","rotting","rotunda","roulette","rounding","roundish","roundness","roundup","roundworm","routine","routing","rover","roving","royal","rubbed","rubber","rubbing","rubble","rubdown","ruby","ruckus","rudder","rug","ruined","rule","rumble","rumbling","rummage","rumor","runaround","rundown","runner","running","runny","runt","runway","rupture","rural","ruse","rush","rust","rut","sabbath","sabotage","sacrament","sacred","sacrifice","sadden","saddlebag","saddled","saddling","sadly","sadness","safari","safeguard","safehouse","safely","safeness","saffron","saga","sage","sagging","saggy","said","saint","sake","salad","salami","salaried","salary","saline","salon","saloon","salsa","salt","salutary","salute","salvage","salvaging","salvation","same","sample","sampling","sanction","sanctity","sanctuary","sandal","sandbag","sandbank","sandbar","sandblast","sandbox","sanded","sandfish","sanding","sandlot","sandpaper","sandpit","sandstone","sandstorm","sandworm","sandy","sanitary","sanitizer","sank","santa","sapling","sappiness","sappy","sarcasm","sarcastic","sardine","sash","sasquatch","sassy","satchel","satiable","satin","satirical","satisfied","satisfy","saturate","saturday","sauciness","saucy","sauna","savage","savanna","saved","savings","savior","savor","saxophone","say","scabbed","scabby","scalded","scalding","scale","scaling","scallion","scallop","scalping","scam","scandal","scanner","scanning","scant","scapegoat","scarce","scarcity","scarecrow","scared","scarf","scarily","scariness","scarring","scary","scavenger","scenic","schedule","schematic","scheme","scheming","schilling","schnapps","scholar","science","scientist","scion","scoff","scolding","scone","scoop","scooter","scope","scorch","scorebook","scorecard","scored","scoreless","scorer","scoring","scorn","scorpion","scotch","scoundrel","scoured","scouring","scouting","scouts","scowling","scrabble","scraggly","scrambled","scrambler","scrap","scratch","scrawny","screen","scribble","scribe","scribing","scrimmage","script","scroll","scrooge","scrounger","scrubbed","scrubber","scruffy","scrunch","scrutiny","scuba","scuff","sculptor","sculpture","scurvy","scuttle","secluded","secluding","seclusion","second","secrecy","secret","sectional","sector","secular","securely","security","sedan","sedate","sedation","sedative","sediment","seduce","seducing","segment","seismic","seizing","seldom","selected","selection","selective","selector","self","seltzer","semantic","semester","semicolon","semifinal","seminar","semisoft","semisweet","senate","senator","send","senior","senorita","sensation","sensitive","sensitize","sensually","sensuous","sepia","september","septic","septum","sequel","sequence","sequester","series","sermon","serotonin","serpent","serrated","serve","service","serving","sesame","sessions","setback","setting","settle","settling","setup","sevenfold","seventeen","seventh","seventy","severity","shabby","shack","shaded","shadily","shadiness","shading","shadow","shady","shaft","shakable","shakily","shakiness","shaking","shaky","shale","shallot","shallow","shame","shampoo","shamrock","shank","shanty","shape","shaping","share","sharpener","sharper","sharpie","sharply","sharpness","shawl","sheath","shed","sheep","sheet","shelf","shell","shelter","shelve","shelving","sherry","shield","shifter","shifting","shiftless","shifty","shimmer","shimmy","shindig","shine","shingle","shininess","shining","shiny","ship","shirt","shivering","shock","shone","shoplift","shopper","shopping","shoptalk","shore","shortage","shortcake","shortcut","shorten","shorter","shorthand","shortlist","shortly","shortness","shorts","shortwave","shorty","shout","shove","showbiz","showcase","showdown","shower","showgirl","showing","showman","shown","showoff","showpiece","showplace","showroom","showy","shrank","shrapnel","shredder","shredding","shrewdly","shriek","shrill","shrimp","shrine","shrink","shrivel","shrouded","shrubbery","shrubs","shrug","shrunk","shucking","shudder","shuffle","shuffling","shun","shush","shut","shy","siamese","siberian","sibling","siding","sierra","siesta","sift","sighing","silenced","silencer","silent","silica","silicon","silk","silliness","silly","silo","silt","silver","similarly","simile","simmering","simple","simplify","simply","sincere","sincerity","singer","singing","single","singular","sinister","sinless","sinner","sinuous","sip","siren","sister","sitcom","sitter","sitting","situated","situation","sixfold","sixteen","sixth","sixties","sixtieth","sixtyfold","sizable","sizably","size","sizing","sizzle","sizzling","skater","skating","skedaddle","skeletal","skeleton","skeptic","sketch","skewed","skewer","skid","skied","skier","skies","skiing","skilled","skillet","skillful","skimmed","skimmer","skimming","skimpily","skincare","skinhead","skinless","skinning","skinny","skintight","skipper","skipping","skirmish","skirt","skittle","skydiver","skylight","skyline","skype","skyrocket","skyward","slab","slacked","slacker","slacking","slackness","slacks","slain","slam","slander","slang","slapping","slapstick","slashed","slashing","slate","slather","slaw","sled","sleek","sleep","sleet","sleeve","slept","sliceable","sliced","slicer","slicing","slick","slider","slideshow","sliding","slighted","slighting","slightly","slimness","slimy","slinging","slingshot","slinky","slip","slit","sliver","slobbery","slogan","sloped","sloping","sloppily","sloppy","slot","slouching","slouchy","sludge","slug","slum","slurp","slush","sly","small","smartly","smartness","smasher","smashing","smashup","smell","smelting","smile","smilingly","smirk","smite","smith","smitten","smock","smog","smoked","smokeless","smokiness","smoking","smoky","smolder","smooth","smother","smudge","smudgy","smuggler","smuggling","smugly","smugness","snack","snagged","snaking","snap","snare","snarl","snazzy","sneak","sneer","sneeze","sneezing","snide","sniff","snippet","snipping","snitch","snooper","snooze","snore","snoring","snorkel","snort","snout","snowbird","snowboard","snowbound","snowcap","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowiness","snowless","snowman","snowplow","snowshoe","snowstorm","snowsuit","snowy","snub","snuff","snuggle","snugly","snugness","speak","spearfish","spearhead","spearman","spearmint","species","specimen","specked","speckled","specks","spectacle","spectator","spectrum","speculate","speech","speed","spellbind","speller","spelling","spendable","spender","spending","spent","spew","sphere","spherical","sphinx","spider","spied","spiffy","spill","spilt","spinach","spinal","spindle","spinner","spinning","spinout","spinster","spiny","spiral","spirited","spiritism","spirits","spiritual","splashed","splashing","splashy","splatter","spleen","splendid","splendor","splice","splicing","splinter","splotchy","splurge","spoilage","spoiled","spoiler","spoiling","spoils","spoken","spokesman","sponge","spongy","sponsor","spoof","spookily","spooky","spool","spoon","spore","sporting","sports","sporty","spotless","spotlight","spotted","spotter","spotting","spotty","spousal","spouse","spout","sprain","sprang","sprawl","spray","spree","sprig","spring","sprinkled","sprinkler","sprint","sprite","sprout","spruce","sprung","spry","spud","spur","sputter","spyglass","squabble","squad","squall","squander","squash","squatted","squatter","squatting","squeak","squealer","squealing","squeamish","squeegee","squeeze","squeezing","squid","squiggle","squiggly","squint","squire","squirt","squishier","squishy","stability","stabilize","stable","stack","stadium","staff","stage","staging","stagnant","stagnate","stainable","stained","staining","stainless","stalemate","staleness","stalling","stallion","stamina","stammer","stamp","stand","stank","staple","stapling","starboard","starch","stardom","stardust","starfish","stargazer","staring","stark","starless","starlet","starlight","starlit","starring","starry","starship","starter","starting","startle","startling","startup","starved","starving","stash","state","static","statistic","statue","stature","status","statute","statutory","staunch","stays","steadfast","steadier","steadily","steadying","steam","steed","steep","steerable","steering","steersman","stegosaur","stellar","stem","stench","stencil","step","stereo","sterile","sterility","sterilize","sterling","sternness","sternum","stew","stick","stiffen","stiffly","stiffness","stifle","stifling","stillness","stilt","stimulant","stimulate","stimuli","stimulus","stinger","stingily","stinging","stingray","stingy","stinking","stinky","stipend","stipulate","stir","stitch","stock","stoic","stoke","stole","stomp","stonewall","stoneware","stonework","stoning","stony","stood","stooge","stool","stoop","stoplight","stoppable","stoppage","stopped","stopper","stopping","stopwatch","storable","storage","storeroom","storewide","storm","stout","stove","stowaway","stowing","straddle","straggler","strained","strainer","straining","strangely","stranger","strangle","strategic","strategy","stratus","straw","stray","streak","stream","street","strength","strenuous","strep","stress","stretch","strewn","stricken","strict","stride","strife","strike","striking","strive","striving","strobe","strode","stroller","strongbox","strongly","strongman","struck","structure","strudel","struggle","strum","strung","strut","stubbed","stubble","stubbly","stubborn","stucco","stuck","student","studied","studio","study","stuffed","stuffing","stuffy","stumble","stumbling","stump","stung","stunned","stunner","stunning","stunt","stupor","sturdily","sturdy","styling","stylishly","stylist","stylized","stylus","suave","subarctic","subatomic","subdivide","subdued","subduing","subfloor","subgroup","subheader","subject","sublease","sublet","sublevel","sublime","submarine","submerge","submersed","submitter","subpanel","subpar","subplot","subprime","subscribe","subscript","subsector","subside","subsiding","subsidize","subsidy","subsoil","subsonic","substance","subsystem","subtext","subtitle","subtly","subtotal","subtract","subtype","suburb","subway","subwoofer","subzero","succulent","such","suction","sudden","sudoku","suds","sufferer","suffering","suffice","suffix","suffocate","suffrage","sugar","suggest","suing","suitable","suitably","suitcase","suitor","sulfate","sulfide","sulfite","sulfur","sulk","sullen","sulphate","sulphuric","sultry","superbowl","superglue","superhero","superior","superjet","superman","supermom","supernova","supervise","supper","supplier","supply","support","supremacy","supreme","surcharge","surely","sureness","surface","surfacing","surfboard","surfer","surgery","surgical","surging","surname","surpass","surplus","surprise","surreal","surrender","surrogate","surround","survey","survival","survive","surviving","survivor","sushi","suspect","suspend","suspense","sustained","sustainer","swab","swaddling","swagger","swampland","swan","swapping","swarm","sway","swear","sweat","sweep","swell","swept","swerve","swifter","swiftly","swiftness","swimmable","swimmer","swimming","swimsuit","swimwear","swinger","swinging","swipe","swirl","switch","swivel","swizzle","swooned","swoop","swoosh","swore","sworn","swung","sycamore","sympathy","symphonic","symphony","symptom","synapse","syndrome","synergy","synopses","synopsis","synthesis","synthetic","syrup","system","t-shirt","tabasco","tabby","tableful","tables","tablet","tableware","tabloid","tackiness","tacking","tackle","tackling","tacky","taco","tactful","tactical","tactics","tactile","tactless","tadpole","taekwondo","tag","tainted","take","taking","talcum","talisman","tall","talon","tamale","tameness","tamer","tamper","tank","tanned","tannery","tanning","tantrum","tapeless","tapered","tapering","tapestry","tapioca","tapping","taps","tarantula","target","tarmac","tarnish","tarot","tartar","tartly","tartness","task","tassel","taste","tastiness","tasting","tasty","tattered","tattle","tattling","tattoo","taunt","tavern","thank","that","thaw","theater","theatrics","thee","theft","theme","theology","theorize","thermal","thermos","thesaurus","these","thesis","thespian","thicken","thicket","thickness","thieving","thievish","thigh","thimble","thing","think","thinly","thinner","thinness","thinning","thirstily","thirsting","thirsty","thirteen","thirty","thong","thorn","those","thousand","thrash","thread","threaten","threefold","thrift","thrill","thrive","thriving","throat","throbbing","throng","throttle","throwaway","throwback","thrower","throwing","thud","thumb","thumping","thursday","thus","thwarting","thyself","tiara","tibia","tidal","tidbit","tidiness","tidings","tidy","tiger","tighten","tightly","tightness","tightrope","tightwad","tigress","tile","tiling","till","tilt","timid","timing","timothy","tinderbox","tinfoil","tingle","tingling","tingly","tinker","tinkling","tinsel","tinsmith","tint","tinwork","tiny","tipoff","tipped","tipper","tipping","tiptoeing","tiptop","tiring","tissue","trace","tracing","track","traction","tractor","trade","trading","tradition","traffic","tragedy","trailing","trailside","train","traitor","trance","tranquil","transfer","transform","translate","transpire","transport","transpose","trapdoor","trapeze","trapezoid","trapped","trapper","trapping","traps","trash","travel","traverse","travesty","tray","treachery","treading","treadmill","treason","treat","treble","tree","trekker","tremble","trembling","tremor","trench","trend","trespass","triage","trial","triangle","tribesman","tribunal","tribune","tributary","tribute","triceps","trickery","trickily","tricking","trickle","trickster","tricky","tricolor","tricycle","trident","tried","trifle","trifocals","trillion","trilogy","trimester","trimmer","trimming","trimness","trinity","trio","tripod","tripping","triumph","trivial","trodden","trolling","trombone","trophy","tropical","tropics","trouble","troubling","trough","trousers","trout","trowel","truce","truck","truffle","trump","trunks","trustable","trustee","trustful","trusting","trustless","truth","try","tubby","tubeless","tubular","tucking","tuesday","tug","tuition","tulip","tumble","tumbling","tummy","turban","turbine","turbofan","turbojet","turbulent","turf","turkey","turmoil","turret","turtle","tusk","tutor","tutu","tux","tweak","tweed","tweet","tweezers","twelve","twentieth","twenty","twerp","twice","twiddle","twiddling","twig","twilight","twine","twins","twirl","twistable","twisted","twister","twisting","twisty","twitch","twitter","tycoon","tying","tyke","udder","ultimate","ultimatum","ultra","umbilical","umbrella","umpire","unabashed","unable","unadorned","unadvised","unafraid","unaired","unaligned","unaltered","unarmored","unashamed","unaudited","unawake","unaware","unbaked","unbalance","unbeaten","unbend","unbent","unbiased","unbitten","unblended","unblessed","unblock","unbolted","unbounded","unboxed","unbraided","unbridle","unbroken","unbuckled","unbundle","unburned","unbutton","uncanny","uncapped","uncaring","uncertain","unchain","unchanged","uncharted","uncheck","uncivil","unclad","unclaimed","unclamped","unclasp","uncle","unclip","uncloak","unclog","unclothed","uncoated","uncoiled","uncolored","uncombed","uncommon","uncooked","uncork","uncorrupt","uncounted","uncouple","uncouth","uncover","uncross","uncrown","uncrushed","uncured","uncurious","uncurled","uncut","undamaged","undated","undaunted","undead","undecided","undefined","underage","underarm","undercoat","undercook","undercut","underdog","underdone","underfed","underfeed","underfoot","undergo","undergrad","underhand","underline","underling","undermine","undermost","underpaid","underpass","underpay","underrate","undertake","undertone","undertook","undertow","underuse","underwear","underwent","underwire","undesired","undiluted","undivided","undocked","undoing","undone","undrafted","undress","undrilled","undusted","undying","unearned","unearth","unease","uneasily","uneasy","uneatable","uneaten","unedited","unelected","unending","unengaged","unenvied","unequal","unethical","uneven","unexpired","unexposed","unfailing","unfair","unfasten","unfazed","unfeeling","unfiled","unfilled","unfitted","unfitting","unfixable","unfixed","unflawed","unfocused","unfold","unfounded","unframed","unfreeze","unfrosted","unfrozen","unfunded","unglazed","ungloved","unglue","ungodly","ungraded","ungreased","unguarded","unguided","unhappily","unhappy","unharmed","unhealthy","unheard","unhearing","unheated","unhelpful","unhidden","unhinge","unhitched","unholy","unhook","unicorn","unicycle","unified","unifier","uniformed","uniformly","unify","unimpeded","uninjured","uninstall","uninsured","uninvited","union","uniquely","unisexual","unison","unissued","unit","universal","universe","unjustly","unkempt","unkind","unknotted","unknowing","unknown","unlaced","unlatch","unlawful","unleaded","unlearned","unleash","unless","unleveled","unlighted","unlikable","unlimited","unlined","unlinked","unlisted","unlit","unlivable","unloaded","unloader","unlocked","unlocking","unlovable","unloved","unlovely","unloving","unluckily","unlucky","unmade","unmanaged","unmanned","unmapped","unmarked","unmasked","unmasking","unmatched","unmindful","unmixable","unmixed","unmolded","unmoral","unmovable","unmoved","unmoving","unnamable","unnamed","unnatural","unneeded","unnerve","unnerving","unnoticed","unopened","unopposed","unpack","unpadded","unpaid","unpainted","unpaired","unpaved","unpeeled","unpicked","unpiloted","unpinned","unplanned","unplanted","unpleased","unpledged","unplowed","unplug","unpopular","unproven","unquote","unranked","unrated","unraveled","unreached","unread","unreal","unreeling","unrefined","unrelated","unrented","unrest","unretired","unrevised","unrigged","unripe","unrivaled","unroasted","unrobed","unroll","unruffled","unruly","unrushed","unsaddle","unsafe","unsaid","unsalted","unsaved","unsavory","unscathed","unscented","unscrew","unsealed","unseated","unsecured","unseeing","unseemly","unseen","unselect","unselfish","unsent","unsettled","unshackle","unshaken","unshaved","unshaven","unsheathe","unshipped","unsightly","unsigned","unskilled","unsliced","unsmooth","unsnap","unsocial","unsoiled","unsold","unsolved","unsorted","unspoiled","unspoken","unstable","unstaffed","unstamped","unsteady","unsterile","unstirred","unstitch","unstopped","unstuck","unstuffed","unstylish","unsubtle","unsubtly","unsuited","unsure","unsworn","untagged","untainted","untaken","untamed","untangled","untapped","untaxed","unthawed","unthread","untidy","untie","until","untimed","untimely","untitled","untoasted","untold","untouched","untracked","untrained","untreated","untried","untrimmed","untrue","untruth","unturned","untwist","untying","unusable","unused","unusual","unvalued","unvaried","unvarying","unveiled","unveiling","unvented","unviable","unvisited","unvocal","unwanted","unwarlike","unwary","unwashed","unwatched","unweave","unwed","unwelcome","unwell","unwieldy","unwilling","unwind","unwired","unwitting","unwomanly","unworldly","unworn","unworried","unworthy","unwound","unwoven","unwrapped","unwritten","unzip","upbeat","upchuck","upcoming","upcountry","update","upfront","upgrade","upheaval","upheld","uphill","uphold","uplifted","uplifting","upload","upon","upper","upright","uprising","upriver","uproar","uproot","upscale","upside","upstage","upstairs","upstart","upstate","upstream","upstroke","upswing","uptake","uptight","uptown","upturned","upward","upwind","uranium","urban","urchin","urethane","urgency","urgent","urging","urologist","urology","usable","usage","useable","used","uselessly","user","usher","usual","utensil","utility","utilize","utmost","utopia","utter","vacancy","vacant","vacate","vacation","vagabond","vagrancy","vagrantly","vaguely","vagueness","valiant","valid","valium","valley","valuables","value","vanilla","vanish","vanity","vanquish","vantage","vaporizer","variable","variably","varied","variety","various","varmint","varnish","varsity","varying","vascular","vaseline","vastly","vastness","veal","vegan","veggie","vehicular","velcro","velocity","velvet","vendetta","vending","vendor","veneering","vengeful","venomous","ventricle","venture","venue","venus","verbalize","verbally","verbose","verdict","verify","verse","version","versus","vertebrae","vertical","vertigo","very","vessel","vest","veteran","veto","vexingly","viability","viable","vibes","vice","vicinity","victory","video","viewable","viewer","viewing","viewless","viewpoint","vigorous","village","villain","vindicate","vineyard","vintage","violate","violation","violator","violet","violin","viper","viral","virtual","virtuous","virus","visa","viscosity","viscous","viselike","visible","visibly","vision","visiting","visitor","visor","vista","vitality","vitalize","vitally","vitamins","vivacious","vividly","vividness","vixen","vocalist","vocalize","vocally","vocation","voice","voicing","void","volatile","volley","voltage","volumes","voter","voting","voucher","vowed","vowel","voyage","wackiness","wad","wafer","waffle","waged","wager","wages","waggle","wagon","wake","waking","walk","walmart","walnut","walrus","waltz","wand","wannabe","wanted","wanting","wasabi","washable","washbasin","washboard","washbowl","washcloth","washday","washed","washer","washhouse","washing","washout","washroom","washstand","washtub","wasp","wasting","watch","water","waviness","waving","wavy","whacking","whacky","wham","wharf","wheat","whenever","whiff","whimsical","whinny","whiny","whisking","whoever","whole","whomever","whoopee","whooping","whoops","why","wick","widely","widen","widget","widow","width","wieldable","wielder","wife","wifi","wikipedia","wildcard","wildcat","wilder","wildfire","wildfowl","wildland","wildlife","wildly","wildness","willed","willfully","willing","willow","willpower","wilt","wimp","wince","wincing","wind","wing","winking","winner","winnings","winter","wipe","wired","wireless","wiring","wiry","wisdom","wise","wish","wisplike","wispy","wistful","wizard","wobble","wobbling","wobbly","wok","wolf","wolverine","womanhood","womankind","womanless","womanlike","womanly","womb","woof","wooing","wool","woozy","word","work","worried","worrier","worrisome","worry","worsening","worshiper","worst","wound","woven","wow","wrangle","wrath","wreath","wreckage","wrecker","wrecking","wrench","wriggle","wriggly","wrinkle","wrinkly","wrist","writing","written","wrongdoer","wronged","wrongful","wrongly","wrongness","wrought","xbox","xerox","yahoo","yam","yanking","yapping","yard","yarn","yeah","yearbook","yearling","yearly","yearning","yeast","yelling","yelp","yen","yesterday","yiddish","yield","yin","yippee","yo-yo","yodel","yoga","yogurt","yonder","yoyo","yummy","zap","zealous","zebra","zen","zeppelin","zero","zestfully","zesty","zigzagged","zipfile","zipping","zippy","zips","zit","zodiac","zombie","zone","zoning","zookeeper","zoologist","zoology","zoom"]},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.cipherService.upsert(o)}return[2]}})})},n.prototype.deleteWithServer=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.apiService.deleteFolder(n)];case 1:return l.sent(),[4,this.delete(n)];case 2:return l.sent(),[2]}})})},n}();l.FolderService=f},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.userId=l,this.name=n.name,this.id=n.id,this.revisionDate=n.revisionDate}}();l.FolderData=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=e?[4,this.lock()]:[3,6]);case 5:t.sent(),t.label=6;case 6:return[2]}})})},n.prototype.lock=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,Promise.all([this.cryptoService.clearKey(),this.cryptoService.clearOrgKeys(!0),this.cryptoService.clearKeyPair(!0),this.cryptoService.clearEncKey(!0)])];case 1:return n.sent(),this.folderService.clearCache(),this.cipherService.clearCache(),this.collectionService.clearCache(),this.searchService.clearIndex(),this.messagingService.send("locked"),null==this.lockedCallback?[3,3]:[4,this.lockedCallback()];case 2:n.sent(),n.label=3;case 3:return[2]}})})},n.prototype.setLockOption=function(n){return t(this,void 0,void 0,function(){return u(this,function(l){switch(l.label){case 0:return[4,this.storageService.save(o.ConstantsService.lockOptionKey,n)];case 1:return l.sent(),[4,this.cryptoService.toggleKey()];case 2:return l.sent(),[2]}})})},n}();l.LockService=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0)for(p=0;p0)for(p=0;p0)for(p=0;p0)for(p=0;p1)&&(l.wordSeparator=" "),e=a.EEFLongWordList.length-1,t=new Array(l.numWords),o=0,u.label=1;case 1:return o100&&l.pop(),[4,this.encryptHistory(l)]);case 3:return e=t.sent(),[4,this.storageService.save(c,e)];case 4:return[2,t.sent()]}})})},n.prototype.clear=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return this.history=[],[4,this.storageService.remove(c)];case 1:return[2,n.sent()]}})})},n.prototype.passwordStrength=function(n,l){if(void 0===l&&(l=null),null==n||0===n.length)return null;var e=["bitwarden","bit","warden"];null!=l&&l.length>0&&(e=e.concat(l));var t=Array.from(new Set(e));return o(n,t)},n.prototype.encryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(o){switch(o.label){case 0:return null==n||0===n.length?[2,Promise.resolve([])]:(l=n.map(function(n){return t(e,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.cryptoService.encrypt(n.password)];case 1:return l=e.sent(),[2,new i.GeneratedPasswordHistory(l.encryptedString,n.date)]}})})}),[4,Promise.all(l)]);case 1:return[2,o.sent()]}})})},n.prototype.decryptHistory=function(n){return t(this,void 0,void 0,function(){var l,e=this;return u(this,function(o){switch(o.label){case 0:return null==n||0===n.length?[2,Promise.resolve([])]:(l=n.map(function(n){return t(e,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return[4,this.cryptoService.decryptToUtf8(new r.CipherString(n.password))];case 1:return l=e.sent(),[2,new i.GeneratedPasswordHistory(l,n.date)]}})})}),[4,Promise.all(l)]);case 1:return[2,o.sent()]}})})},n.prototype.matchesPrevious=function(n,l){return null!=l&&0!==l.length&&l[l.length-1].password===n},n.prototype.shuffleArray=function(n){return t(this,void 0,void 0,function(){var l,e,t;return u(this,function(u){switch(u.label){case 0:e=n.length-1,u.label=1;case 1:return e>0?[4,this.cryptoService.randomNumber(0,e)]:[3,4];case 2:t=u.sent(),l=[n[t],n[e]],n[e]=l[0],n[t]=l[1],u.label=3;case 3:return e--,[3,1];case 4:return[2]}})})},n}();l.PasswordGenerationService=p},,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=n.revisionDate&&(e=!1),r=!1,e&&(l?(e=null!=t,r=!0):null==n.collectionIds||null==n.organizationId?e=null==t:(e=!1,r=!0)),!e&&r&&null!=n.organizationId&&null!=n.collectionIds&&n.collectionIds.length>0?[4,this.collectionService.getAll()]:[3,5];case 4:if(null!=(i=u.sent()))for(a=0;a0&&n.push(l.domains)}),[2,this.settingsService.setEquivalentDomains(n)]})})},n}();l.SyncService=d},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]10?t=10:c>0&&(t=c)}catch(n){}if(d.has("period")&&null!=d.get("period"))try{(p=parseInt(d.get("period").trim(),null))>0&&(l=p)}catch(n){}d.has("secret")&&null!=d.get("secret")&&(o=d.get("secret")),d.has("algorithm")&&null!=d.get("algorithm")&&("sha1"!==(f=d.get("algorithm").toLowerCase())&&"sha256"!==f&&"sha512"!==f||(e=f))}else s&&(o=n.substr("steam://".length),t=5);return v=Math.round((new Date).getTime()/1e3),h=this.leftPad(this.decToHex(Math.floor(v/l)),16,"0"),g=r.Utils.fromHexToArray(h),(m=this.b32ToBytes(o)).length&&g.length?[4,this.sign(m,g,e)]:[2,null];case 1:if(0===(y=u.sent()).length)return[2,null];if(C=15&y[y.length-1],b=(127&y[C])<<24|(255&y[C+1])<<16|(255&y[C+2])<<8|255&y[C+3],w="",s)for(S=2147483647&b,_=0;_=n.length&&(n=Array(l+1-n.length).join(e)+n),n},n.prototype.decToHex=function(n){return(n<15.5?"0":"")+Math.round(n).toString(16)},n.prototype.b32ToHex=function(n){n=n.toUpperCase();for(var l="",e=0;e0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.u2f.init({appId:l[0].appId,challenge:l[0].challenge,keys:l.map(function(n){return{version:n.version,keyHandle:n.keyHandle}})}),[3,7]):[3,7];case 2:return this.platformUtilsService.getDevice()===o.DeviceType.SafariExtension?[3,7]:(setTimeout(function(){s.init({iframe:void 0,host:n.Host,sig_request:n.Signature,submit_callback:function(n){return t(e,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return null==(l=n.querySelector('input[name="sig_response"]'))?[3,2]:(this.token=l.value,[4,this.submit()]);case 1:e.sent(),e.label=2;case 2:return[2]}})})}})},0),[3,7]);case 3:return this.twoFactorEmail=n.Email,this.authService.twoFactorProviders.size>1?[4,this.sendEmail(!1)]:[3,5];case 4:i.sent(),i.label=5;case 5:case 6:return[3,7];case 7:return[2]}})})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:if(null==this.token||""===this.token)return this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("verificationCodeRequired")),[2];if(this.selectedProviderType===r.TwoFactorProviderType.U2f){if(null==this.u2f)return[2];this.u2f.stop()}else this.selectedProviderType!==r.TwoFactorProviderType.Email&&this.selectedProviderType!==r.TwoFactorProviderType.Authenticator||(this.token=this.token.replace(" ","").trim());n.label=1;case 1:return n.trys.push([1,3,,4]),this.formPromise=this.authService.logInTwoFactor(this.selectedProviderType,this.token,this.remember),[4,this.formPromise];case 2:return n.sent(),null!=this.onSuccessfulLogin&&this.onSuccessfulLogin(),this.platformUtilsService.eventTrack("Logged In From Two-step"),null!=this.onSuccessfulLoginNavigate?this.onSuccessfulLoginNavigate():this.router.navigate([this.successRoute]),[3,4];case 3:return n.sent(),this.selectedProviderType===r.TwoFactorProviderType.U2f&&null!=this.u2f&&this.u2f.start(),[3,4];case 4:return[2]}})})},n.prototype.sendEmail=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:if(this.selectedProviderType!==r.TwoFactorProviderType.Email)return[2];if(null!=this.emailPromise)return[2];e.label=1;case 1:return e.trys.push([1,3,,4]),l=new i.TwoFactorEmailRequest(this.authService.email,this.authService.masterPasswordHash),this.emailPromise=this.apiService.postTwoFactorEmail(l),[4,this.emailPromise];case 2:return e.sent(),n&&this.platformUtilsService.showToast("success",null,this.i18nService.t("verificationCodeEmailSent",this.twoFactorEmail)),[3,4];case 3:return e.sent(),[3,4];case 4:return this.emailPromise=null,[2]}})})},n.prototype.cleanupU2f=function(){null!=this.u2f&&(this.u2f.stop(),this.u2f.cleanup())},n}();l.TwoFactorComponent=c},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.twoFactor=!1,this.twoFactorProviders=null}}();l.AuthResult=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l){this.type=l.getDevice(),this.name=l.getDeviceString(),this.identifier=n,this.pushToken=null}}();l.DeviceRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){this.email=n}}();l.PreloginRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n,l,e,t,u,o){this.email=n,this.masterPasswordHash=l,this.token=t,this.provider=e,this.remember=u,this.device=null!=o?o:null}return n.prototype.toIdentityToken=function(n){var l={grant_type:"password",username:this.email,password:this.masterPasswordHash,scope:"api offline_access",client_id:n};return this.device&&(l.deviceType=this.device.type,l.deviceIdentifier=this.device.identifier,l.deviceName=this.device.name),this.token&&null!=this.provider&&(l.twoFactorToken=this.token,l.twoFactorProvider=this.provider,l.twoFactorRemember=this.remember?"1":"0"),l},n}();l.TokenRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){function n(n,l,e,t,u){this.win=n,this.webVaultUrl=l,this.successCallback=e,this.errorCallback=t,this.infoCallback=u,this.iframe=null,this.parseFunction=this.parseMessage.bind(this),this.connectorLink=n.document.createElement("a"),this.webVaultUrl=null!=l&&""!==l?l:"https://vault.bitwarden.com"}return n.prototype.init=function(n){this.connectorLink.href=this.webVaultUrl+"/u2f-connector.html?data="+this.base64Encode(JSON.stringify(n))+"&parent="+encodeURIComponent(this.win.document.location.href)+"&v=1",this.iframe=this.win.document.getElementById("u2f_iframe"),this.iframe.src=this.connectorLink.href,this.win.addEventListener("message",this.parseFunction,!1)},n.prototype.stop=function(){this.sendMessage("stop")},n.prototype.start=function(){this.sendMessage("start")},n.prototype.sendMessage=function(n){this.iframe&&this.iframe.src&&this.iframe.contentWindow&&this.iframe.contentWindow.postMessage(n,this.iframe.src)},n.prototype.base64Encode=function(n){return btoa(encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,function(n,l){return String.fromCharCode("0x"+l)}))},n.prototype.cleanup=function(){this.win.removeEventListener("message",this.parseFunction,!1)},n.prototype.parseMessage=function(n){if(this.validMessage(n)){var l=n.data.split("|");"success"===l[0]&&this.successCallback?this.successCallback(l[1]):"error"===l[0]&&this.errorCallback?this.errorCallback(l[1]):"info"===l[0]&&this.infoCallback&&this.infoCallback(l[1])}},n.prototype.validMessage=function(n){return null!=n.origin&&""!==n.origin&&n.origin===this.connectorLink.origin&&null!=n.data&&"string"==typeof n.data&&(0===n.data.indexOf("success|")||0===n.data.indexOf("error|")||0===n.data.indexOf("info|"))},n}();l.U2f=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(7),a=e(12),s=e(19),d=e(18),c=e(4),p=e(96),f=e(49),v=e(532),h=e(439),g=e(10),m=e(440),y=e(90),C=e(21),b=e(5),w=e(30),S=e(9),_=e(61),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-thumb-tack"],["type","info"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"info","fa-thumb-tack",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"createOrganizationStep1")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"createOrganizationCreatePersonalAccount")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1),(n()(),t.ɵeld(3,0,null,null,2,"a",[["href","https://bitwarden.com/terms/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,[",\n "])),(n()(),t.ɵeld(7,0,null,null,2,"a",[["href","https://bitwarden.com/privacy/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"submitAgreePolicies"))),n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"termsOfService"))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"privacyPolicy")))})}function A(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,177,"form",[["class","container"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,a.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,a.ControlContainer,null,[a.NgForm]),t.ɵdid(4,16384,null,0,a.NgControlStatusGroup,[[4,a.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,170,"div",[["class","row justify-content-md-center mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,167,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"p",[["class","lead text-center mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,160,"div",[["class","card d-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,157,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(20,16384,null,0,c.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,20,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,9,"input",[["appInputVerbatim","false"],["class","form-control"],["id","email"],["inputmode","email"],["name","Email"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,29)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,29).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,29)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,29)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.email=e)&&u);return u},null,null)),t.ɵdid(29,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(30,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(33,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(35,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(36,81920,null,0,p.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(37,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(40,null,["",""])),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,17,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,6,"input",[["class","form-control"],["id","name"],["name","Name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,51)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,51)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,51)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(51,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(53,671744,null,0,a.NgModel,[[2,a.ControlContainer],[8,null],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(55,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(56,81920,null,0,p.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(59,null,["",""])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,41,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(66,null,["",""])),t.ɵppd(67,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,30,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,14,"div",[["class","w-100"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,8,"input",[["appInputVerbatim",""],["class","text-monospace form-control mb-1"],["id","masterPassword"],["name","MasterPassword"],["required",""]],[[8,"type",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,74)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,74).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,74)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,74)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);"input"===l&&(u=!1!==o.updatePasswordStrength()&&u);return u},null,null)),t.ɵdid(74,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(75,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(78,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(80,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(81,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(83,0,null,null,1,"app-password-strength",[],null,null,null,v.View_PasswordStrengthComponent_0,v.RenderType_PasswordStrengthComponent)),t.ɵdid(84,573440,null,0,h.PasswordStrengthComponent,[r.I18nService],{score:[0,"score"],showText:[1,"showText"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,11,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(89,0,null,null,6,"button",[["class","ml-1 btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword(!1)&&t);return t},null,null)),t.ɵppd(90,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(93,278528,null,0,c.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(94,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(97,0,null,null,0,"div",[["class","progress-bar invisible"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(102,null,["",""])),t.ɵppd(103,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(106,0,null,null,26,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,2,"label",[["for","masterPasswordRetype"]],null,null,null,null,null)),(n()(),t.ɵted(109,null,["",""])),t.ɵppd(110,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(112,0,null,null,19,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(114,0,null,null,8,"input",[["appInputVerbatim",""],["class","text-monospace form-control"],["id","masterPasswordRetype"],["name","MasterPasswordRetype"],["required",""]],[[8,"type",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,115)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,115).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,115)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,115)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.confirmMasterPassword=e)&&u);return u},null,null)),t.ɵdid(115,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(116,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(119,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(121,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),t.ɵdid(122,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(124,0,null,null,6,"button",[["class","ml-1 btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword(!0)&&t);return t},null,null)),t.ɵppd(125,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(127,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(128,278528,null,0,c.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(129,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(134,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(136,0,null,null,2,"label",[["for","hint"]],null,null,null,null,null)),(n()(),t.ɵted(137,null,["",""])),t.ɵppd(138,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(140,0,null,null,5,"input",[["class","form-control"],["id","hint"],["name","Hint"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,141)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,141).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,141)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,141)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.hint=e)&&u);return u},null,null)),t.ɵdid(141,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(143,671744,null,0,a.NgModel,[[2,a.ControlContainer],[8,null],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(145,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(147,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(148,null,["",""])),t.ɵppd(149,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(152,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(154,0,null,null,16,"div",[["class","d-flex mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(156,0,null,null,8,"button",[["class","btn btn-primary btn-block btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(158,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(159,null,["",""])),t.ɵppd(160,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(162,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(163,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(166,0,null,null,3,"a",[["class","btn btn-outline-secondary btn-block ml-2 mt-0"],["routerLink","/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,167).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(167,671744,null,0,g.RouterLinkWithHref,[g.Router,g.ActivatedRoute,c.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(168,null,["\n ","\n "])),t.ɵppd(169,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(173,16384,null,0,c.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise),n(l,20,0,e.showCreateOrgMessage);n(l,30,0,"");n(l,33,0,"Email",e.email),n(l,36,0,""===e.email);n(l,37,0,"false");n(l,53,0,"Name",e.name),n(l,56,0,""!==e.email);n(l,75,0,"");n(l,78,0,"MasterPassword",e.masterPassword);n(l,81,0,"");n(l,84,0,e.masterPasswordScore,!0);n(l,93,0,"fa fa-lg",n(l,94,0,!e.showPassword,e.showPassword));n(l,116,0,"");n(l,119,0,"MasterPasswordRetype",e.confirmMasterPassword);n(l,122,0,"");n(l,128,0,"fa fa-lg",n(l,129,0,!e.showPassword,e.showPassword));n(l,143,0,"Hint",e.hint);n(l,167,0,"/"),n(l,173,0,e.showTerms)},function(n,l){var e=l.component;n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"createAccount"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"emailAddress"))),n(l,28,0,t.ɵnov(l,30).required?"":null,t.ɵnov(l,35).ngClassUntouched,t.ɵnov(l,35).ngClassTouched,t.ɵnov(l,35).ngClassPristine,t.ɵnov(l,35).ngClassDirty,t.ɵnov(l,35).ngClassValid,t.ɵnov(l,35).ngClassInvalid,t.ɵnov(l,35).ngClassPending),n(l,40,0,t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"emailAddressDesc"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"yourName"))),n(l,50,0,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"yourNameDesc"))),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"masterPass"))),n(l,73,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,75).required?"":null,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending),n(l,89,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l,0),"toggleVisibility")),"")),n(l,102,0,t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l,0),"masterPassDesc"))),n(l,109,0,t.ɵunv(l,109,0,n(l,110,0,t.ɵnov(l,0),"reTypeMasterPass"))),n(l,114,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,116).required?"":null,t.ɵnov(l,121).ngClassUntouched,t.ɵnov(l,121).ngClassTouched,t.ɵnov(l,121).ngClassPristine,t.ɵnov(l,121).ngClassDirty,t.ɵnov(l,121).ngClassValid,t.ɵnov(l,121).ngClassInvalid,t.ɵnov(l,121).ngClassPending),n(l,124,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,124,0,n(l,125,0,t.ɵnov(l,0),"toggleVisibility")),"")),n(l,137,0,t.ɵunv(l,137,0,n(l,138,0,t.ɵnov(l,0),"masterPassHint"))),n(l,140,0,t.ɵnov(l,145).ngClassUntouched,t.ɵnov(l,145).ngClassTouched,t.ɵnov(l,145).ngClassPristine,t.ɵnov(l,145).ngClassDirty,t.ɵnov(l,145).ngClassValid,t.ɵnov(l,145).ngClassInvalid,t.ɵnov(l,145).ngClassPending),n(l,148,0,t.ɵunv(l,148,0,n(l,149,0,t.ɵnov(l,0),"masterPassHintDesc"))),n(l,156,0,t.ɵnov(l,1).loading),n(l,159,0,t.ɵunv(l,159,0,n(l,160,0,t.ɵnov(l,0),"submit"))),n(l,162,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l,0),"loading")),"")),n(l,166,0,t.ɵnov(l,167).target,t.ɵnov(l,167).href),n(l,168,0,t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l,0),"cancel")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-register",[],null,null,null,A,R)),t.ɵdid(1,114688,null,0,m.RegisterComponent,[y.AuthService,g.Router,r.I18nService,C.CryptoService,b.ApiService,g.ActivatedRoute,w.StateService,S.PlatformUtilsService,_.PasswordGenerationService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_RegisterComponent=R,l.View_RegisterComponent_0=A,l.View_RegisterComponent_Host_0=O;var N=t.ɵccf("app-register",m.RegisterComponent,O,{},{},[]);l.RegisterComponentNgFactory=N},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n=n.concat(this.email.substr(0,l).trim().toLowerCase().split(/[^A-Za-z0-9]/))),null!=this.name&&""!==this.name&&(n=n.concat(this.name.trim().toLowerCase().split(" "))),n},n}();l.RegisterComponent=a},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n,l,e,t,u,o,r){this.name=l,this.email=n,this.masterPasswordHash=e,this.masterPasswordHint=t||null,this.key=u,this.kdf=o,this.kdfIterations=r}}();l.RegisterRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(96),d=e(49),c=e(10),p=e(4),f=e(442),v=e(5),h=e(9),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,63,"form",[["class","container"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(4,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,56,"div",[["class","row justify-content-md-center mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,53,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"p",[["class","lead text-center mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,46,"div",[["class","card d-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,43,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,20,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim","false"],["class","form-control"],["id","email"],["inputmode","email"],["name","Email"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,26)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,26).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,26)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,26)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.email=e)&&u);return u},null,null)),t.ɵdid(26,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(27,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(30,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(32,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(33,81920,null,0,s.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(34,81920,null,0,d.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,16,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,8,"button",[["class","btn btn-primary btn-block btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"span",[],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,3,"a",[["class","btn btn-outline-secondary btn-block ml-2 mt-0"],["routerLink","/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,56).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(56,671744,null,0,c.RouterLinkWithHref,[c.Router,c.ActivatedRoute,p.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(57,null,["\n ","\n "])),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,27,0,"");n(l,30,0,"Email",e.email);n(l,33,0,"");n(l,34,0,"false");n(l,56,0,"/")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHint"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l,0),"emailAddress"))),n(l,25,0,t.ɵnov(l,27).required?"":null,t.ɵnov(l,32).ngClassUntouched,t.ɵnov(l,32).ngClassTouched,t.ɵnov(l,32).ngClassPristine,t.ɵnov(l,32).ngClassDirty,t.ɵnov(l,32).ngClassValid,t.ɵnov(l,32).ngClassInvalid,t.ɵnov(l,32).ngClassPending),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"enterEmailToGetHint"))),n(l,45,0,t.ɵnov(l,1).loading),n(l,47,0,t.ɵnov(l,1).loading),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"submit"))),n(l,51,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"loading")),"")),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href),n(l,57,0,t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"cancel")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-hint",[],null,null,null,m,g)),t.ɵdid(1,49152,null,0,f.HintComponent,[c.Router,o.I18nService,v.ApiService,h.PlatformUtilsService],null,null)],null,null)}l.RenderType_HintComponent=g,l.View_HintComponent_0=m,l.View_HintComponent_Host_0=y;var C=t.ɵccf("app-hint",f.HintComponent,y,{},{},[]);l.HintComponentNgFactory=C},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0),n(l,6,0,0===e.ciphers.length)},null)}function D(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(2,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,2,0,l.component.ciphers)},null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-ciphers",[],null,null,null,D,b)),t.ɵdid(1,180224,null,0,v.CiphersComponent,[h.SearchService,g.Angulartics2,m.ToasterService,f.I18nService,y.PlatformUtilsService,C.CipherService],null,null)],null,null)}l.RenderType_CiphersComponent=b,l.View_CiphersComponent_0=D,l.View_CiphersComponent_Host_0=U;var F=t.ɵccf("app-vault-ciphers",v.CiphersComponent,U,{activeCipherId:"activeCipherId",showAddNew:"showAddNew"},{onCipherClicked:"onCipherClicked",onCipherRightClicked:"onCipherRightClicked",onAddCipher:"onAddCipher",onAddCipherOptions:"onAddCipherOptions",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked"},[]);l.CiphersComponentNgFactory=F},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0);var t=function(){function n(n){this.el=n}return n.prototype.onError=function(){this.el.nativeElement.src=this.appFallbackSrc},n}();l.FallbackSrcDirective=t},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&this.collections.length>0&&this.collections.forEach(function(n){o.collectionIds.indexOf(n.id)>-1&&(n.checked=!0)}),u.label=7;case 7:return t=this,[4,this.folderService.getAllDecrypted()];case 8:return t.folders=u.sent(),[2]}})})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return null==this.cipher.name||""===this.cipher.name?(this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("nameRequired")),[2,!1]):(this.editMode||this.cipher.type!==r.CipherType.Login||null==this.cipher.login.uris||1!==this.cipher.login.uris.length||null!=this.cipher.login.uris[0].uri&&""!==this.cipher.login.uris[0].uri||(this.cipher.login.uris=null),this.editMode||null==this.cipher.organizationId||(this.cipher.collectionIds=null==this.collections?[]:this.collections.filter(function(n){return n.checked}).map(function(n){return n.id})),[4,this.encryptCipher()]);case 1:n=l.sent(),l.label=2;case 2:return l.trys.push([2,4,,5]),this.formPromise=this.saveCipher(n),[4,this.formPromise];case 3:return l.sent(),this.cipher.id=n.id,this.platformUtilsService.eventTrack(this.editMode?"Edited Cipher":"Added Cipher"),this.platformUtilsService.showToast("success",null,this.i18nService.t(this.editMode?"editedItem":"addedItem")),this.onSavedCipher.emit(this.cipher),[2,!0];case 4:return l.sent(),[3,5];case 5:return[2,!1]}})})},n.prototype.addUri=function(){this.cipher.type===r.CipherType.Login&&(null==this.cipher.login.uris&&(this.cipher.login.uris=[]),this.cipher.login.uris.push(new h.LoginUriView))},n.prototype.removeUri=function(n){if(this.cipher.type===r.CipherType.Login&&null!=this.cipher.login.uris){var l=this.cipher.login.uris.indexOf(n);l>-1&&this.cipher.login.uris.splice(l,1)}},n.prototype.addField=function(){null==this.cipher.fields&&(this.cipher.fields=[]);var n=new f.FieldView;n.type=this.addFieldType,this.cipher.fields.push(n)},n.prototype.removeField=function(n){var l=this.cipher.fields.indexOf(n);l>-1&&this.cipher.fields.splice(l,1)},n.prototype.cancel=function(){this.onCancelled.emit(this.cipher)},n.prototype.attachments=function(){this.onEditAttachments.emit(this.cipher)},n.prototype.share=function(){this.onShareCipher.emit(this.cipher)},n.prototype.editCollections=function(){this.onEditCollections.emit(this.cipher)},n.prototype.delete=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteItemConfirmation"),this.i18nService.t("deleteItem"),this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return n.trys.push([2,4,,5]),this.deletePromise=this.deleteCipher(),[4,this.deletePromise];case 3:return n.sent(),this.platformUtilsService.eventTrack("Deleted Cipher"),this.platformUtilsService.showToast("success",null,this.i18nService.t("deletedItem")),this.onDeletedCipher.emit(this.cipher),[3,5];case 4:return n.sent(),[3,5];case 5:return[2,!0]}})})},n.prototype.generatePassword=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return null!=this.cipher.login&&null!=this.cipher.login.password&&this.cipher.login.password.length?[4,this.platformUtilsService.showDialog(this.i18nService.t("overwritePasswordConfirmation"),this.i18nService.t("overwritePassword"),this.i18nService.t("yes"),this.i18nService.t("no"))]:[3,2];case 1:if(!n.sent())return[2,!1];n.label=2;case 2:return this.onGeneratePassword.emit(),[2,!0]}})})},n.prototype.togglePassword=function(){this.platformUtilsService.eventTrack("Toggled Password on Edit"),this.showPassword=!this.showPassword,document.getElementById("loginPassword").focus()},n.prototype.toggleCardCode=function(){this.platformUtilsService.eventTrack("Toggled CardCode on Edit"),this.showCardCode=!this.showCardCode,document.getElementById("cardCode").focus()},n.prototype.toggleFieldValue=function(n){var l=n;l.showValue=!l.showValue},n.prototype.toggleUriOptions=function(n){var l=n;l.showOptions=(null!=l.showOptions||null==n.match)&&!l.showOptions},n.prototype.loginUriMatchChanged=function(n){var l=n;l.showOptions=null==l.showOptions||l.showOptions},n.prototype.organizationChanged=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return null!=this.writeableCollections&&this.writeableCollections.forEach(function(n){return n.checked=!1}),null==this.cipher.organizationId?[3,2]:(this.collections=this.writeableCollections.filter(function(n){return n.organizationId===l.cipher.organizationId}),[4,this.userService.getOrganization(this.cipher.organizationId)]);case 1:return null!=(n=e.sent())&&(this.cipher.organizationUseTotp=n.useTotp),[3,3];case 2:this.collections=[],e.label=3;case 3:return[2]}})})},n.prototype.checkPassword=function(){return t(this,void 0,void 0,function(){var n;return u(this,function(l){switch(l.label){case 0:return null!=this.checkPasswordPromise?[2]:null==this.cipher.login||null==this.cipher.login.password||""===this.cipher.login.password?[2]:(this.platformUtilsService.eventTrack("Check Password"),this.checkPasswordPromise=this.auditService.passwordLeaked(this.cipher.login.password),[4,this.checkPasswordPromise]);case 1:return n=l.sent(),this.checkPasswordPromise=null,n>0?this.platformUtilsService.showToast("warning",null,this.i18nService.t("passwordExposed",n.toString())):this.platformUtilsService.showToast("success",null,this.i18nService.t("passwordSafe")),[2]}})})},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:return[4,this.collectionService.getAllDecrypted()];case 1:return[2,n.sent().filter(function(n){return!n.readOnly})]}})})},n.prototype.loadCipher=function(){return this.cipherService.get(this.cipherId)},n.prototype.encryptCipher=function(){return this.cipherService.encrypt(this.cipher)},n.prototype.saveCipher=function(n){return this.cipherService.saveWithServer(n)},n.prototype.deleteCipher=function(){return this.cipherService.deleteWithServer(this.cipher.id)},n}();l.AddEditComponent=C},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]104857600)return this.platformUtilsService.showToast("error",this.i18nService.t("errorOccurred"),this.i18nService.t("maxFileSize")),[2];u.label=1;case 1:return u.trys.push([1,4,,5]),this.formPromise=this.saveCipherAttachment(l[0]),e=this,[4,this.formPromise];case 2:return e.cipherDomain=u.sent(),t=this,[4,this.cipherDomain.decrypt()];case 3:return t.cipher=u.sent(),this.platformUtilsService.eventTrack("Added Attachment"),this.platformUtilsService.showToast("success",null,this.i18nService.t("attachmentSaved")),this.onUploadedAttachment.emit(),[3,5];case 4:return u.sent(),[3,5];case 5:return n.type="",n.type="file",n.value="",[2]}})})},n.prototype.delete=function(n){return t(this,void 0,void 0,function(){var l;return u(this,function(e){switch(e.label){case 0:return null!=this.deletePromises[n.id]?[2]:[4,this.platformUtilsService.showDialog(this.i18nService.t("deleteAttachmentConfirmation"),this.i18nService.t("deleteAttachment"),this.i18nService.t("yes"),this.i18nService.t("no"),"warning")];case 1:if(!e.sent())return[2];e.label=2;case 2:return e.trys.push([2,4,,5]),this.deletePromises[n.id]=this.deleteCipherAttachment(n.id),[4,this.deletePromises[n.id]];case 3:return e.sent(),this.platformUtilsService.eventTrack("Deleted Attachment"),this.platformUtilsService.showToast("success",null,this.i18nService.t("deletedAttachment")),(l=this.cipher.attachments.indexOf(n))>-1&&this.cipher.attachments.splice(l,1),[3,5];case 4:return e.sent(),[3,5];case 5:return this.deletePromises[n.id]=null,this.onDeletedAttachment.emit(),[2]}})})},n.prototype.download=function(n){return t(this,void 0,void 0,function(){var l,e,t,o,r,i;return u(this,function(u){switch(u.label){case 0:return(l=n).downloading?[2]:this.canAccessAttachments?(l.downloading=!0,[4,fetch(new Request(n.url,{cache:"no-cache"}))]):(this.platformUtilsService.showToast("error",this.i18nService.t("premiumRequired"),this.i18nService.t("premiumRequiredDesc")),[2]);case 1:if(200!==(e=u.sent()).status)return this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),l.downloading=!1,[2];u.label=2;case 2:return u.trys.push([2,8,,9]),[4,e.arrayBuffer()];case 3:return t=u.sent(),null==n.key?[3,4]:(r=n.key,[3,6]);case 4:return[4,this.cryptoService.getOrgKey(this.cipher.organizationId)];case 5:r=u.sent(),u.label=6;case 6:return o=r,[4,this.cryptoService.decryptFromBytes(t,o)];case 7:return i=u.sent(),this.platformUtilsService.saveFile(this.win,i,null,n.fileName),[3,9];case 8:return u.sent(),this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),[3,9];case 9:return l.downloading=!1,[2]}})})},n.prototype.reuploadCipherAttachment=function(n,l){return t(this,void 0,void 0,function(){var e,o=this;return u(this,function(r){switch(r.label){case 0:if(e=n,null!=n.key||e.downloading||null!=this.reuploadPromises[n.id])return[2];r.label=1;case 1:return r.trys.push([1,3,,4]),this.reuploadPromises[n.id]=Promise.resolve().then(function(){return t(o,void 0,void 0,function(){var t,o,r,i,a,s,d,c,p;return u(this,function(u){switch(u.label){case 0:return e.downloading=!0,[4,fetch(new Request(n.url,{cache:"no-cache"}))];case 1:if(200!==(t=u.sent()).status)return this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),e.downloading=!1,[2];u.label=2;case 2:return u.trys.push([2,11,,12]),[4,t.arrayBuffer()];case 3:return o=u.sent(),null==n.key?[3,4]:(i=n.key,[3,6]);case 4:return[4,this.cryptoService.getOrgKey(this.cipher.organizationId)];case 5:i=u.sent(),u.label=6;case 6:return r=i,[4,this.cryptoService.decryptFromBytes(o,r)];case 7:return a=u.sent(),s=this,[4,this.cipherService.saveAttachmentRawWithServer(this.cipherDomain,n.fileName,a,l)];case 8:return s.cipherDomain=u.sent(),d=this,[4,this.cipherDomain.decrypt()];case 9:return d.cipher=u.sent(),this.deletePromises[n.id]=this.deleteCipherAttachment(n.id),[4,this.deletePromises[n.id]];case 10:return u.sent(),(c=this.cipher.attachments.filter(function(l){return l.id===n.id})).length>0&&(p=this.cipher.attachments.indexOf(c[0]))>-1&&this.cipher.attachments.splice(p,1),this.platformUtilsService.eventTrack("Reuploaded Attachment"),this.platformUtilsService.showToast("success",null,this.i18nService.t("attachmentSaved")),this.onReuploadedAttachment.emit(),[3,12];case 11:return u.sent(),this.platformUtilsService.showToast("error",null,this.i18nService.t("errorOccurred")),[3,12];case 12:return e.downloading=!1,[2]}})})}),[4,this.reuploadPromises[n.id]];case 2:return r.sent(),[3,4];case 3:return r.sent(),[3,4];case 4:return[2]}})})},n.prototype.loadCipher=function(){return this.cipherService.get(this.cipherId)},n.prototype.saveCipherAttachment=function(n){return this.cipherService.saveAttachmentWithServer(this.cipherDomain,n)},n.prototype.deleteCipherAttachment=function(n){return this.cipherService.deleteAttachmentWithServer(this.cipher.id,n)},n}();l.AttachmentsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1}),[2]}})})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){return u(this,function(n){switch(n.label){case 0:this.cipherDomain.collectionIds=this.collections.filter(function(n){return!!n.checked}).map(function(n){return n.id}),n.label=1;case 1:return n.trys.push([1,3,,4]),this.formPromise=this.saveCollections(),[4,this.formPromise];case 2:return n.sent(),this.onSavedCollections.emit(),this.platformUtilsService.eventTrack("Edited Cipher Collections"),this.platformUtilsService.showToast("success",null,this.i18nService.t("editedItem")),[3,4];case 3:return n.sent(),[3,4];case 4:return[2]}})})},n.prototype.loadCipher=function(){return this.cipherService.get(this.cipherId)},n.prototype.loadCipherCollections=function(){return this.cipherDomain.collectionIds},n.prototype.loadCollections=function(){return t(this,void 0,void 0,function(){var n=this;return u(this,function(l){switch(l.label){case 0:return[4,this.collectionService.getAllDecrypted()];case 1:return[2,l.sent().filter(function(l){return!l.readOnly&&l.organizationId===n.cipher.organizationId})]}})})},n.prototype.saveCollections=function(){return this.cipherService.saveCollectionsWithServer(this.cipherDomain)},n}();l.CollectionsComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(this.organizationId=this.organizations[0].id),this.filterCollections(),[2]}})})},n.prototype.filterCollections=function(){var n=this;this.writeableCollections.forEach(function(n){return n.checked=!1}),null==this.organizationId||0===this.writeableCollections.length?this.collections=[]:this.collections=this.writeableCollections.filter(function(l){return l.organizationId===n.organizationId})},n.prototype.submit=function(){return t(this,void 0,void 0,function(){var n,l,e=this;return u(this,function(o){switch(o.label){case 0:return[4,this.cipherService.get(this.cipherId)];case 1:return[4,o.sent().decrypt()];case 2:n=o.sent(),l=this.collections.filter(function(n){return n.checked}).map(function(n){return n.id}),o.label=3;case 3:return o.trys.push([3,5,,6]),this.formPromise=this.cipherService.shareWithServer(n,this.organizationId,l).then(function(){return t(e,void 0,void 0,function(){return u(this,function(n){return this.onSharedCipher.emit(),this.platformUtilsService.eventTrack("Shared Cipher"),this.platformUtilsService.showToast("success",null,this.i18nService.t("sharedItem")),[2]})})}),[4,this.formPromise];case 4:return o.sent(),[3,6];case 5:return o.sent(),[3,6];case 6:return[2]}})})},Object.defineProperty(n.prototype,"canSave",{get:function(){if(null!=this.collections)for(var n=0;n0)},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"domainRules"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"domainRulesDesc"))),n(l,12,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"customEqDomains"))),n(l,28,0,t.ɵnov(l,12).loading),n(l,30,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"loading")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"save"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"globalEqDomains"))),n(l,48,0,t.ɵnov(l,12).loading),n(l,50,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,50,0,n(l,51,0,t.ɵnov(l,0),"loading")),"")),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"save")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-domain-rules",[],null,null,null,R,h)),t.ɵdid(1,114688,null,0,c.DomainRulesComponent,[p.ApiService,a.I18nService,f.Angulartics2,v.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_DomainRulesComponent=h,l.View_DomainRulesComponent_0=R,l.View_DomainRulesComponent_Host_0=I;var k=t.ɵccf("app-domain-rules",c.DomainRulesComponent,I,{},{},[]);l.DomainRulesComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.UpdateDomainsRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(36),a=e(4),s=e(7),d=e(253),c=e(5),p=e(8),f=e(20),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(3,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(7,0,null,0,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.recoveryCode()&&t);return t},null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,0,["\n"]))],function(n,l){n(l,1,0,"warning")},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-fw text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-check text-success fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[r.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,S)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId),n(l,24,0,n(l,25,0,!e.organizationId)),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-setup",[],null,null,null,O,v)),t.ɵdid(1,114688,null,0,d.TwoFactorSetupComponent,[c.ApiService,p.UserService,t.ComponentFactoryResolver,f.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorSetupComponent=v,l.View_TwoFactorSetupComponent_0=O,l.View_TwoFactorSetupComponent_Host_0=N;var E=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,N,{},{},[]);l.TwoFactorSetupComponentNgFactory=E},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorAuthenticatorRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.TwoFactorProviderRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorDuoRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorEmailRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorU2fDeleteRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorU2fRequest=u},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l}(e(72).PasswordVerificationRequest);l.UpdateTwoFactorYubioOtpRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(12),a=e(19),s=e(18),d=e(464),c=e(159),p=e(9),f=e(7),v=e(4),h=e(465),g=e(5),m=e(6),y=e(13),C=e(70),b=e(10),w=e(20),S=e(62),_=e(8),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-star"],["type","info"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n"])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"info","fa-star",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent,0),"youHavePremiumAccess")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"alreadyPremiumFromOrg")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://vault.bitwarden.com/#/settings/premium"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"purchasePremium")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,35,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,28,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,i.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,i.ControlContainer,null,[i.NgForm]),t.ɵdid(9,16384,null,0,i.NgControlStatusGroup,[[4,i.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,a.ApiActionDirective,[t.ElementRef,s.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,10,0,l.component.formPromise)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFilePremium"))),n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_premium_license.json"))),n(l,25,0,t.ɵnov(l,6).loading),n(l,27,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,77,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,i.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,i.ControlContainer,null,[i.NgForm]),t.ɵdid(3,16384,null,0,i.NgControlStatusGroup,[[4,i.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,a.ApiActionDirective,[t.ElementRef,s.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,23,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,20,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","additionalStorage"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,7,"input",[["class","form-control"],["id","additionalStorage"],["max","99"],["min","0"],["name","AdditionalStorageGb"],["step","1"],["type","number"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,20).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,20).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,20).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalStorage=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(20,16384,null,0,i.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[i.DefaultValueAccessor,i.ɵangular_packages_forms_forms_bd]),t.ɵdid(22,671744,null,0,i.NgModel,[[2,i.ControlContainer],[8,null],[8,null],[6,i.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(24,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,2),t.ɵppd(30,1),t.ɵppd(31,4),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(38,null,["\n ",": ","\n "])),t.ɵppd(39,1),t.ɵppd(40,2),(n()(),t.ɵeld(41,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(42,null,[" ",": "," GB × "," = ","\n "])),t.ɵppd(43,1),t.ɵppd(44,2),t.ɵppd(45,2),(n()(),t.ɵeld(46,0,null,null,0,"hr",[["class","my-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,7,"div",[["class","text-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(51,null,["",":"])),t.ɵppd(52,1),(n()(),t.ɵted(53,null,[" "," /","\n "])),t.ɵppd(54,2),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,2,"small",[["class","text-muted font-italic"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["",""])),t.ɵppd(59,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,2,"h2",[["class","spaced-header mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,1,"app-payment",[],null,null,null,d.View_PaymentComponent_0,d.RenderType_PaymentComponent)),t.ɵdid(66,245760,[[1,4]],0,c.PaymentComponent,[r.I18nService,p.PlatformUtilsService],{hideBank:[0,"hideBank"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(71,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(74,null,["",""])),t.ɵppd(75,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise);n(l,22,0,"AdditionalStorageGb",e.additionalStorage);n(l,66,0,!0)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"addons"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"additionalStorageGb"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,25,0,t.ɵnov(l.parent,0),"additionalStorageGbDesc")),""),t.ɵnov(l,24).ngClassUntouched,t.ɵnov(l,24).ngClassTouched,t.ɵnov(l,24).ngClassPristine,t.ɵnov(l,24).ngClassDirty,t.ɵnov(l,24).ngClassValid,t.ɵnov(l,24).ngClassInvalid,t.ɵnov(l,24).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,31,0,t.ɵnov(l.parent,0),"additionalStorageIntervalDesc","1 GB",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent,1),e.storageGbPrice,"$")),t.ɵunv(l,28,0,n(l,30,0,t.ɵnov(l.parent,0),"year"))))),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent,0),"summary"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent,0),"premiumMembership")),t.ɵunv(l,38,1,n(l,40,0,t.ɵnov(l.parent,1),e.premiumPrice,"$"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"additionalStorageGb")),e.additionalStorage||0,t.ɵunv(l,42,2,n(l,44,0,t.ɵnov(l.parent,1),e.storageGbPrice,"$")),t.ɵunv(l,42,3,n(l,45,0,t.ɵnov(l.parent,1),e.additionalStorageTotal,"$"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"total"))),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l.parent,1),e.total,"USD $")),t.ɵunv(l,53,1,n(l,55,0,t.ɵnov(l.parent,0),"year"))),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"paymentChargedAnnually"))),n(l,62,0,t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"paymentInformation"))),n(l,68,0,t.ɵnov(l,0).loading),n(l,70,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,74,0,t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"submit")))})}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,v.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,55,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(14,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(16,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(20,0,null,0,37,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(25,null,["\n ","\n "])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["\n ","\n "])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["\n ","\n "])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,4,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,0,"i",[["class","fa fa-check text-success fa-li"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["\n ","\n "])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(59,0,null,0,5,"p",[["class","text-lg"]],null,null,null,null,null)),t.ɵdid(60,278528,null,0,v.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(61,{"mb-0":0}),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,2),t.ɵppd(64,2),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(67,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(71,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(74,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.canAccessPremium);n(l,14,0,"success");n(l,60,0,"text-lg",n(l,61,0,!e.selfHosted)),n(l,67,0,e.selfHosted),n(l,71,0,e.selfHosted),n(l,74,0,!e.selfHosted)},function(n,l){var e=l.component;n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"goPremium"))),n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"premiumUpgradeUnlockFeatures"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"premiumSignUpStorage"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"premiumSignUpTwoStep"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"premiumSignUpReports"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"premiumSignUpTotp"))),n(l,49,0,t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"premiumSignUpSupport"))),n(l,55,0,t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"premiumSignUpFuture"))),n(l,62,0,t.ɵunv(l,62,0,n(l,64,0,t.ɵnov(l,0),"premiumPrice",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,1),e.premiumPrice,"$")))))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-premium",[],null,null,null,N,R)),t.ɵdid(1,114688,null,0,h.PremiumComponent,[g.ApiService,r.I18nService,m.Angulartics2,y.ToasterService,p.PlatformUtilsService,C.TokenService,b.Router,w.MessagingService,S.SyncService,_.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PremiumComponent=R,l.View_PremiumComponent_0=N,l.View_PremiumComponent_Host_0=E;var T=t.ɵccf("app-premium",h.PremiumComponent,E,{},{},[]);l.PremiumComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(19),a=e(18),s=e(4),d=e(558),c=e(466),p=e(5),f=e(6),v=e(13),h=e(559),g=e(467),m=e(560),y=e(468),C=e(7),b=e(470),w=e(70),S=e(9),_=e(10),R=t.ɵcrt({encapsulation:2,styles:[],data:{}});function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(4,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(8,0,[["reinstateBtn",1]],0,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reinstate()&&t);return t},null,null)),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"")),n(l,9,0,e.reinstatePromise)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"))),n(l,8,0,t.ɵnov(l,8).loading),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,2)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(7,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(10,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,e.billing.expiration),n(l,10,0,!e.billing.expiration)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"expiration")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"pendingCancellation")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n "," "," @ ","\n "])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,l.context.$implicit.name,l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.quantity*l.context.$implicit.amount,"$")),t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval)))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,"div",[["class","col-8"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[["class","d-block mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"table",[["class","table"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(11,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,11,0,l.component.subscription.items)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,26,"div",[["class","col-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,23,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,7,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,1,"span",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(16,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,3,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["","\n "])),t.ɵppd(25,2),t.ɵppd(26,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(31,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,16,0,e.subscriptionMarkedForCancel),n(l,31,0,e.subscription)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"status"))),n(l,13,0,e.subscription&&e.subscription.status||"-"),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"nextCharge"))),n(l,24,0,e.nextInvoice?t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent,1),e.nextInvoice.date,"mediumDate"))+", "+t.ɵunv(l,24,0,n(l,26,0,t.ɵnov(l.parent.parent,2),e.nextInvoice.amount,"$")):"-")})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","card mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h3",[["class","card-body-header"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"app-update-license",[],null,[[null,"onUpdated"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onUpdated"===l&&(t=!1!==u.closeUpdateLicense(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeUpdateLicense(!1)&&t);return t},d.View_UpdateLicenseComponent_0,d.RenderType_UpdateLicenseComponent)),t.ɵdid(9,49152,null,0,c.UpdateLicenseComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],null,{onUpdated:"onUpdated",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.updateLicense()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://vault.bitwarden.com/#/settings/billing"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,14,0,l.component.showUpdateLicense)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.downloadLicense()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["cancelBtn",1]],null,9,"button",[["class","btn btn-outline-danger btn-submit ml-auto"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.cancel()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.cancelPromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription")))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","ml-1 btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-storage",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeStorage(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeStorage(!1)&&t);return t},h.View_AdjustStorageComponent_0,h.RenderType_AdjustStorageComponent)),t.ɵdid(1,49152,null,0,g.AdjustStorageComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{storageGbPrice:[0,"storageGbPrice"],add:[1,"add"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){n(l,1,0,4,l.component.adjustStorageAdd)},null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustStorage),n(l,8,0,e.showAdjustStorage)},null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod")))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(3,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(4,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2}),(n()(),t.ɵted(5,null,["\n ","\n "]))],function(n,l){var e=l.component;n(l,3,0,"fa fa-fw",n(l,4,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal))},function(n,l){n(l,5,0,l.component.paymentSource.description)})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePayment()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod")))})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-adjust-payment",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closePayment(!0)&&t);"onCanceled"===l&&(t=!1!==u.closePayment(!1)&&t);return t},m.View_AdjustPaymentComponent_0,m.RenderType_AdjustPaymentComponent)),t.ɵdid(1,49152,null,0,y.AdjustPaymentComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{currentType:[0,"currentType"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,null!=e.paymentSource?e.paymentSource.type:null)},null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCharges")))})}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"td",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(13,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(14,{"text-strike":0}),t.ɵppd(15,1),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,13,0,n(l,14,0,l.context.$implicit.refunded))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"))),n(l,7,0,l.context.$implicit.paymentSource?l.context.$implicit.paymentSource.description:"-"),n(l,10,0,l.context.$implicit.status),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,15,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"")),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$")))})}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(5,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.charges)},null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,60,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,7,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,4,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["class","progress-bar bg-success"],["role","progressbar"]],[[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(22,278528,null,0,s.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(23,{width:0}),(n()(),t.ɵted(24,null,["",""])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(29,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(36,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(39,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(42,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(45,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(52,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(55,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["* ",""])),t.ɵppd(59,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.subscription||!e.subscription.cancelled),n(l,8,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel),n(l,22,0,n(l,23,0,e.storageProgressWidth+"%")),n(l,29,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel&&e.paymentSource),n(l,36,0,!e.paymentSource),n(l,39,0,e.paymentSource),n(l,42,0,!e.showAdjustPayment),n(l,45,0,e.showAdjustPayment),n(l,52,0,!e.charges||!e.charges.length),n(l,55,0,e.charges&&e.charges.length)},function(n,l){var e=l.component;n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent,0),"storage"))),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent,0),"subscriptionStorage",e.billing.maxStorageGb||0,e.billing.storageName||"0 MB"))),n(l,21,0,e.storagePercentage),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100))),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent.parent,0),"paymentMethod"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"charges"))),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN")))})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,30,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(3,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(6,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(20,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(23,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(26,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(29,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,e.subscription&&e.subscription.cancelled),n(l,6,0,e.subscriptionMarkedForCancel),n(l,20,0,e.selfHosted),n(l,23,0,!e.selfHosted),n(l,26,0,e.selfHosted),n(l,29,0,!e.selfHosted)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent,0),"subscription"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"premiumMembership")))})}function X(n){return t.ɵvid(0,[t.ɵpid(0,C.I18nPipe,[r.I18nService]),t.ɵpid(0,s.DatePipe,[t.LOCALE_ID]),t.ɵpid(0,s.CurrencyPipe,[t.LOCALE_ID]),t.ɵpid(0,s.PercentPipe,[t.LOCALE_ID]),(n()(),t.ɵeld(4,0,null,null,11,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵeld(9,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(21,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.firstLoaded&&e.loading),n(l,18,0,!e.firstLoaded&&e.loading),n(l,21,0,e.billing)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing")))})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-billing",[],null,null,null,X,R)),t.ɵdid(1,114688,null,0,b.UserBillingComponent,[w.TokenService,p.ApiService,S.PlatformUtilsService,r.I18nService,f.Angulartics2,v.ToasterService,_.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserBillingComponent=R,l.View_UserBillingComponent_0=X,l.View_UserBillingComponent_Host_0=Q;var nn=t.ɵccf("app-user-billing",b.UserBillingComponent,Q,{},{},[]);l.UserBillingComponentNgFactory=nn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.StorageRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.PaymentRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(19),r=e(18),i=e(4),a=e(464),s=e(159),d=e(3),c=e(9),p=e(7),f=e(471),v=e(5),h=e(6),g=e(13),m=e(21),y=e(10),C=e(62),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,35,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,28,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,10,0,l.component.formPromise)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"uploadLicenseFileOrg"))),n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"licenseFile"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"licenseFileDesc","bitwarden_organization_license.json"))),n(l,25,0,t.ɵnov(l,6).loading),n(l,27,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"submit")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,12,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","businessName"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,5,"input",[["class","form-control"],["id","businessName"],["name","BusinessName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.businessName=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(11,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(13,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,11,0,"BusinessName",l.component.businessName)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"businessName"))),n(l,8,0,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,29,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["class","form-check-input"],["id","planFree"],["name","PlanType"],["type","radio"],["value","free"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,4).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,4).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(4,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(6,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(8,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,18,"label",[["class","form-check-label"],["for","planFree"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵeld(13,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["• ",""])),t.ɵppd(19,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(22,null,["• ",""])),t.ɵppd(23,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"PlanType","free");n(l,6,0,"PlanType",e.plan)},function(n,l){n(l,2,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFree"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFree","1"))),n(l,18,0,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"limitedUsers","2"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"limitedCollections","2"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"freeForever")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,47,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["class","form-check-input"],["id","planFamilies"],["name","PlanType"],["type","radio"],["value","families"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,4).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,4).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(4,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(6,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(8,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,36,"label",[["class","form-check-label"],["for","planFamilies"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵeld(13,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["• ",""])),t.ɵppd(19,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(22,null,["• ",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(26,null,["• ",""])),t.ɵppd(27,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(30,null,["• ",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["• ",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["• ",""])),t.ɵppd(39,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(42,null,[""," /",", ",""])),t.ɵppd(43,2),t.ɵppd(44,1),t.ɵppd(45,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"PlanType","families");n(l,6,0,"PlanType",e.plan)},function(n,l){n(l,2,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"planNameFamilies"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"planDescFamilies"))),n(l,18,0,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"addShareLimitedUsers","5"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"createUnlimitedCollections"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"gbEncryptedFileStorage","1 GB"))),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent,0),"onPremHostingOptional"))),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l.parent.parent,0),"priorityCustomerSupport"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l.parent.parent,0),"xDayFreeTrial","7"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,1),1,"$")),t.ɵunv(l,42,1,n(l,44,0,t.ɵnov(l.parent.parent,0),"month")),t.ɵunv(l,42,2,n(l,45,0,t.ɵnov(l.parent.parent,0),"includesXUsers",5)))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,30,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,23,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,20,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","additionalSeats"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,9,"input",[["class","form-control"],["id","additionalSeats"],["max","100000"],["min","1"],["name","AdditionalSeats"],["required",""],["type","number"]],[[8,"placeholder",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,15)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,15)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,15)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,16).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,16).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,16).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalSeats=e)&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(16,16384,null,0,u.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(17,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.ɵangular_packages_forms_forms_bd]),t.ɵdid(20,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(22,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,2,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,17,0,"");n(l,20,0,"AdditionalSeats",e.additionalSeats)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"users"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"userSeats"))),n(l,14,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,23,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),""),t.ɵnov(l,17).required?"":null,t.ɵnov(l,22).ngClassUntouched,t.ɵnov(l,22).ngClassTouched,t.ɵnov(l,22).ngClassPristine,t.ɵnov(l,22).ngClassDirty,t.ɵnov(l,22).ngClassValid,t.ɵnov(l,22).ngClassInvalid,t.ɵnov(l,22).ngClassPending),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsHowManyDesc")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,22,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,19,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","additionalSeats"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,7,"input",[["class","form-control"],["id","additionalSeats"],["max","100000"],["min","0"],["name","AdditionalSeats"],["type","number"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,10).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,10).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,10).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalSeats=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(10,16384,null,0,u.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.ɵangular_packages_forms_forms_bd]),t.ɵdid(12,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(14,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,3,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),t.ɵppd(19,2),t.ɵppd(20,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,"AdditionalSeats",l.component.additionalSeats)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"additionalUserSeats"))),n(l,8,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,8,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsDesc")),""),t.ɵnov(l,14).ngClassUntouched,t.ɵnov(l,14).ngClassTouched,t.ɵnov(l,14).ngClassPristine,t.ɵnov(l,14).ngClassDirty,t.ɵnov(l,14).ngClassValid,t.ɵnov(l,14).ngClassInvalid,t.ɵnov(l,14).ngClassPending),n(l,18,0,t.ɵunv(l,18,0,n(l,20,0,t.ɵnov(l.parent.parent.parent,0),"userSeatsAdditionalDesc",e.plans[e.plan].baseSeats,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].seatPrice,"$")))))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,12,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,5,"input",[["class","form-check-input"],["id","premiumAccess"],["name","PremiumAccessAddon"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.premiumAccessAddon=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"label",[["class","form-check-label bold"],["for","premiumAccess"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,4,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,2),t.ɵppd(19,1),t.ɵppd(20,3),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,"PremiumAccessAddon",l.component.premiumAccessAddon)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess"))),n(l,17,0,t.ɵunv(l,17,0,n(l,20,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccessDesc",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent.parent,1),3.33,"$")),t.ɵunv(l,17,0,n(l,19,0,t.ɵnov(l.parent.parent.parent,0),"month")))))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",": "," ×12 "," = ","\n /","\n "])),t.ɵppd(2,1),t.ɵppd(3,2),t.ɵppd(4,1),t.ɵppd(5,2),t.ɵppd(6,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"basePrice")),t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].basePrice,"$")),t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),e.baseTotal(!0),"$")),t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"additionalUsers")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"users")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(3,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(6,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(7,null,["\n "," × "," ×12 "," = "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,1),t.ɵppd(10,2),t.ɵppd(11,1)],function(n,l){var e=l.component;n(l,3,0,e.plans[e.plan].baseSeats),n(l,6,0,!e.plans[e.plan].baseSeats)},function(n,l){var e=l.component;n(l,7,0,e.additionalSeats||0,t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent,1),e.plans[e.plan].seatPrice,"$")),t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent,1),e.seatTotal(!0),"$")),t.ɵunv(l,7,4,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"year")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",":\n "," ×12 "," = "," /","\n "])),t.ɵppd(2,1),t.ɵppd(3,2),t.ɵppd(4,1),t.ɵppd(5,2),t.ɵppd(6,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"premiumAccess")),t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent,1),3.33,"$")),t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"monthAbbr")),t.ɵunv(l,1,3,n(l,5,0,t.ɵnov(l.parent.parent.parent,1),40,"$")),t.ɵunv(l,1,4,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"year")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",": "," /","\n "])),t.ɵppd(2,1),t.ɵppd(3,2),t.ɵppd(4,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"basePrice")),t.ɵunv(l,1,1,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,1),e.baseTotal(!1),"$")),t.ɵunv(l,1,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"month")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"additionalUsers")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",":"])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"users")))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(3,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(6,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(7,null,["\n "," × "," = "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,2),t.ɵppd(10,1)],function(n,l){var e=l.component;n(l,3,0,e.plans[e.plan].baseSeats),n(l,6,0,!e.plans[e.plan].baseSeats)},function(n,l){var e=l.component;n(l,7,0,e.additionalSeats||0,t.ɵunv(l,7,1,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,1),e.plans[e.plan].monthlySeatPrice,"$")),t.ɵunv(l,7,2,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,1),e.seatTotal(!1),"$")),t.ɵunv(l,7,3,n(l,10,0,t.ɵnov(l.parent.parent.parent.parent,0),"month")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["class","form-check-input"],["id","intervalMonthly"],["name","BillingInterval"],["type","radio"],["value","month"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,4).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,4).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.interval=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(4,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(6,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(8,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,15,"label",[["class","form-check-label"],["for","intervalMonthly"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(14,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(17,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"small",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["\n ",": "," × "," = "," /","\n "])),t.ɵppd(21,1),t.ɵppd(22,2),t.ɵppd(23,2),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"BillingInterval","month");n(l,6,0,"BillingInterval",e.interval),n(l,14,0,e.plans[e.plan].monthlyBasePrice),n(l,17,0,!e.plans[e.plan].noAdditionalSeats)},function(n,l){var e=l.component;n(l,2,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"monthly"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"additionalStorageGb")),e.additionalStorage||0,t.ɵunv(l,20,2,n(l,22,0,t.ɵnov(l.parent.parent.parent,1),e.storageGb.monthlyPrice,"$")),t.ɵunv(l,20,3,n(l,23,0,t.ɵnov(l.parent.parent.parent,1),e.additionalStorageTotal(!1),"$")),t.ɵunv(l,20,4,n(l,24,0,t.ɵnov(l.parent.parent.parent,0),"month")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,104,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(3,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(10,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,23,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,20,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,2,"label",[["for","additionalStorage"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,7,"input",[["class","form-control"],["id","additionalStorage"],["max","99"],["min","0"],["name","AdditionalStorageGb"],["step","1"],["type","number"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,21)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,21).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,21)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,21)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,22).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,22).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,22).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.additionalStorage=e)&&u);return u},null,null)),t.ɵdid(21,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(22,16384,null,0,u.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.ɵangular_packages_forms_forms_bd]),t.ɵdid(24,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(26,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(27,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,4,"small",[["class","text-muted form-text"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,2),t.ɵppd(32,1),t.ɵppd(33,4),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,4,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(40,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,30,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,6,"input",[["class","form-check-input"],["id","intervalAnnually"],["name","BillingInterval"],["type","radio"],["value","year"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,50)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,50).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,50)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,50)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,51).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.interval=e)&&u);return u},null,null)),t.ɵdid(50,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(51,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(53,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(55,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,19,"label",[["class","form-check-label"],["for","intervalAnnually"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["\n ","\n "])),t.ɵppd(59,1),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(61,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(64,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,6,"small",[],null,null,null,null,null)),(n()(),t.ɵted(67,null,["\n ",": "," × "," ×12 "," = "," /","\n "])),t.ɵppd(68,1),t.ɵppd(69,2),t.ɵppd(70,1),t.ɵppd(71,2),t.ɵppd(72,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(75,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(80,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,0,"hr",[["class","my-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,7,"div",[["class","text-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(87,null,["",":"])),t.ɵppd(88,1),(n()(),t.ɵted(89,null,[" "," /","\n "])),t.ɵppd(90,2),t.ɵppd(91,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,3,"small",[["class","text-muted font-italic"]],null,null,null,null,null)),(n()(),t.ɵted(94,null,["",""])),t.ɵppd(95,1),t.ɵppd(96,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(98,0,null,null,2,"h2",[["class","spaced-header mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(99,null,["",""])),t.ɵppd(100,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,1,"app-payment",[],null,null,null,a.View_PaymentComponent_0,a.RenderType_PaymentComponent)),t.ɵdid(103,245760,[[1,4]],0,s.PaymentComponent,[d.I18nService,c.PlatformUtilsService],{hidePaypal:[0,"hidePaypal"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.plans[e.plan].noAdditionalSeats&&!e.plans[e.plan].baseSeats),n(l,10,0,!e.plans[e.plan].noAdditionalSeats&&e.plans[e.plan].baseSeats);n(l,24,0,"AdditionalStorageGb",e.additionalStorage),n(l,40,0,e.plans[e.plan].canBuyPremiumAccessAddon);n(l,51,0,"BillingInterval","year");n(l,53,0,"BillingInterval",e.interval),n(l,61,0,e.plans[e.plan].annualBasePrice),n(l,64,0,!e.plans[e.plan].noAdditionalSeats),n(l,75,0,e.plans[e.plan].canBuyPremiumAccessAddon&&e.premiumAccessAddon),n(l,80,0,e.plans[e.plan].monthlySeatPrice);n(l,103,0,!0)},function(n,l){var e=l.component;n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"addons"))),n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb"))),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,27,0,t.ɵnov(l.parent.parent,0),"additionalStorageGbDesc")),""),t.ɵnov(l,26).ngClassUntouched,t.ɵnov(l,26).ngClassTouched,t.ɵnov(l,26).ngClassPristine,t.ɵnov(l,26).ngClassDirty,t.ɵnov(l,26).ngClassValid,t.ɵnov(l,26).ngClassInvalid,t.ɵnov(l,26).ngClassPending),n(l,30,0,t.ɵunv(l,30,0,n(l,33,0,t.ɵnov(l.parent.parent,0),"additionalStorageIntervalDesc","1 GB",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent,1),e.storageGb.price,"$")),t.ɵunv(l,30,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"month"))))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l.parent.parent,0),"summary"))),n(l,49,0,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent.parent,0),"annually"))),n(l,67,0,t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent,0),"additionalStorageGb")),e.additionalStorage||0,t.ɵunv(l,67,2,n(l,69,0,t.ɵnov(l.parent.parent,1),e.storageGb.price,"$")),t.ɵunv(l,67,3,n(l,70,0,t.ɵnov(l.parent.parent,0),"monthAbbr")),t.ɵunv(l,67,4,n(l,71,0,t.ɵnov(l.parent.parent,1),e.additionalStorageTotal(!0),"$")),t.ɵunv(l,67,5,n(l,72,0,t.ɵnov(l.parent.parent,0),"year"))),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"total"))),n(l,89,0,t.ɵunv(l,89,0,n(l,90,0,t.ɵnov(l.parent.parent,1),e.total,"USD $")),t.ɵunv(l,89,1,n(l,91,0,t.ɵnov(l.parent.parent,0),e.interval))),n(l,94,0,t.ɵunv(l,94,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"paymentChargedWithTrial",t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent.parent,0),e.interval))))),n(l,99,0,t.ɵunv(l,99,0,n(l,100,0,t.ɵnov(l.parent.parent,0),"paymentInformation")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,202,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(3,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,33,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,14,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(20,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(23,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(25,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,14,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"label",[["for","billingEmail"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"input",[["class","form-control"],["id","billingEmail"],["name","BillingEmail"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,35)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,35).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,35)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,35)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.billingEmail=e)&&u);return u},null,null)),t.ɵdid(35,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(36,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(39,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(41,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,12,"div",[["class","form-group form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,5,"input",[["class","form-check-input"],["id","ownedBusiness"],["name","OwnedBusiness"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,48).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.ownedBusiness=e)&&u);"change"===l&&(u=!1!==o.changedOwnedBusiness()&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,2,"label",[["class","form-check-label"],["for","ownedBusiness"]],null,null,null,null,null)),(n()(),t.ɵted(55,null,["",""])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(60,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","mt-5"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(67,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(70,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,46,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(74,0,null,null,6,"input",[["class","form-check-input"],["id","planTeams"],["name","PlanType"],["type","radio"],["value","teams"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,75)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,75).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,75)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,75)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,76).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,76).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(75,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(76,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(78,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(80,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(82,0,null,null,35,"label",[["class","form-check-label"],["for","planTeams"]],null,null,null,null,null)),(n()(),t.ɵted(83,null,["\n ","\n "])),t.ɵppd(84,1),(n()(),t.ɵeld(85,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(86,null,["",""])),t.ɵppd(87,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(89,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(90,null,["• ",""])),t.ɵppd(91,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(94,null,["• ",""])),t.ɵppd(95,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(97,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(98,null,["• ",""])),t.ɵppd(99,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(102,null,["• ",""])),t.ɵppd(103,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(105,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(106,null,["• ",""])),t.ɵppd(107,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(109,0,null,null,7,"span",[],null,null,null,null,null)),(n()(),t.ɵted(110,null,[""," /",", ",", ","\n "," /",""])),t.ɵppd(111,2),t.ɵppd(112,1),t.ɵppd(113,2),t.ɵppd(114,1),t.ɵppd(115,2),t.ɵppd(116,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(120,0,null,null,63,"div",[["class","form-check form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(122,0,null,null,6,"input",[["class","form-check-input"],["id","planEnterprise"],["name","PlanType"],["type","radio"],["value","enterprise"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,123)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,123).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,123)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,123)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,124).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,124).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.plan=e)&&u);"change"===l&&(u=!1!==o.changedPlan()&&u);return u},null,null)),t.ɵdid(123,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(124,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(126,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(128,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(130,0,null,null,52,"label",[["class","form-check-label"],["for","planEnterprise"]],null,null,null,null,null)),(n()(),t.ɵted(131,null,["\n ","\n "])),t.ɵppd(132,1),(n()(),t.ɵeld(133,0,null,null,2,"small",[["class","mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(134,null,["",""])),t.ɵppd(135,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(137,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(138,null,["• ",""])),t.ɵppd(139,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(141,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(142,null,["• ",""])),t.ɵppd(143,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(145,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(146,null,["• ",""])),t.ɵppd(147,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(149,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(150,null,["• ",""])),t.ɵppd(151,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(153,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(154,null,["• ",""])),t.ɵppd(155,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(157,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(158,null,["• ",""])),t.ɵppd(159,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(161,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(162,null,["• ",""])),t.ɵppd(163,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(165,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(166,null,["• ",""])),t.ɵppd(167,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(169,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(170,null,["• ",""])),t.ɵppd(171,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(173,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(174,null,["• ",""])),t.ɵppd(175,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(177,0,null,null,4,"span",[],null,null,null,null,null)),(n()(),t.ɵted(178,null,[""," /",""])),t.ɵppd(179,2),t.ɵppd(180,2),t.ɵppd(181,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(186,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(188,0,null,null,13,"div",[],null,null,null,null,null)),t.ɵdid(189,278528,null,0,i.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(190,{"mt-4":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(192,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(194,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(195,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(197,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(198,null,["",""])),t.ɵppd(199,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise);n(l,20,0,"");n(l,23,0,"Name",e.name);n(l,36,0,"");n(l,39,0,"BillingEmail",e.billingEmail);n(l,50,0,"OwnedBusiness",e.ownedBusiness),n(l,60,0,e.ownedBusiness),n(l,67,0,!e.ownedBusiness),n(l,70,0,!e.ownedBusiness);n(l,76,0,"PlanType","teams");n(l,78,0,"PlanType",e.plan);n(l,124,0,"PlanType","enterprise");n(l,126,0,"PlanType",e.plan),n(l,186,0,!e.plans[e.plan].noPayment),n(l,189,0,n(l,190,0,e.plans[e.plan].noPayment))},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"generalInformation"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"organizationName"))),n(l,18,0,t.ɵnov(l,20).required?"":null,t.ɵnov(l,25).ngClassUntouched,t.ɵnov(l,25).ngClassTouched,t.ɵnov(l,25).ngClassPristine,t.ɵnov(l,25).ngClassDirty,t.ɵnov(l,25).ngClassValid,t.ɵnov(l,25).ngClassInvalid,t.ɵnov(l,25).ngClassPending),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent,0),"billingEmail"))),n(l,34,0,t.ɵnov(l,36).required?"":null,t.ɵnov(l,41).ngClassUntouched,t.ɵnov(l,41).ngClassTouched,t.ɵnov(l,41).ngClassPristine,t.ɵnov(l,41).ngClassDirty,t.ɵnov(l,41).ngClassValid,t.ɵnov(l,41).ngClassInvalid,t.ɵnov(l,41).ngClassPending),n(l,47,0,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,55,0,t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"accountOwnedBusiness"))),n(l,63,0,t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent,0),"chooseYourPlan"))),n(l,74,0,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending),n(l,83,0,t.ɵunv(l,83,0,n(l,84,0,t.ɵnov(l.parent,0),"planNameTeams"))),n(l,86,0,t.ɵunv(l,86,0,n(l,87,0,t.ɵnov(l.parent,0),"planDescTeams"))),n(l,90,0,t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"))),n(l,94,0,t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"))),n(l,98,0,t.ɵunv(l,98,0,n(l,99,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"))),n(l,102,0,t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"))),n(l,106,0,t.ɵunv(l,106,0,n(l,107,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"))),n(l,110,0,t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,1),5,"$")),t.ɵunv(l,110,1,n(l,112,0,t.ɵnov(l.parent,0),"month")),t.ɵunv(l,110,2,n(l,113,0,t.ɵnov(l.parent,0),"includesXUsers",5)),t.ɵunv(l,110,3,n(l,114,0,t.ɵnov(l.parent,0),"additionalUsers")).toLowerCase(),t.ɵunv(l,110,4,n(l,115,0,t.ɵnov(l.parent,1),2,"$")),t.ɵunv(l,110,5,n(l,116,0,t.ɵnov(l.parent,0),"month"))),n(l,122,0,t.ɵnov(l,128).ngClassUntouched,t.ɵnov(l,128).ngClassTouched,t.ɵnov(l,128).ngClassPristine,t.ɵnov(l,128).ngClassDirty,t.ɵnov(l,128).ngClassValid,t.ɵnov(l,128).ngClassInvalid,t.ɵnov(l,128).ngClassPending),n(l,131,0,t.ɵunv(l,131,0,n(l,132,0,t.ɵnov(l.parent,0),"planNameEnterprise"))),n(l,134,0,t.ɵunv(l,134,0,n(l,135,0,t.ɵnov(l.parent,0),"planDescEnterprise"))),n(l,138,0,t.ɵunv(l,138,0,n(l,139,0,t.ɵnov(l.parent,0),"addShareUnlimitedUsers"))),n(l,142,0,t.ɵunv(l,142,0,n(l,143,0,t.ɵnov(l.parent,0),"createUnlimitedCollections"))),n(l,146,0,t.ɵunv(l,146,0,n(l,147,0,t.ɵnov(l.parent,0),"gbEncryptedFileStorage","1 GB"))),n(l,150,0,t.ɵunv(l,150,0,n(l,151,0,t.ɵnov(l.parent,0),"controlAccessWithGroups"))),n(l,154,0,t.ɵunv(l,154,0,n(l,155,0,t.ɵnov(l.parent,0),"trackAuditLogs"))),n(l,158,0,t.ɵunv(l,158,0,n(l,159,0,t.ɵnov(l.parent,0),"syncUsersFromDirectory"))),n(l,162,0,t.ɵunv(l,162,0,n(l,163,0,t.ɵnov(l.parent,0),"onPremHostingOptional"))),n(l,166,0,t.ɵunv(l,166,0,n(l,167,0,t.ɵnov(l.parent,0),"usersGetPremium"))),n(l,170,0,t.ɵunv(l,170,0,n(l,171,0,t.ɵnov(l.parent,0),"priorityCustomerSupport"))),n(l,174,0,t.ɵunv(l,174,0,n(l,175,0,t.ɵnov(l.parent,0),"xDayFreeTrial","7"))),n(l,178,0,t.ɵunv(l,178,0,n(l,180,0,t.ɵnov(l.parent,0),"costPerUser",t.ɵunv(l,178,0,n(l,179,0,t.ɵnov(l.parent,1),3,"$")))),t.ɵunv(l,178,1,n(l,181,0,t.ɵnov(l.parent,0),"month"))),n(l,192,0,t.ɵnov(l,0).loading),n(l,194,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,194,0,n(l,195,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,198,0,t.ɵunv(l,198,0,n(l,199,0,t.ɵnov(l.parent,0),"submit")))})}function z(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[d.I18nService]),t.ɵpid(0,i.CurrencyPipe,[t.LOCALE_ID]),t.ɵqud(671088640,1,{paymentComponent:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(18,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,e.selfHosted),n(l,18,0,!e.selfHosted)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"newOrganization"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"newOrganizationDesc")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-create-organization",[],null,null,null,z,b)),t.ɵdid(1,114688,null,0,f.CreateOrganizationComponent,[v.ApiService,d.I18nService,h.Angulartics2,g.ToasterService,c.PlatformUtilsService,m.CryptoService,y.Router,C.SyncService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CreateOrganizationComponent=b,l.View_CreateOrganizationComponent_0=z,l.View_CreateOrganizationComponent_Host_0=G;var j=t.ɵccf("app-create-organization",f.CreateOrganizationComponent,G,{},{},[]);l.CreateOrganizationComponentNgFactory=j},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationCreateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(7),r=e(3),i=e(4),a=e(10),s=e(472),d=e(8),c=e(20),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"premium")))})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"span",[["class","badge badge-success"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1),t.ɵppd(3,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,3,0,t.ɵnov(l.parent,1),t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"free")))))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),t.ɵpid(0,i.UpperCasePipe,[]),(n()(),t.ɵeld(2,0,null,null,117,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,114,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,105,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,32,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,25,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"a",[["class","list-group-item"],["routerLink","generator"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,17).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(17,671744,[[2,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(18,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(21,null,["\n ","\n "])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,25).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(25,671744,[[4,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(26,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(29,null,["\n ","\n "])),t.ɵppd(30,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,33).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(33,671744,[[6,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(34,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(37,null,["\n ","\n "])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,68,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(45,null,["\n ","\n "])),t.ɵppd(46,1),(n()(),t.ɵeld(47,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(50,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,55,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,57).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(57,671744,[[8,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(58,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,65).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(65,671744,[[10,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(66,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(69,null,["\n ","\n "])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,73).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(73,671744,[[12,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(74,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,81).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(81,671744,[[14,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(82,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(85,null,["\n ","\n "])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,89).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(89,671744,[[16,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(90,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,15,{links:1}),t.ɵqud(603979776,16,{linksWithHrefs:1}),(n()(),t.ɵted(93,null,["\n ","\n "])),t.ɵppd(94,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(96,0,null,null,12,"a",[["class","list-group-item d-flex"],["routerLink","breach-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,97).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(97,671744,[[18,4]],0,a.RouterLinkWithHref,[a.Router,a.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(98,1720320,null,2,a.RouterLinkActive,[a.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,17,{links:1}),t.ɵqud(603979776,18,{linksWithHrefs:1}),(n()(),t.ɵted(101,null,["\n ","\n "])),t.ɵppd(102,1),(n()(),t.ɵeld(103,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(106,16384,null,0,i.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(113,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(115,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(116,212992,null,0,a.RouterOutlet,[a.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,17,0,"generator");n(l,18,0,"active");n(l,25,0,"import");n(l,26,0,"active");n(l,33,0,"export");n(l,34,0,"active"),n(l,50,0,!e.canAccessPremium);n(l,57,0,"exposed-passwords-report");n(l,58,0,"active");n(l,65,0,"reused-passwords-report");n(l,66,0,"active");n(l,73,0,"weak-passwords-report");n(l,74,0,"active");n(l,81,0,"unsecured-websites-report");n(l,82,0,"active");n(l,89,0,"inactive-two-factor-report");n(l,90,0,"active");n(l,97,0,"breach-report");n(l,98,0,"active"),n(l,106,0,!e.canAccessPremium),n(l,116,0)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"tools"))),n(l,16,0,t.ɵnov(l,17).target,t.ɵnov(l,17).href),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"passwordGenerator"))),n(l,24,0,t.ɵnov(l,25).target,t.ɵnov(l,25).href),n(l,29,0,t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"importData"))),n(l,32,0,t.ɵnov(l,33).target,t.ɵnov(l,33).href),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"exportVault"))),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"reports"))),n(l,56,0,t.ɵnov(l,57).target,t.ɵnov(l,57).href),n(l,61,0,t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"exposedPasswordsReport"))),n(l,64,0,t.ɵnov(l,65).target,t.ɵnov(l,65).href),n(l,69,0,t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l,0),"reusedPasswordsReport"))),n(l,72,0,t.ɵnov(l,73).target,t.ɵnov(l,73).href),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"weakPasswordsReport"))),n(l,80,0,t.ɵnov(l,81).target,t.ɵnov(l,81).href),n(l,85,0,t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"unsecuredWebsitesReport"))),n(l,88,0,t.ɵnov(l,89).target,t.ɵnov(l,89).href),n(l,93,0,t.ɵunv(l,93,0,n(l,94,0,t.ɵnov(l,0),"inactive2faReport"))),n(l,96,0,t.ɵnov(l,97).target,t.ɵnov(l,97).href),n(l,101,0,t.ɵunv(l,101,0,n(l,102,0,t.ɵnov(l,0),"dataBreachReport")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-tools",[],null,null,null,h,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=h,l.View_ToolsComponent_Host_0=g;var m=t.ɵccf("app-tools",s.ToolsComponent,g,{},{},[]);l.ToolsComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(31),i=e(28),a=e(3),s=e(7),d=e(19),c=e(18),p=e(254),f=e(6),v=e(13),h=e(225),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"option",[["disabled",""],["value","-"]],null,null,null,null,null)),t.ɵdid(3,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(4,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(7,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaferPass browser extension, click the hamburger icon in the top left corner and navigate to "Settings". Click\n the "Export accounts" button to save the CSV file.\n ']))],null,null)}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Meldium web vault, navigate to "Settings". Locate the "Export data" function and click "Show me my data" to save\n the CSV file.\n ']))],null,null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Keeper web vault (keepersecurity.com/vault). Navigate to "Backup" (top right) and find the "Export to .csv File"\n option. Click "Export Now" to save the CSV file.\n ']))],null,null)}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n The process is exactly the same as importing from Google Chrome.\n "]))],null,null)}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2sMldAI"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,110,"app-callout",[["type","info"]],null,null,null,r.View_CalloutComponent_0,r.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,_)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,R)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,I)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,A)),t.ɵdid(22,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,O)),t.ɵdid(25,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,N)),t.ɵdid(28,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,E)),t.ɵdid(31,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,T)),t.ɵdid(34,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,P)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,x)),t.ɵdid(40,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,M)),t.ɵdid(43,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,D)),t.ɵdid(46,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,U)),t.ɵdid(49,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,F)),t.ɵdid(52,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,L)),t.ɵdid(55,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,z)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,G)),t.ɵdid(61,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,j)),t.ɵdid(64,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,q)),t.ɵdid(67,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,B)),t.ɵdid(70,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,K)),t.ɵdid(73,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,H)),t.ɵdid(76,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,$)),t.ɵdid(79,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,W)),t.ɵdid(82,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Y)),t.ɵdid(85,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,X)),t.ɵdid(94,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Q)),t.ɵdid(97,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,nn)),t.ɵdid(100,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,ln)),t.ɵdid(103,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format)},null)}function on(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(8,0,[["form",1]],null,76,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,9).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,9).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(9,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(11,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(12,540672,null,0,d.ApiActionDirective,[t.ElementRef,c.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,24,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,21,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["1. ",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,14,"select",[["class","form-control"],["id","type"],["name","Format"],["required",""]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(26,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(29,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(31,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(34,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,10,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,7,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(53,null,["2. ",""])),t.ɵppd(54,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"label",[["for","fileContents"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,5,"textarea",[["class","form-control"],["id","fileContents"],["name","FileContents"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.fileContents=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(70,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(72,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(77,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(81,null,["",""])),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.formPromise);n(l,26,0,"");n(l,29,0,"Format",e.format),n(l,34,0,e.featuredImportOptions),n(l,37,0,e.importOptions&&e.importOptions.length),n(l,44,0,e.format);n(l,70,0,"FileContents",e.fileContents)},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"))),n(l,8,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"))),n(l,24,0,t.ɵnov(l,26).required?"":null,t.ɵnov(l,31).ngClassUntouched,t.ɵnov(l,31).ngClassTouched,t.ɵnov(l,31).ngClassPristine,t.ɵnov(l,31).ngClassDirty,t.ɵnov(l,31).ngClassValid,t.ɵnov(l,31).ngClassInvalid,t.ɵnov(l,31).ngClassPending),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"))),n(l,67,0,t.ɵnov(l,72).ngClassUntouched,t.ɵnov(l,72).ngClassTouched,t.ɵnov(l,72).ngClassPristine,t.ɵnov(l,72).ngClassDirty,t.ɵnov(l,72).ngClassValid,t.ɵnov(l,72).ngClassInvalid,t.ɵnov(l,72).ngClassPending),n(l,75,0,t.ɵnov(l,8).loading),n(l,77,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"")),n(l,81,0,t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData")))})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-import",[],null,null,null,on,m)),t.ɵdid(1,114688,null,0,p.ImportComponent,[a.I18nService,f.Angulartics2,v.ToasterService,h.ImportService,g.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ImportComponent=m,l.View_ImportComponent_0=on,l.View_ImportComponent_Host_0=rn;var an=t.ɵccf("app-import",p.ImportComponent,rn,{},{},[]);l.ImportComponentNgFactory=an},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(49),p=e(255),f=e(21),v=e(9),h=e(226),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(4,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(19,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.SelectControlValueAccessor]),t.ɵdid(34,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(36,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(66,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"))),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"")),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-export",[],null,null,null,m,g)),t.ɵdid(1,49152,null,0,p.ExportComponent,[f.CryptoService,o.I18nService,v.PlatformUtilsService,h.ExportService],null,null)],null,null)}l.RenderType_ExportComponent=g,l.View_ExportComponent_0=m,l.View_ExportComponent_Host_0=y;var C=t.ɵccf("app-export",p.ExportComponent,y,{},{onSaved:"onSaved"},[]);l.ExportComponentNgFactory=C},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]128&&(this.options.length=128),this.options.minNumber?this.options.minNumber>this.options.length?this.options.minNumber=this.options.length:this.options.minNumber>9&&(this.options.minNumber=9):this.options.minNumber=0,this.options.minSpecial?this.options.minSpecial>this.options.length?this.options.minSpecial=this.options.length:this.options.minSpecial>9&&(this.options.minSpecial=9):this.options.minSpecial=0,this.options.minSpecial+this.options.minNumber>this.options.length&&(this.options.minSpecial=this.options.length-this.options.minNumber),null==this.options.numWords||this.options.length<3?this.options.numWords=3:this.options.numWords>20&&(this.options.numWords=20),null!=this.options.wordSeparator&&this.options.wordSeparator.length>1&&(this.options.wordSeparator=this.options.wordSeparator[0])},n}();l.PasswordGeneratorComponent=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0),n(l,6,0,0===e.ciphers.length)},null)}function U(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(2,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,2,0,l.component.ciphers)},null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-ciphers",[],null,null,null,U,w)),t.ɵdid(1,180224,null,0,v.CiphersComponent,[h.SearchService,g.Angulartics2,m.ToasterService,f.I18nService,y.PlatformUtilsService,C.CipherService,b.ApiService],null,null)],null,null)}l.RenderType_CiphersComponent=w,l.View_CiphersComponent_0=U,l.View_CiphersComponent_Host_0=F;var L=t.ɵccf("app-org-vault-ciphers",v.CiphersComponent,F,{activeCipherId:"activeCipherId",showAddNew:"showAddNew"},{onCipherClicked:"onCipherClicked",onCipherRightClicked:"onCipherRightClicked",onAddCipher:"onAddCipher",onAddCipherOptions:"onAddCipherOptions",onAttachmentsClicked:"onAttachmentsClicked",onShareClicked:"onShareClicked",onCollectionsClicked:"onCollectionsClicked",onEventsClicked:"onEventsClicked"},[]);l.CiphersComponentNgFactory=L},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.User_LoggedIn=1e3]="User_LoggedIn",n[n.User_ChangedPassword=1001]="User_ChangedPassword",n[n.User_Updated2fa=1002]="User_Updated2fa",n[n.User_Disabled2fa=1003]="User_Disabled2fa",n[n.User_Recovered2fa=1004]="User_Recovered2fa",n[n.User_FailedLogIn=1005]="User_FailedLogIn",n[n.User_FailedLogIn2fa=1006]="User_FailedLogIn2fa",n[n.Cipher_Created=1100]="Cipher_Created",n[n.Cipher_Updated=1101]="Cipher_Updated",n[n.Cipher_Deleted=1102]="Cipher_Deleted",n[n.Cipher_AttachmentCreated=1103]="Cipher_AttachmentCreated",n[n.Cipher_AttachmentDeleted=1104]="Cipher_AttachmentDeleted",n[n.Cipher_Shared=1105]="Cipher_Shared",n[n.Cipher_UpdatedCollections=1106]="Cipher_UpdatedCollections",n[n.Collection_Created=1300]="Collection_Created",n[n.Collection_Updated=1301]="Collection_Updated",n[n.Collection_Deleted=1302]="Collection_Deleted",n[n.Group_Created=1400]="Group_Created",n[n.Group_Updated=1401]="Group_Updated",n[n.Group_Deleted=1402]="Group_Deleted",n[n.OrganizationUser_Invited=1500]="OrganizationUser_Invited",n[n.OrganizationUser_Confirmed=1501]="OrganizationUser_Confirmed",n[n.OrganizationUser_Updated=1502]="OrganizationUser_Updated",n[n.OrganizationUser_Removed=1503]="OrganizationUser_Removed",n[n.OrganizationUser_UpdatedGroups=1504]="OrganizationUser_UpdatedGroups",n[n.Organization_Updated=1600]="Organization_Updated",n[n.Organization_PurgedVault=1601]="Organization_PurgedVault"}(l.EventType||(l.EventType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(7),r=e(3),i=e(10),a=e(4),s=e(482),d=e(8),c=e(20),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"upgrade")))})}function v(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,95,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,92,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,83,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,24,"div",[["class","card mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,17,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,6,"a",[["class","list-group-item"],["routerLink","import"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,6,"a",[["class","list-group-item"],["routerLink","export"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(28,null,["\n ","\n "])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,54,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","card-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["\n ","\n "])),t.ɵppd(37,1),(n()(),t.ɵeld(38,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(41,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,41,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"a",[["class","list-group-item"],["routerLink","exposed-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,48).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(48,671744,[[6,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(49,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(52,null,["\n ","\n "])),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,6,"a",[["class","list-group-item"],["routerLink","reused-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,56).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(56,671744,[[8,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(57,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(60,null,["\n ","\n "])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"a",[["class","list-group-item"],["routerLink","weak-passwords-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,64).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(64,671744,[[10,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(65,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,9,{links:1}),t.ɵqud(603979776,10,{linksWithHrefs:1}),(n()(),t.ɵted(68,null,["\n ","\n "])),t.ɵppd(69,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,6,"a",[["class","list-group-item"],["routerLink","unsecured-websites-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,72).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(72,671744,[[12,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(73,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,11,{links:1}),t.ɵqud(603979776,12,{linksWithHrefs:1}),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(79,0,null,null,6,"a",[["class","list-group-item"],["routerLink","inactive-two-factor-report"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,80).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(80,671744,[[14,4]],0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,a.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(81,1720320,null,2,i.RouterLinkActive,[i.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,13,{links:1}),t.ɵqud(603979776,14,{linksWithHrefs:1}),(n()(),t.ɵted(84,null,["\n ","\n "])),t.ɵppd(85,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(92,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(93,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,16,0,"import");n(l,17,0,"active");n(l,24,0,"export");n(l,25,0,"active"),n(l,41,0,!e.accessReports);n(l,48,0,"exposed-passwords-report");n(l,49,0,"active");n(l,56,0,"reused-passwords-report");n(l,57,0,"active");n(l,64,0,"weak-passwords-report");n(l,65,0,"active");n(l,72,0,"unsecured-websites-report");n(l,73,0,"active");n(l,80,0,"inactive-two-factor-report");n(l,81,0,"active"),n(l,93,0)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"tools"))),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"importData"))),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"exportVault"))),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"reports"))),n(l,47,0,t.ɵnov(l,48).target,t.ɵnov(l,48).href),n(l,52,0,t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"exposedPasswordsReport"))),n(l,55,0,t.ɵnov(l,56).target,t.ɵnov(l,56).href),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"reusedPasswordsReport"))),n(l,63,0,t.ɵnov(l,64).target,t.ɵnov(l,64).href),n(l,68,0,t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,0),"weakPasswordsReport"))),n(l,71,0,t.ɵnov(l,72).target,t.ɵnov(l,72).href),n(l,76,0,t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l,0),"unsecuredWebsitesReport"))),n(l,79,0,t.ɵnov(l,80).target,t.ɵnov(l,80).href),n(l,84,0,t.ɵunv(l,84,0,n(l,85,0,t.ɵnov(l,0),"inactive2faReport")))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-tools",[],null,null,null,v,p)),t.ɵdid(1,114688,null,0,s.ToolsComponent,[i.ActivatedRoute,d.UserService,c.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ToolsComponent=p,l.View_ToolsComponent_0=v,l.View_ToolsComponent_Host_0=h;var g=t.ɵccf("app-org-tools",s.ToolsComponent,h,{},{},[]);l.ToolsComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(31),i=e(28),a=e(3),s=e(7),d=e(19),c=e(18),p=e(483),f=e(6),v=e(13),h=e(225),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"option",[["disabled",""],["value","-"]],null,null,null,null,null)),t.ɵdid(3,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(4,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(7,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"-");n(l,4,0,"-"),n(l,7,0,e.importOptions)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/export-your-data/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/export-your-data/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-lastpass/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-lastpass/"])),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePassX desktop application, navigate to "Database" → "Export to CSV file" and save the CSV file.\n ']))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Avira web vault, go to "Settings" → "My Data" → "Export data" and save the CSV file.\n ']))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n In the Blur web vault, click your username at the top and go to "Settings" → "Export Data", then click "Export CSV"\n for your "Accounts".\n ']))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaveInCloud desktop application, navigate to "File" → "Export" → "As XML" and save the XML file.\n ']))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to "Settings" →\n "Export" button and save the file "As CSV".\n ']))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the KeePass 2 desktop application, navigate to "File" → "Export" and select the "KeePass XML (2.x)" option.\n ']))],null,null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Universal Password Manager desktop application, navigate to "Database" → "Export" and save the CSV file.\n ']))],null,null)}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SaferPass browser extension, click the hamburger icon in the top left corner and navigate to "Settings". Click\n the "Export accounts" button to save the CSV file.\n ']))],null,null)}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Meldium web vault, navigate to "Settings". Locate the "Export data" function and click "Show me my data" to save\n the CSV file.\n ']))],null,null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Keeper web vault (keepersecurity.com/vault). Navigate to "Backup" (top right) and find the "Export to .csv File"\n option. Click "Export Now" to save the CSV file.\n ']))],null,null)}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n The process is exactly the same as importing from Google Chrome.\n "]))],null,null)}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(5,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-chrome/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-chrome/"])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"chromecsv"!==l.component.format)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Use the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://github.com/kspearrin/ff-password-exporter/blob/master/README.md#ff-password-exporter"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FF Password Exporter"])),(n()(),t.ɵted(-1,null,[" application to export your passwords to a CSV file.\n "]))],null,null)}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n See detailed instructions on our help site at\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://help.bitwarden.com/article/import-from-1password/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["https://help.bitwarden.com/article/import-from-1password/"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Dragon desktop application, navigate to "File" → "Export" → "To XML". In the dialog that pops\n up select "All Rows" and check all fields. Click the "Export" button and save the XML file.\n ']))],null,null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass desktop application, navigate to "File" → "Export" → "As CSV". Select "OK" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n ']))],null,null)}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Enpass 6 desktop application, click the menu button and navigate to "File" → "Export".\n Select the ".json" file format option and save the JSON file.\n ']))],null,null)}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n file.\n ']))],null,null)}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in JSON format"\n and save the JSON file.\n ']))],null,null)}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV file.\n ']))],null,null)}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Sticky Password desktop application, navigate to "Menu" (top right) → "Export" → "Export all". Select\n the unencrypted format XML option and save the XML file.\n ']))],null,null)}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the True Key desktop application, click the gear icon (top right) and then navigate to "App Settings". Click the "Export"\n button, enter your password and save the CSV file.\n ']))],null,null)}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to "Data" → "Export". Click the "download HTML+JSON" button to save the HTML file.\n ']))],null,null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the RoboForm Editor desktop application, navigate to "RoboForm" (top left) → "Options" → "Account & Data"\n and click the "Export" button. Select all of your data, change the "Format" to "CSV file" and then click the\n "Export" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n ']))],null,null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passbolt web vault and navigate to the "Passwords" listing. Select all of the passwords you would like to export\n and click the "Export" button at the top of the listing. Choose the "csv (lastpass)" export format and click\n the "Export" button.\n ']))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Ascendo DataVault desktop application, navigate to "Tools" → "Export". In the dialog that pops up, select\n the "All Items (DVX, CSV)" option. Click the "Ok" button to save the CSV file.\n ']))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Zoho web vault (vault.zoho.com). Navigate to "Tools" → "Export Secrets". Select "All Secrets" and click\n the "Zoho Vault Format CSV" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n '])),(n()(),t.ɵeld(2,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["zoho_export.csv"])),(n()(),t.ɵted(-1,null,[".\n "]))],null,null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to "Export"\n → "Export as CSV" and save the CSV file.\n ']))],null,null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the PassKeep mobile app, navigate to "Backup/Restore". Locate the "CSV Backup/Restore" section and click "Backup to\n CSV" to save the CSV file.\n ']))],null,null)}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n "])),(n()(),t.ɵeld(2,0,null,null,1,"a",[["href","https://bit.ly/2sMldAI"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["GNOME Keyring Import/Export"])),(n()(),t.ɵted(-1,null,[" python script to your desktop as\n "])),(n()(),t.ɵeld(5,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["pw_helper.py"])),(n()(),t.ɵted(-1,null,[". Open terminal and run\n "])),(n()(),t.ɵeld(8,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["chmod +rx Desktop/pw_helper.py"])),(n()(),t.ɵted(-1,null,[" and then\n "])),(n()(),t.ɵeld(11,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["python Desktop/pw_helper.py export Desktop/my_passwords.json"])),(n()(),t.ɵted(-1,null,[". Then upload the resulting\n "])),(n()(),t.ɵeld(14,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["my_passwords.json"])),(n()(),t.ɵted(-1,null,[" file here to Bitwarden.\n "]))],null,null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Using the Password Agent desktop application navigate to "File" → "Export", select the "Fields to export" button and\n check all of the fields, change the "Output format" to "CSV", and then click the "Start" button to save the CSV\n file.\n ']))],null,null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Log into the Passpack website vault and navigate to "Settings" → "Export", then click the "Download" button to save\n the CSV file.\n ']))],null,null)}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open your Passman vault and click on "Settings" in the bottom left corner. In the "Settings" window switch to the\n "Export credentials" tab and choose "JSON" as the export type. Enter your vault\'s passphrase and click the "Export"\n button to save the JSON file.\n ']))],null,null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,['\n Open the Avast Passwords desktop application and navigate to "Settings" → "Import/export data". Select the\n "Export" button for the "Export to CSV file" option to save the CSV file.\n ']))],null,null)}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,110,"app-callout",[["type","info"]],null,null,null,r.View_CalloutComponent_0,r.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,i.CalloutComponent,[a.I18nService],{type:[0,"type"],title:[1,"title"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,w)),t.ɵdid(4,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,S)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,_)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,R)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,I)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,A)),t.ɵdid(22,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,O)),t.ɵdid(25,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,N)),t.ɵdid(28,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,E)),t.ɵdid(31,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,T)),t.ɵdid(34,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,P)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,x)),t.ɵdid(40,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,M)),t.ɵdid(43,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,D)),t.ɵdid(46,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,U)),t.ɵdid(49,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,F)),t.ɵdid(52,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,L)),t.ɵdid(55,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,z)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,G)),t.ɵdid(61,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,j)),t.ɵdid(64,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,q)),t.ɵdid(67,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,B)),t.ɵdid(70,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,K)),t.ɵdid(73,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,H)),t.ɵdid(76,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,$)),t.ɵdid(79,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,W)),t.ɵdid(82,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Y)),t.ɵdid(85,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,J)),t.ɵdid(88,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Z)),t.ɵdid(91,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,X)),t.ɵdid(94,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,Q)),t.ɵdid(97,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,nn)),t.ɵdid(100,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,ln)),t.ɵdid(103,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,en)),t.ɵdid(106,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,tn)),t.ɵdid(109,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===e.format||"bitwardenjson"===e.format),n(l,7,0,"lastpasscsv"===e.format),n(l,10,0,"keepassxcsv"===e.format),n(l,13,0,"aviracsv"===e.format),n(l,16,0,"blurcsv"===e.format),n(l,19,0,"safeincloudxml"===e.format),n(l,22,0,"padlockcsv"===e.format),n(l,25,0,"keepass2xml"===e.format),n(l,28,0,"upmcsv"===e.format),n(l,31,0,"saferpasscsv"===e.format),n(l,34,0,"meldiumcsv"===e.format),n(l,37,0,"keepercsv"===e.format),n(l,40,0,"chromecsv"===e.format||"operacsv"===e.format||"vivaldicsv"===e.format),n(l,43,0,"firefoxcsv"===e.format),n(l,46,0,"1password1pif"===e.format||"1passwordwincsv"===e.format),n(l,49,0,"passworddragonxml"===e.format),n(l,52,0,"enpasscsv"===e.format),n(l,55,0,"enpassjson"===e.format),n(l,58,0,"pwsafexml"===e.format),n(l,61,0,"dashlanejson"===e.format),n(l,64,0,"msecurecsv"===e.format),n(l,67,0,"stickypasswordxml"===e.format),n(l,70,0,"truekeycsv"===e.format),n(l,73,0,"clipperzhtml"===e.format),n(l,76,0,"roboformcsv"===e.format),n(l,79,0,"passboltcsv"===e.format),n(l,82,0,"ascendocsv"===e.format),n(l,85,0,"passwordbossjson"===e.format),n(l,88,0,"zohovaultcsv"===e.format),n(l,91,0,"splashidcsv"===e.format),n(l,94,0,"passkeepcsv"===e.format),n(l,97,0,"gnomejson"===e.format),n(l,100,0,"passwordagentcsv"===e.format),n(l,103,0,"passpackcsv"===e.format),n(l,106,0,"passmanjson"===e.format),n(l,109,0,"avastcsv"===e.format)},null)}function on(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(8,0,[["form",1]],null,76,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,9).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,9).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(9,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(11,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(12,540672,null,0,d.ApiActionDirective,[t.ElementRef,c.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,24,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,21,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["1. ",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,14,"select",[["class","form-control"],["id","type"],["name","Format"],["required",""]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(26,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(29,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(31,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(34,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,10,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,7,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,2,"label",[["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(53,null,["2. ",""])),t.ɵppd(54,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"label",[["for","fileContents"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,5,"textarea",[["class","form-control"],["id","fileContents"],["name","FileContents"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.fileContents=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(70,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(72,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(77,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(81,null,["",""])),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.formPromise);n(l,26,0,"");n(l,29,0,"Format",e.format),n(l,34,0,e.featuredImportOptions),n(l,37,0,e.importOptions&&e.importOptions.length),n(l,44,0,e.format);n(l,70,0,"FileContents",e.fileContents)},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l,0),"importData"))),n(l,8,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"selectFormat"))),n(l,24,0,t.ɵnov(l,26).required?"":null,t.ɵnov(l,31).ngClassUntouched,t.ɵnov(l,31).ngClassTouched,t.ɵnov(l,31).ngClassPristine,t.ɵnov(l,31).ngClassDirty,t.ɵnov(l,31).ngClassValid,t.ɵnov(l,31).ngClassInvalid,t.ɵnov(l,31).ngClassPending),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"selectImportFile"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"orCopyPasteFileContents"))),n(l,67,0,t.ɵnov(l,72).ngClassUntouched,t.ɵnov(l,72).ngClassTouched,t.ɵnov(l,72).ngClassPristine,t.ɵnov(l,72).ngClassDirty,t.ɵnov(l,72).ngClassValid,t.ɵnov(l,72).ngClassInvalid,t.ɵnov(l,72).ngClassPending),n(l,75,0,t.ɵnov(l,8).loading),n(l,77,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"")),n(l,81,0,t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"importData")))})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-import",[],null,null,null,on,m)),t.ɵdid(1,114688,null,0,p.ImportComponent,[a.I18nService,f.Angulartics2,v.ToasterService,h.ImportService,g.Router,g.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ImportComponent=m,l.View_ImportComponent_0=on,l.View_ImportComponent_Host_0=rn;var an=t.ɵccf("app-org-import",p.ImportComponent,rn,{},{},[]);l.ImportComponentNgFactory=an},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(49),p=e(484),f=e(21),v=e(9),h=e(226),g=e(10),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,79,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,2).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,2).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(2,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(4,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(5,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(19,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(20,0,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,26,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,23,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","format"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,16,"select",[["class","form-control"],["id","format"],["name","Format"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,32).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.format=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.SelectControlValueAccessor]),t.ɵdid(34,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(36,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,3,"option",[["value","json"]],null,null,null,null,null)),t.ɵdid(39,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(40,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".json"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"option",[["value","csv"]],null,null,null,null,null)),t.ɵdid(44,147456,null,0,r.NgSelectOption,[t.ElementRef,t.Renderer2,[2,r.SelectControlValueAccessor]],{value:[0,"value"]},null),t.ɵdid(45,147456,null,0,r.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(n()(),t.ɵted(-1,null,[".csv"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPassword"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(61,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(64,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(66,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(67,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,34,0,"Format",e.format);n(l,39,0,"json");n(l,40,0,"json");n(l,44,0,"csv");n(l,45,0,"csv");n(l,61,0,"");n(l,64,0,"MasterPassword",e.masterPassword);n(l,67,0,"")},function(n,l){n(l,1,0,t.ɵnov(l,4).ngClassUntouched,t.ɵnov(l,4).ngClassTouched,t.ɵnov(l,4).ngClassPristine,t.ɵnov(l,4).ngClassDirty,t.ɵnov(l,4).ngClassValid,t.ɵnov(l,4).ngClassInvalid,t.ɵnov(l,4).ngClassPending),n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"exportVault"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"exportMasterPassword"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"exportWarningDesc"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"fileFormat"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"masterPass"))),n(l,59,0,t.ɵnov(l,61).required?"":null,t.ɵnov(l,66).ngClassUntouched,t.ɵnov(l,66).ngClassTouched,t.ɵnov(l,66).ngClassPristine,t.ɵnov(l,66).ngClassDirty,t.ɵnov(l,66).ngClassValid,t.ɵnov(l,66).ngClassInvalid,t.ɵnov(l,66).ngClassPending),n(l,71,0,t.ɵnov(l,1).loading),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l,0),"loading")),"")),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"exportVault")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-export",[],null,null,null,y,m)),t.ɵdid(1,114688,null,0,p.ExportComponent,[f.CryptoService,o.I18nService,v.PlatformUtilsService,h.ExportService,g.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ExportComponent=m,l.View_ExportComponent_0=y,l.View_ExportComponent_Host_0=C;var b=t.ɵccf("app-org-export",p.ExportComponent,C,{},{onSaved:"onSaved"},[]);l.ExportComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(485),h=e(23),g=e(104),m=e(20),y=e(8),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noExposedPasswords")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,34,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,6,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,3,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),t.ɵppd(32,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component;n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,30,0,t.ɵunv(l,30,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"exposedXTimes",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,1),e.exposedPasswordMap.get(l.context.$implicit.id))))))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"exposedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(10,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(14,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.load()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,25,0,l.component.hasLoaded)},function(n,l){var e=l.component;n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"exposedPasswordsReport"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"exposedPasswordsReportDesc"))),n(l,14,0,e.loading),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"loading")),"")),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"checkExposedPasswords")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-exposed-passwords-report",[],null,null,null,O,b)),t.ɵdid(1,114688,null,0,v.ExposedPasswordsReportComponent,[h.CipherService,g.AuditService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ExposedPasswordsReportComponent=b,l.View_ExposedPasswordsReportComponent_0=O,l.View_ExposedPasswordsReportComponent_Host_0=N;var E=t.ɵccf("app-exposed-passwords-report",v.ExposedPasswordsReportComponent,N,{},{},[]);l.ExposedPasswordsReportComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(486),h=e(23),g=e(20),m=e(8),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noInactive2fa")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"a",[["class","badge badge-primary"],["rel","noopener"],["target","_blank"]],[[8,"href",4]],null,null,null,null)),(n()(),t.ɵted(1,null,["\n ",""])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",e.cipherDocs.get(l.parent.context.$implicit.id),"")),n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"instructions")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(30,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments),n(l,30,0,e.cipherDocs.has(l.context.$implicit.id))},function(n,l){n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"inactive2faFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"inactive2faFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function E(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"inactive2faReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"inactive2faReportDesc")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-inactive-two-factor-report",[],null,null,null,E,C)),t.ɵdid(1,114688,null,0,v.InactiveTwoFactorReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_InactiveTwoFactorReportComponent=C,l.View_InactiveTwoFactorReportComponent_0=E,l.View_InactiveTwoFactorReportComponent_Host_0=T;var P=t.ɵccf("app-inactive-two-factor-report",v.InactiveTwoFactorReportComponent,T,{},{},[]);l.InactiveTwoFactorReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(487),h=e(23),g=e(20),m=e(8),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noReusedPasswords")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component;n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"reusedXTimes",e.passwordUseMap.get(l.context.$implicit.login.password))))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"reusedPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"reusedPasswordsReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"reusedPasswordsReportDesc")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-reused-passwords-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.ReusedPasswordsReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ReusedPasswordsReportComponent=C,l.View_ReusedPasswordsReportComponent_0=N,l.View_ReusedPasswordsReportComponent_Host_0=E;var T=t.ɵccf("app-reused-passwords-report",v.ReusedPasswordsReportComponent,E,{},{},[]);l.ReusedPasswordsReportComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(488),h=e(23),g=e(20),m=e(8),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUnsecuredWebsites")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"unsecuredWebsitesFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"unsecuredWebsitesReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"unsecuredWebsitesReportDesc")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-unsecured-websites-report",[],null,null,null,N,C)),t.ɵdid(1,114688,null,0,v.UnsecuredWebsitesReportComponent,[h.CipherService,t.ComponentFactoryResolver,g.MessagingService,m.UserService,y.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UnsecuredWebsitesReportComponent=C,l.View_UnsecuredWebsitesReportComponent_0=N,l.View_UnsecuredWebsitesReportComponent_Host_0=E;var T=t.ɵccf("app-unsecured-websites-report",v.UnsecuredWebsitesReportComponent,E,{},{},[]);l.UnsecuredWebsitesReportComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(100),a=e(92),s=e(71),d=e(30),c=e(36),p=e(4),f=e(7),v=e(489),h=e(23),g=e(61),m=e(20),y=e(8),C=e(10),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","success"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"goodNews")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noWeakPasswords")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-share-alt"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"shared")),""))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-paperclip"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"attachments")),""))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,33,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-vault-icon",[],null,null,null,i.View_IconComponent_0,i.RenderType_IconComponent)),t.ɵdid(5,573440,null,0,a.IconComponent,[s.EnvironmentService,d.StateService],{cipher:[0,"cipher"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,17,"td",[["class","reduced-lh wrap"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.selectCipher(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,c.StopClickDirective,[],null,null),t.ɵppd(12,1),(n()(),t.ɵted(13,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(16,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"td",[["class","text-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit),n(l,16,0,!e.organization&&l.context.$implicit.organizationId),n(l,19,0,l.context.$implicit.hasAttachments)},function(n,l){var e=l.component;n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"editItem")),"")),n(l,13,0,l.context.$implicit.name),n(l,24,0,l.context.$implicit.subTitle),n(l,29,0,t.ɵinlineInterpolate(1,"badge badge-",e.passwordStrengthMap.get(l.context.$implicit.id)[1],"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),e.passwordStrengthMap.get(l.context.$implicit.id)[0])))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"app-callout",[["type","danger"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"table",[["class","table table-hover table-list table-ciphers"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(14,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,"danger",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,1,n(l,4,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFound")),"")),n(l,14,0,e.ciphers)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,7,0,t.ɵnov(l.parent.parent,0),"weakPasswordsFoundDesc",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,1),e.ciphers.length)))))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.ciphers.length),n(l,6,0,e.ciphers.length)},null)}function N(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function E(n){return t.ɵvid(0,[t.ɵpid(0,f.I18nPipe,[r.I18nService]),t.ɵpid(0,p.DecimalPipe,[t.LOCALE_ID]),t.ɵqud(402653184,1,{cipherAddEditModalRef:0}),(n()(),t.ɵeld(3,0,null,null,8,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["\n ","\n "])),t.ɵppd(7,1),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(13,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(18,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(21,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["cipherAddEdit",2]],null,0,null,N)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.hasLoaded&&e.loading),n(l,18,0,!e.hasLoaded&&e.loading),n(l,21,0,e.hasLoaded)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"weakPasswordsReport"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"weakPasswordsReportDesc")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-weak-passwords-report",[],null,null,null,E,b)),t.ɵdid(1,114688,null,0,v.WeakPasswordsReportComponent,[h.CipherService,g.PasswordGenerationService,t.ComponentFactoryResolver,m.MessagingService,y.UserService,C.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_WeakPasswordsReportComponent=b,l.View_WeakPasswordsReportComponent_0=E,l.View_WeakPasswordsReportComponent_Host_0=T;var P=t.ɵccf("app-weak-passwords-report",v.WeakPasswordsReportComponent,T,{},{},[]);l.WeakPasswordsReportComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),o=e(4),r=e(7),i=e(3),a=e(490),s=e(8),d=t.ɵcrt({encapsulation:2,styles:[],data:{}});function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","people"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[2,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"people");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"people")))})}function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","groups"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[6,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"groups");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"groups")))})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","events"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[8,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,7,{links:1}),t.ɵqud(603979776,8,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"events");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"eventLogs")))})}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,18,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,c)),t.ɵdid(9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,6,"a",[["class","list-group-item"],["routerLink","collections"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,12).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(12,671744,[[4,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(13,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(16,null,["\n ","\n "])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,p)),t.ɵdid(20,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(23,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,e.organization.isAdmin);n(l,12,0,"collections");n(l,13,0,"active"),n(l,20,0,e.organization.isAdmin&&e.accessGroups),n(l,23,0,e.organization.isAdmin&&e.accessEvents)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"manage"))),n(l,11,0,t.ɵnov(l,12).target,t.ɵnov(l,12).href),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent,0),"collections")))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,16,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,4,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(8,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(14,212992,null,0,u.RouterOutlet,[u.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,8,0,l.component.organization),n(l,14,0)},null)}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-manage",[],null,null,null,h,d)),t.ɵdid(1,114688,null,0,a.ManageComponent,[u.ActivatedRoute,s.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ManageComponent=d,l.View_ManageComponent_0=h,l.View_ManageComponent_Host_0=g;var m=t.ɵccf("app-org-manage",a.ManageComponent,g,{},{},[]);l.ManageComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(4),r=e(7),i=e(3),a=e(262),s=e(12),d=e(491),c=e(5),p=e(10),f=e(43),v=e(6),h=e(13),g=e(9),m=e(8),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-spin text-muted"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==o.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(6,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,26,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,23,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,15,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==o.users(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(21,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-fw fa-users"]],null,null,null,null,null)),(n()(),t.ɵted(24,null,["\n ","\n "])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(28,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-fw fa-trash-o"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,6,0,l.context.$implicit.name),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.parent.context.ngIf)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),t.ɵpid(0,a.SearchPipe,[]),t.ɵqud(402653184,1,{addEditModalRef:0}),t.ɵqud(402653184,2,{usersModalRef:0}),(n()(),t.ɵeld(4,0,null,null,29,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,22,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,13,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(23,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.add()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,_)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(40,4),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["usersTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,21,0,e.searchText),n(l,36,0,e.loading),n(l,39,0,!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.collections,e.searchText,"name","id")))},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"collections"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newCollection")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-manage-collections",[],null,null,null,k,y)),t.ɵdid(1,114688,null,0,d.CollectionsComponent,[c.ApiService,p.ActivatedRoute,f.CollectionService,t.ComponentFactoryResolver,v.Angulartics2,h.ToasterService,i.I18nService,g.PlatformUtilsService,m.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=y,l.View_CollectionsComponent_0=k,l.View_CollectionsComponent_Host_0=A;var O=t.ɵccf("app-org-manage-collections",d.CollectionsComponent,A,{},{},[]);l.CollectionsComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(19),r=e(18),i=e(7),a=e(3),s=e(12),d=e(493),c=e(5),p=e(10),f=e(229),v=e(13),h=e(8),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[],[[8,"className",0],[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"span",[],[[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,0,"td",[],[[8,"innerHTML",1]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"))),n(l,8,0,t.ɵinlineInterpolate(1,"text-muted fa fa-lg ",l.context.$implicit.appIcon,""),t.ɵinlineInterpolate(2,"",l.context.$implicit.appName,", ",l.context.$implicit.ip,"")),n(l,13,0,t.ɵinlineInterpolate(1,"",l.context.$implicit.userEmail,"")),n(l,14,0,l.context.$implicit.userName),n(l,17,0,l.context.$implicit.message)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,32,"table",[["class","table table-hover"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,23,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,20,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"th",[["class","border-top-0"],["width","210"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"th",[["class","border-top-0"],["width","40"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"span",[["class","sr-only"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,2,"th",[["class","border-top-0"],["width","150"]],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"th",[["class","border-top-0"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(30,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,30,0,l.component.events)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"))),n(l,18,0,t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l.parent.parent,0),"user"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"event")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["moreBtn",1]],null,9,"button",[["class","btn btn-block btn-link btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!1)&&t);return t},null,null)),t.ɵdid(1,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.morePromise)},function(n,l){n(l,0,0,l.component.loaded&&t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(6,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(9,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,!e.events||!e.events.length),n(l,6,0,e.events&&e.events.length),n(l,9,0,e.continuationToken)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,40,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,28,"div",[["class","form-inline"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"label",[["class","sr-only"],["for","start"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","start"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,17)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,17).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,17)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,17)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.start=e)&&u);return u},null,null)),t.ɵdid(17,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(19,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(21,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["class","mx-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["-"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["class","sr-only"],["for","end"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","end"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.end=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(36,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,[["refreshBtn",1]],null,7,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!0)&&t);return t},null,null)),t.ɵdid(41,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(44,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(45,{"fa-spin":0}),(n()(),t.ɵted(46,null,["\n ","\n "])),t.ɵppd(47,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(52,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(55,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,19,0,e.start),n(l,34,0,e.end),n(l,41,0,e.refreshPromise);n(l,44,0,"fa fa-refresh fa-fw",n(l,45,0,e.loaded&&t.ɵnov(l,40).loading)),n(l,52,0,!e.loaded),n(l,55,0,e.loaded)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l,0),"eventLogs"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"startDate"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,22,0,t.ɵnov(l,0),"startDate")),""),t.ɵnov(l,21).ngClassUntouched,t.ɵnov(l,21).ngClassTouched,t.ɵnov(l,21).ngClassPristine,t.ɵnov(l,21).ngClassDirty,t.ɵnov(l,21).ngClassValid,t.ɵnov(l,21).ngClassInvalid,t.ɵnov(l,21).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"endDate"))),n(l,31,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,37,0,t.ɵnov(l,0),"endDate")),""),t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,40,0,e.loaded&&t.ɵnov(l,40).loading),n(l,46,0,t.ɵunv(l,46,0,n(l,47,0,t.ɵnov(l,0),"refresh")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-events",[],null,null,null,_,g)),t.ɵdid(1,114688,null,0,d.EventsComponent,[c.ApiService,p.ActivatedRoute,f.EventService,a.I18nService,v.ToasterService,h.UserService,p.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EventsComponent=g,l.View_EventsComponent_0=_,l.View_EventsComponent_Host_0=R;var I=t.ɵccf("app-org-events",d.EventsComponent,R,{},{},[]);l.EventsComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(4),r=e(7),i=e(3),a=e(262),s=e(12),d=e(494),c=e(5),p=e(10),f=e(6),v=e(13),h=e(9),g=e(8),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==o.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(6,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,26,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,23,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,15,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,21).onClick(e)&&u);"click"===l&&(u=!1!==o.users(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(21,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-fw fa-users"]],null,null,null,null,null)),(n()(),t.ɵted(24,null,["\n ","\n "])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,28).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(28,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"i",[["class","fa fa-fw fa-trash-o"]],null,null,null,null,null)),(n()(),t.ɵted(31,null,["\n ","\n "])),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,6,0,l.context.$implicit.name),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"users"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent.parent,0),"delete")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.parent.context.ngIf)},null)}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),t.ɵpid(0,a.SearchPipe,[]),t.ɵqud(402653184,1,{addEditModalRef:0}),t.ɵqud(402653184,2,{usersModalRef:0}),(n()(),t.ɵeld(4,0,null,null,29,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,22,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,13,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,s.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,s.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,s.NG_VALUE_ACCESSOR,function(n){return[n]},[s.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,s.NgModel,[[8,null],[8,null],[8,null],[6,s.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,s.NgControl,null,[s.NgModel]),t.ɵdid(23,16384,null,0,s.NgControlStatus,[[4,s.NgControl]],null,null),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.add()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,S)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(40,4),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["usersTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,21,0,e.searchText),n(l,36,0,e.loading),n(l,39,0,!e.loading&&t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,1),e.groups,e.searchText,"name","id")))},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"groups"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"search"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,24,0,t.ɵnov(l,0),"search")),""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"newGroup")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-groups",[],null,null,null,I,m)),t.ɵdid(1,114688,null,0,d.GroupsComponent,[c.ApiService,p.ActivatedRoute,i.I18nService,t.ComponentFactoryResolver,f.Angulartics2,v.ToasterService,h.PlatformUtilsService,g.UserService,p.Router],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_GroupsComponent=m,l.View_GroupsComponent_0=I,l.View_GroupsComponent_Host_0=k;var A=t.ɵccf("app-org-groups",d.GroupsComponent,k,{},{},[]);l.GroupsComponentNgFactory=A},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.collections=[]}}();l.GroupRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(36),a=e(157),s=e(137),d=e(41),c=e(103),p=e(30),f=e(4),v=e(7),h=e(262),g=e(12),m=e(495),y=e(5),C=e(10),b=e(9),w=e(6),S=e(13),_=e(21),R=e(8),I=e(67),k=t.ɵcrt({encapsulation:2,styles:[],data:{}});function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[["class","badge badge-pill badge-info"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.invitedCount)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[["class","badge badge-pill badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.acceptedCount)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noUsersInList")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","info"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"info","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"confirmUsers")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"usersNeedConfirmed")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-secondary"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted d-block"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-lock"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"userUsingTwoStep")),""))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user")))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.reinvite(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-envelope-o"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"resendInvitation")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-success"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.confirm(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-check"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"confirm")))})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.groups(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-sitemap"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"groups")))})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.events(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa fa-fw fa-file-text-o"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["\n ","\n "])),t.ɵppd(5,1)],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent.parent,0),"eventLogs")))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,77,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"td",[["width","30"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"app-avatar",[["size","25"]],null,null,null,a.View_AvatarComponent_0,a.RenderType_AvatarComponent)),t.ɵdid(5,638976,null,0,s.AvatarComponent,[d.DomSanitizer,c.CryptoFunctionService,p.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,11).onClick(e)&&u);"click"===l&&(u=!1!==o.edit(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(12,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(15,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(18,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(21,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(27,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,13,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(33,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(36,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(39,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(42,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,31,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,28,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,3,"button",[["aria-expanded","false"],["aria-haspopup","true"],["class","btn btn-outline-secondary dropdown-toggle"],["data-toggle","dropdown"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,0,"i",[["class","fa fa-cog fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,20,"div",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(57,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(60,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(63,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(66,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,5,"a",[["appStopClick",""],["class","dropdown-item text-danger"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,69).onClick(e)&&u);"click"===l&&(u=!1!==o.remove(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,0,"i",[["class","fa fa-fw fa-remove"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["\n ","\n "])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,l.context.$implicit.name||l.context.$implicit.email,l.context.$implicit.email,"25",14,!0),n(l,15,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,18,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,21,0,l.context.$implicit.name),n(l,27,0,l.context.$implicit.twoFactorEnabled),n(l,33,0,l.context.$implicit.type===e.organizationUserType.Owner),n(l,36,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,39,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,42,0,l.context.$implicit.type===e.organizationUserType.User),n(l,57,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,60,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,63,0,e.accessGroups),n(l,66,0,e.accessEvents&&l.context.$implicit.status===e.organizationUserStatusType.Confirmed)},function(n,l){n(l,12,0,l.context.$implicit.email),n(l,72,0,t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent.parent.parent,0),"remove")))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,13,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(3,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(10,278528,null,0,f.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.showConfirmUsers),n(l,10,0,l.parent.context.ngIf)},null)}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(3,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(6,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,3,0,!l.context.ngIf.length),n(l,6,0,l.context.ngIf.length)},null)}function $(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function J(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function Z(n){return t.ɵvid(0,[t.ɵpid(0,v.I18nPipe,[r.I18nService]),t.ɵpid(0,h.SearchPipe,[]),t.ɵqud(402653184,1,{addEditModalRef:0}),t.ɵqud(402653184,2,{groupsModalRef:0}),t.ɵqud(402653184,3,{eventsModalRef:0}),t.ɵqud(402653184,4,{confirmModalRef:0}),(n()(),t.ɵeld(6,0,null,null,56,"div",[["class","page-header d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,49,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,25,"div",[["class","btn-group btn-group-sm"],["role","group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filter(null)&&t);return t},null,null)),t.ɵdid(17,278528,null,0,f.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(18,{active:0}),(n()(),t.ɵted(19,null,["\n ","\n "])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,7,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filter(u.organizationUserStatusType.Invited)&&t);return t},null,null)),t.ɵdid(23,278528,null,0,f.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(24,{active:0}),(n()(),t.ɵted(25,null,["\n ","\n "])),t.ɵppd(26,1),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(28,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,7,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filter(u.organizationUserStatusType.Accepted)&&t);return t},null,null)),t.ɵdid(32,278528,null,0,f.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(33,{active:0}),(n()(),t.ɵted(34,null,["\n ","\n "])),t.ɵppd(35,1),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(37,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,13,"div",[["class","ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,48)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,48)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,48)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,g.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,g.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,g.NG_VALUE_ACCESSOR,function(n){return[n]},[g.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,g.NgModel,[[8,null],[8,null],[8,null],[6,g.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,g.NgControl,null,[g.NgModel]),t.ɵdid(52,16384,null,0,g.NgControlStatus,[[4,g.NgControl]],null,null),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,4,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.invite()&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,0,"i",[["class","fa fa-plus fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(59,null,["\n ","\n "])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(65,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,2,null,H)),t.ɵdid(68,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(69,5),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["addEdit",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["groupsTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["eventsTemplate",2]],null,0,null,Y)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["confirmTemplate",2]],null,0,null,J)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,17,0,"btn btn-outline-secondary",n(l,18,0,null==e.status));n(l,23,0,"btn btn-outline-secondary",n(l,24,0,e.status==e.organizationUserStatusType.Invited)),n(l,28,0,e.invitedCount);n(l,32,0,"btn btn-outline-secondary",n(l,33,0,e.status==e.organizationUserStatusType.Accepted)),n(l,37,0,e.acceptedCount),n(l,50,0,e.searchText),n(l,65,0,e.loading),n(l,68,0,!e.loading&&t.ɵunv(l,68,0,n(l,69,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id")))},function(n,l){n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l,0),"people"))),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"all"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l,0),"invited"))),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"accepted"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"search"))),n(l,47,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,53,0,t.ɵnov(l,0),"search")),""),t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"inviteUser")))})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-people",[],null,null,null,Z,k)),t.ɵdid(1,114688,null,0,m.PeopleComponent,[y.ApiService,C.ActivatedRoute,r.I18nService,t.ComponentFactoryResolver,b.PlatformUtilsService,w.Angulartics2,S.ToasterService,_.CryptoService,R.UserService,C.Router,I.StorageService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PeopleComponent=k,l.View_PeopleComponent_0=Z,l.View_PeopleComponent_Host_0=X;var Q=t.ɵccf("app-org-people",m.PeopleComponent,X,{},{},[]);l.PeopleComponentNgFactory=Q},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.emails=[],this.collections=[]}}();l.OrganizationUserInviteRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.collections=[]}}();l.OrganizationUserUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){this.groupIds=[]}}();l.OrganizationUserUpdateGroupsRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(10),o=e(4),r=e(7),i=e(3),a=e(496),s=e(8),d=t.ɵcrt({encapsulation:2,styles:[],data:{}});function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"a",[["class","list-group-item"],["routerLink","two-factor"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,[[6,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(2,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,5,{links:1}),t.ɵqud(603979776,6,{linksWithHrefs:1}),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1)],function(n,l){n(l,1,0,"two-factor");n(l,2,0,"active")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"twoStepLogin")))})}function p(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,42,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,39,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,30,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,27,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"div",[["class","card-header"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,20,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,6,"a",[["class","list-group-item"],["routerLink","account"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,1,{links:1}),t.ɵqud(603979776,2,{linksWithHrefs:1}),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,6,"a",[["class","list-group-item"],["routerLink","billing"],["routerLinkActive","active"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,u.RouterLinkWithHref,[u.Router,u.ActivatedRoute,o.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,u.RouterLinkActive,[u.Router,t.ElementRef,t.Renderer2,t.ChangeDetectorRef],{routerLinkActive:[0,"routerLinkActive"]},null),t.ɵqud(603979776,3,{links:1}),t.ɵqud(603979776,4,{linksWithHrefs:1}),(n()(),t.ɵted(28,null,["\n ","\n "])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,c)),t.ɵdid(32,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(40,212992,null,0,u.RouterOutlet,[u.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,16,0,"account");n(l,17,0,"active");n(l,24,0,"billing");n(l,25,0,"active"),n(l,32,0,e.access2fa),n(l,40,0)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"settings"))),n(l,15,0,t.ɵnov(l,16).target,t.ɵnov(l,16).href),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"myOrganization"))),n(l,23,0,t.ɵnov(l,24).target,t.ɵnov(l,24).href),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"billingAndLicensing")))})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-settings",[],null,null,null,p,d)),t.ɵdid(1,114688,null,0,a.SettingsComponent,[u.ActivatedRoute,s.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_SettingsComponent=d,l.View_SettingsComponent_0=p,l.View_SettingsComponent_Host_0=f;var v=t.ɵccf("app-org-settings",a.SettingsComponent,f,{},{},[]);l.SettingsComponentNgFactory=v},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(19),r=e(18),i=e(157),a=e(137),s=e(41),d=e(103),c=e(30),p=e(7),f=e(3),v=e(4),h=e(497),g=e(5),m=e(6),y=e(13),C=e(10),b=e(62),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n"]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,69,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(3,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,52,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,43,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"input",[["class","form-control"],["id","name"],["name","Name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,17)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,17).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,17)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,17)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.org.name=e)&&u);return u},null,null)),t.ɵdid(17,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(19,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(21,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"label",[["for","billingEmail"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,5,"input",[["class","form-control"],["id","billingEmail"],["name","BillingEmail"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,31)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,31).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,31)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,31)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.org.billingEmail=e)&&u);return u},null,null)),t.ɵdid(31,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(33,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(35,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"label",[["for","businessName"]],null,null,null,null,null)),(n()(),t.ɵted(41,null,["",""])),t.ɵppd(42,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,5,"input",[["class","form-control"],["id","businessName"],["name","BusinessName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,45)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,45).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,45)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,45)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.org.businessName=e)&&u);return u},null,null)),t.ɵdid(45,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(47,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(49,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,4,"div",[["class","col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"app-avatar",[["dynamic","true"],["fontSize","35"],["size","75"]],null,null,null,i.View_AvatarComponent_0,i.RenderType_AvatarComponent)),t.ɵdid(56,638976,null,0,a.AvatarComponent,[s.DomSanitizer,d.CryptoFunctionService,c.StateService],{data:[0,"data"],size:[1,"size"],fontSize:[2,"fontSize"],dynamic:[3,"dynamic"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(66,null,["",""])),t.ɵppd(67,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise);n(l,19,0,"Name",e.org.name);n(l,33,0,"BillingEmail",e.org.billingEmail);n(l,47,0,"BusinessName",e.org.businessName);n(l,56,0,t.ɵinlineInterpolate(1,"",e.org.name,""),"75","35","true")},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent,0),"organizationName"))),n(l,16,0,t.ɵnov(l,21).ngClassUntouched,t.ɵnov(l,21).ngClassTouched,t.ɵnov(l,21).ngClassPristine,t.ɵnov(l,21).ngClassDirty,t.ɵnov(l,21).ngClassValid,t.ɵnov(l,21).ngClassInvalid,t.ɵnov(l,21).ngClassPending),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"billingEmail"))),n(l,30,0,t.ɵnov(l,35).ngClassUntouched,t.ɵnov(l,35).ngClassTouched,t.ɵnov(l,35).ngClassPristine,t.ɵnov(l,35).ngClassDirty,t.ɵnov(l,35).ngClassValid,t.ɵnov(l,35).ngClassInvalid,t.ɵnov(l,35).ngClassPending),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l.parent,0),"businessName"))),n(l,44,0,t.ɵnov(l,49).ngClassUntouched,t.ɵnov(l,49).ngClassTouched,t.ɵnov(l,49).ngClassPristine,t.ɵnov(l,49).ngClassDirty,t.ɵnov(l,49).ngClassValid,t.ɵnov(l,49).ngClassInvalid,t.ɵnov(l,49).ngClassPending),n(l,60,0,t.ɵnov(l,0).loading),n(l,62,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l.parent,0),"save")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵqud(402653184,1,{deleteModalRef:0}),t.ɵqud(402653184,2,{purgeModalRef:0}),(n()(),t.ɵeld(3,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(11,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(14,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(16,0,null,null,5,"div",[["class","secondary-header border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",""])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(27,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://bitwarden.com/contact/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["\n ","\n"])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(31,0,null,null,5,"div",[["class","secondary-header text-danger border-0 mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(38,0,null,null,16,"div",[["class","card border-danger"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,13,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.deleteOrganization()&&t);return t},null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"button",[["class","btn btn-outline-danger"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.purgeVault()&&t);return t},null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["deleteOrganizationTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["purgeOrganizationTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,11,0,e.loading),n(l,14,0,e.org&&!e.loading)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l,0),"myOrganization"))),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),"taxInformation"))),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l,0),"taxInformationDesc"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"contactSupport"))),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"dangerZone"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"dangerZoneDesc"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l,0),"deleteOrganization"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l,0),"purgeVault")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-account",[],null,null,null,k,w)),t.ɵdid(1,114688,null,0,h.AccountComponent,[t.ComponentFactoryResolver,g.ApiService,f.I18nService,m.Angulartics2,y.ToasterService,C.ActivatedRoute,b.SyncService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AccountComponent=w,l.View_AccountComponent_0=k,l.View_AccountComponent_Host_0=A;var O=t.ɵccf("app-org-account",h.AccountComponent,A,{},{},[]);l.AccountComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.OrganizationUpdateRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(36),a=e(4),s=e(7),d=e(498),c=e(5),p=e(8),f=e(20),v=e(10),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginDesc")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"twoStepLoginOrganizationDesc")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(3,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),t.ɵppd(5,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(7,0,null,0,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.recoveryCode()&&t);return t},null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,0,["\n"]))],function(n,l){n(l,1,0,"warning")},function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"twoStepLoginRecoveryWarning"))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"viewRecoveryCode")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-fw text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-check text-success fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"enabled")),""))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent,0),"premium")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"li",[["class","list-group-item d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"div",[["class","logo-2fa d-flex justify-content-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"img",[["alt",""]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,"div",[["class","mx-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,"h3",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(12,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(17,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,5,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"button",[["class","btn btn-outline-secondary btn-sm"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.manage(n.context.$implicit.type)&&t);return t},null,null)),(n()(),t.ɵted(22,null,["\n ","\n "])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,12,0,l.context.$implicit.enabled&&e.canAccessPremium),n(l,15,0,!e.canAccessPremium&&l.context.$implicit.premium)},function(n,l){var e=l.component;n(l,4,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,10,0,l.context.$implicit.name),n(l,17,0,l.context.$implicit.description),n(l,21,0,!e.canAccessPremium&&l.context.$implicit.premium),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"manage")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function A(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function N(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[r.I18nService]),t.ɵqud(402653184,1,{recoveryModalRef:0}),t.ɵqud(402653184,2,{authenticatorModalRef:0}),t.ɵqud(402653184,3,{yubikeyModalRef:0}),t.ɵqud(402653184,4,{u2fModalRef:0}),t.ɵqud(402653184,5,{duoModalRef:0}),t.ɵqud(402653184,6,{emailModalRef:0}),(n()(),t.ɵeld(7,0,null,null,5,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(15,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(21,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(23,0,null,null,7,"h2",[],null,null,null,null,null)),t.ɵdid(24,278528,null,0,a.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(25,{"mt-5":0}),(n()(),t.ɵted(26,null,["\n ","\n "])),t.ɵppd(27,1),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(29,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(32,0,null,null,4,"ul",[["class","list-group list-group-2fa"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(35,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n\n"])),(n()(),t.ɵand(16777216,[[2,3],["authenticatorTemplate",2]],null,0,null,_)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[1,3],["recoveryTemplate",2]],null,0,null,R)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[5,3],["duoTemplate",2]],null,0,null,I)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[6,3],["emailTemplate",2]],null,0,null,k)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["yubikeyTemplate",2]],null,0,null,A)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["u2fTemplate",2]],null,0,null,O)),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,15,0,!e.organizationId),n(l,18,0,e.organizationId),n(l,21,0,!e.organizationId),n(l,24,0,n(l,25,0,!e.organizationId)),n(l,29,0,e.loading),n(l,35,0,e.providers)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l,0),"providers")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-setup",[],null,null,null,N,h)),t.ɵdid(1,114688,null,0,d.TwoFactorSetupComponent,[c.ApiService,p.UserService,t.ComponentFactoryResolver,f.MessagingService,v.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorSetupComponent=h,l.View_TwoFactorSetupComponent_0=N,l.View_TwoFactorSetupComponent_Host_0=E;var T=t.ɵccf("app-two-factor-setup",d.TwoFactorSetupComponent,E,{},{},[]);l.TwoFactorSetupComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(31),o=e(28),r=e(3),i=e(19),a=e(18),s=e(4),d=e(558),c=e(466),p=e(5),f=e(6),v=e(13),h=e(874),g=e(595),m=e(559),y=e(467),C=e(12),b=e(560),w=e(468),S=e(36),_=e(7),R=e(499),I=e(70),k=e(9),A=e(10),O=t.ɵcrt({encapsulation:2,styles:[],data:{}});function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent,0),"loading")),""))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["",""])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"canceled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"subscriptionCanceled")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(4,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(8,0,[["reinstateBtn",1]],0,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reinstate()&&t);return t},null,null)),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent,0),"pendingCancellation")),"")),n(l,9,0,e.reinstatePromise)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"subscriptionPendingCanceled"))),n(l,8,0,t.ɵnov(l,8).loading),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"reinstateSubscription")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"span",[["class","text-danger ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-exclamation-triangle"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"licenseIsExpired")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,2),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(4,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,4,0,l.component.isExpired)},function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,1),e.billing.expiration,"mediumDate")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"neverExpires")))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(17,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,14,0,e.billing.expiration),n(l,17,0,!e.billing.expiration)},function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"billingPlan"))),n(l,7,0,e.billing.plan),n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent,0),"expiration")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"pendingCancellation")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,23,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"span",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,3,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["","\n "])),t.ɵppd(21,2),t.ɵppd(22,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,l.component.subscriptionMarkedForCancel)},function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"status"))),n(l,9,0,e.subscription.status||"-"),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent,0),"nextCharge"))),n(l,20,0,e.nextInvoice?t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,1),e.nextInvoice.date,"mediumDate"))+", "+t.ɵunv(l,20,0,n(l,22,0,t.ɵnov(l.parent.parent.parent,2),e.nextInvoice.amount,"$")):"-")})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n "," "," @ ","\n "])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n "," /","\n "])),t.ɵppd(8,2),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,l.context.$implicit.name,l.context.$implicit.quantity>1?"×"+l.context.$implicit.quantity:"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.quantity*l.context.$implicit.amount,"$")),t.ɵunv(l,7,1,n(l,9,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.interval)))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,"div",[["class","col-8"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[["class","d-block mb-1"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"table",[["class","table"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(11,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,11,0,l.component.subscription.items)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"details")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,14,"div",[["class","col-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,11,"dl",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"dt",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,1,"dd",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(19,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,14,0,e.subscription),n(l,19,0,e.subscription)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"billingPlan"))),n(l,11,0,e.billing.plan)})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","card mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"h3",[["class","card-body-header"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"app-update-license",[],null,[[null,"onUpdated"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onUpdated"===l&&(t=!1!==u.closeUpdateLicense(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeUpdateLicense(!1)&&t);return t},d.View_UpdateLicenseComponent_0,d.RenderType_UpdateLicenseComponent)),t.ɵdid(9,49152,null,0,c.UpdateLicenseComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{organizationId:[0,"organizationId"]},{onUpdated:"onUpdated",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,9,0,l.component.organizationId)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"updateLicense")))})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.updateLicense()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"a",[["class","btn btn-outline-secondary"],["href","https://vault.bitwarden.com"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(14,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,14,0,l.component.showUpdateLicense)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"updateLicense"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"manageSubscription")))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["licenseBtn",1]],null,9,"button",[["class","btn btn-outline-secondary btn-submit ml-1"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.downloadLicense()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.licensePromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"downloadLicense")))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["cancelBtn",1]],null,9,"button",[["class","btn btn-outline-danger btn-submit ml-auto"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.cancel()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.cancelPromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"cancelSubscription")))})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustSeats(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-outline-secondary ml-1"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustSeats(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addSeats"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeSeats")))})}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-seats",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeSeats(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeSeats(!1)&&t);return t},h.View_AdjustSeatsComponent_0,h.RenderType_AdjustSeatsComponent)),t.ɵdid(1,49152,null,0,g.AdjustSeatsComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{seatPrice:[0,"seatPrice"],add:[1,"add"],organizationId:[2,"organizationId"],interval:[3,"interval"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){var e=l.component;n(l,1,0,e.seatPrice,e.adjustSeatsAdd,e.organizationId,e.billingInterval)},null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustSeats),n(l,8,0,e.showAdjustSeats)},null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-outline-secondary ml-1"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.adjustStorage(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent.parent,0),"addStorage"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent.parent,0),"removeStorage")))})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-storage",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closeStorage(!0)&&t);"onCanceled"===l&&(t=!1!==u.closeStorage(!1)&&t);return t},m.View_AdjustStorageComponent_0,m.RenderType_AdjustStorageComponent)),t.ɵdid(1,49152,null,0,y.AdjustStorageComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{storageGbPrice:[0,"storageGbPrice"],add:[1,"add"],organizationId:[2,"organizationId"],interval:[3,"interval"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"})],function(n,l){var e=l.component;n(l,1,0,e.storageGbPrice,e.adjustStorageAdd,e.organizationId,e.billingInterval)},null)}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(5,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(8,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!e.showAdjustStorage),n(l,8,0,e.showAdjustStorage)},null)}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noPaymentMethod")))})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,71,"app-callout",[["type","warning"]],null,null,null,u.View_CalloutComponent_0,u.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,o.CalloutComponent,[r.I18nService],{type:[0,"type"],title:[1,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(4,0,null,0,3,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,[""," ",""])),t.ɵppd(6,1),t.ɵppd(7,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(9,0,[["verifyForm",1]],0,61,"form",[["class","form-inline"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,10).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,10).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.verifyBank()&&u);return u},null,null)),t.ɵdid(10,4210688,null,0,C.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,C.ControlContainer,null,[C.NgForm]),t.ɵdid(12,16384,null,0,C.NgControlStatusGroup,[[4,C.ControlContainer]],null,null),t.ɵdid(13,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"label",[["class","sr-only"],["for","verifyAmount1"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,17,"div",[["class","input-group mr-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,4,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["$0."])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,8,"input",[["class","form-control"],["id","verifyAmount1"],["max","99"],["min","1"],["name","Amount1"],["placeholder","xx"],["required",""],["step","1"],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,28)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,28).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,28)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,28)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,29).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,29).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,29).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.verifyAmount1=e)&&u);return u},null,null)),t.ɵdid(28,16384,null,0,C.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,C.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(29,16384,null,0,C.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(30,16384,null,0,C.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,C.NG_VALIDATORS,function(n){return[n]},[C.RequiredValidator]),t.ɵprd(1024,null,C.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[C.DefaultValueAccessor,C.ɵangular_packages_forms_forms_bd]),t.ɵdid(33,671744,null,0,C.NgModel,[[2,C.ControlContainer],[6,C.NG_VALIDATORS],[8,null],[6,C.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,C.NgControl,null,[C.NgModel]),t.ɵdid(35,16384,null,0,C.NgControlStatus,[[4,C.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"label",[["class","sr-only"],["for","verifyAmount2"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,17,"div",[["class","input-group mr-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,4,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["$0."])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,8,"input",[["class","form-control"],["id","verifyAmount2"],["max","99"],["min","1"],["name","Amount2"],["placeholder","xx"],["required",""],["step","1"],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,51)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,51)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,51)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,52).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,52).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,52).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.verifyAmount2=e)&&u);return u},null,null)),t.ɵdid(51,16384,null,0,C.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,C.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(52,16384,null,0,C.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(53,16384,null,0,C.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,C.NG_VALIDATORS,function(n){return[n]},[C.RequiredValidator]),t.ɵprd(1024,null,C.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[C.DefaultValueAccessor,C.ɵangular_packages_forms_forms_bd]),t.ɵdid(56,671744,null,0,C.NgModel,[[2,C.ControlContainer],[6,C.NG_VALIDATORS],[8,null],[6,C.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,C.NgControl,null,[C.NgModel]),t.ɵdid(58,16384,null,0,C.NgControlStatus,[[4,C.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,8,"button",[["class","btn btn-outline-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(67,null,["",""])),t.ɵppd(68,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "]))],function(n,l){var e=l.component;n(l,1,0,"warning",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,1,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount")),"")),n(l,13,0,e.verifyBankPromise);n(l,30,0,"");n(l,33,0,"Amount1",e.verifyAmount1);n(l,53,0,"");n(l,56,0,"Amount2",e.verifyAmount2)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountDesc")),t.ɵunv(l,5,1,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccountFailureWarning"))),n(l,9,0,t.ɵnov(l,12).ngClassUntouched,t.ɵnov(l,12).ngClassTouched,t.ɵnov(l,12).ngClassPristine,t.ɵnov(l,12).ngClassDirty,t.ɵnov(l,12).ngClassValid,t.ɵnov(l,12).ngClassInvalid,t.ɵnov(l,12).ngClassPending),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","1"))),n(l,27,0,t.ɵnov(l,30).required?"":null,t.ɵnov(l,35).ngClassUntouched,t.ɵnov(l,35).ngClassTouched,t.ɵnov(l,35).ngClassPristine,t.ɵnov(l,35).ngClassDirty,t.ɵnov(l,35).ngClassValid,t.ɵnov(l,35).ngClassInvalid,t.ɵnov(l,35).ngClassPending),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent.parent.parent,0),"amount","2"))),n(l,50,0,t.ɵnov(l,53).required?"":null,t.ɵnov(l,58).ngClassUntouched,t.ɵnov(l,58).ngClassTouched,t.ɵnov(l,58).ngClassPristine,t.ɵnov(l,58).ngClassDirty,t.ɵnov(l,58).ngClassValid,t.ɵnov(l,58).ngClassInvalid,t.ɵnov(l,58).ngClassPending),n(l,61,0,t.ɵnov(l,9).loading),n(l,63,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),"")),n(l,67,0,t.ɵunv(l,67,0,n(l,68,0,t.ɵnov(l.parent.parent.parent.parent,0),"verifyBankAccount")))})}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),t.ɵdid(3,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"i",[["class","fa fa-fw"]],null,null,null,null,null)),t.ɵdid(8,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(9,{"fa-credit-card":0,"fa-university":1,"fa-paypal text-primary":2}),(n()(),t.ɵted(10,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.paymentSource.type===e.paymentMethodType.BankAccount&&e.paymentSource.needsVerification);n(l,8,0,"fa fa-fw",n(l,9,0,e.paymentSource.type===e.paymentMethodType.Card,e.paymentSource.type===e.paymentMethodType.BankAccount,e.paymentSource.type===e.paymentMethodType.PayPal))},function(n,l){n(l,10,0,l.component.paymentSource.description)})}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePayment()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),e.paymentSource?"changePaymentMethod":"addPaymentMethod")))})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-adjust-payment",[],null,[[null,"onAdjusted"],[null,"onCanceled"]],function(n,l,e){var t=!0,u=n.component;"onAdjusted"===l&&(t=!1!==u.closePayment(!0)&&t);"onCanceled"===l&&(t=!1!==u.closePayment(!1)&&t);return t},b.View_AdjustPaymentComponent_0,b.RenderType_AdjustPaymentComponent)),t.ɵdid(1,49152,null,0,w.AdjustPaymentComponent,[p.ApiService,r.I18nService,f.Angulartics2,v.ToasterService],{currentType:[0,"currentType"],organizationId:[1,"organizationId"]},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,null!=e.paymentSource?e.paymentSource.type:null,e.organizationId)},null)}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCharges")))})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,28,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,5,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,5).onClick(e)&&u);"click"===l&&(u=!1!==o.viewInvoice(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,S.StopClickDirective,[],null,null),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[["class","fa fa-file-pdf-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"td",[["class","text-capitalize"]],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,5,"td",[],[[8,"title",0]],null,null,null,null)),t.ɵdid(23,278528,null,0,s.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(24,{"text-strike":0}),t.ɵppd(25,1),(n()(),t.ɵted(26,null,["",""])),t.ɵppd(27,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,23,0,n(l,24,0,l.context.$implicit.refunded))},function(n,l){n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,6,0,t.ɵnov(l.parent.parent.parent.parent,0),"invoice")),"")),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.createdDate,"mediumDate"))),n(l,17,0,l.context.$implicit.paymentSource?l.context.$implicit.paymentSource.description:"-"),n(l,20,0,l.context.$implicit.status),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,25,0,t.ɵnov(l.parent.parent.parent.parent,0),l.context.$implicit.refunded?"refunded":"")),"")),n(l,26,0,t.ɵunv(l,26,0,n(l,27,0,t.ɵnov(l.parent.parent.parent.parent,2),l.context.$implicit.amount,"$")))})}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(5,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.charges)},null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,75,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.changePlan()&&t);return t},null,null)),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(9,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["",""])),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["",""])),t.ɵppd(21,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(24,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(31,null,["",""])),t.ɵppd(32,3),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"div",[["class","progress"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,4,"div",[["aria-valuemax","100"],["aria-valuemin","0"],["class","progress-bar bg-success"],["role","progressbar"]],[[1,"aria-valuenow",0]],null,null,null,null)),t.ɵdid(37,278528,null,0,s.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(38,{width:0}),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(44,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(51,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(54,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(57,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(60,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,2,"h2",[["class","spaced-header"]],null,null,null,null,null)),(n()(),t.ɵted(63,null,["",""])),t.ɵppd(64,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(67,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,on)),t.ɵdid(70,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["* ",""])),t.ɵppd(74,2),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,e.canDownloadLicense),n(l,12,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel),n(l,24,0,e.subscription&&e.canAdjustSeats),n(l,37,0,n(l,38,0,e.storageProgressWidth+"%")),n(l,44,0,e.subscription&&!e.subscription.cancelled&&!e.subscriptionMarkedForCancel&&e.paymentSource),n(l,51,0,!e.paymentSource),n(l,54,0,e.paymentSource),n(l,57,0,!e.showAdjustPayment),n(l,60,0,e.showAdjustPayment),n(l,67,0,!e.charges||!e.charges.length),n(l,70,0,e.charges&&e.charges.length)},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"changeBillingPlan"))),n(l,16,0,t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l.parent.parent,0),"userSeats"))),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent,0),"subscriptionUserSeats",e.billing.seats))),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent.parent,0),"storage"))),n(l,31,0,t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"subscriptionStorage",e.billing.maxStorageGb||0,e.billing.storageName||"0 MB"))),n(l,36,0,e.storagePercentage),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent.parent,3),e.storagePercentage/100))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent,0),"paymentMethod"))),n(l,63,0,t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l.parent.parent,0),"charges"))),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"chargesStatement","BITWARDEN")))})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(3,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(6,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(9,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(15,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,rn)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,3,0,e.subscription&&e.subscription.cancelled),n(l,6,0,e.subscriptionMarkedForCancel),n(l,9,0,e.selfHosted),n(l,12,0,!e.selfHosted),n(l,15,0,e.selfHosted),n(l,18,0,!e.selfHosted)},null)}function sn(n){return t.ɵvid(0,[t.ɵpid(0,_.I18nPipe,[r.I18nService]),t.ɵpid(0,s.DatePipe,[t.LOCALE_ID]),t.ɵpid(0,s.CurrencyPipe,[t.LOCALE_ID]),t.ɵpid(0,s.PercentPipe,[t.LOCALE_ID]),(n()(),t.ɵeld(4,0,null,null,11,"div",[["class","page-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"h1",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵeld(9,0,null,null,4,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(12,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,null,null,1,null,an)),t.ɵdid(21,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,12,0,e.firstLoaded&&e.loading),n(l,18,0,!e.firstLoaded&&e.loading),n(l,21,0,e.billing)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l,0),"billingAndLicensing")))})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-billing",[],null,null,null,sn,O)),t.ɵdid(1,114688,null,0,R.OrganizationBillingComponent,[I.TokenService,p.ApiService,k.PlatformUtilsService,r.I18nService,f.Angulartics2,v.ToasterService,A.ActivatedRoute],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_OrganizationBillingComponent=O,l.View_OrganizationBillingComponent_0=sn,l.View_OrganizationBillingComponent_Host_0=dn;var cn=t.ɵccf("app-org-billing",R.OrganizationBillingComponent,dn,{},{},[]);l.OrganizationBillingComponentNgFactory=cn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(4),i=e(12),a=e(19),s=e(18),d=e(595),c=e(5),p=e(6),f=e(13),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,"div",[["class","mb-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,[" "," × "," = "," /","\n "])),t.ɵppd(6,2),t.ɵppd(7,2),t.ɵppd(8,1)],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"total"))),n(l,5,0,e.seatAdjustment||0,t.ɵunv(l,5,1,n(l,6,0,t.ɵnov(l.parent,1),e.seatPrice,"$")),t.ɵunv(l,5,2,n(l,7,0,t.ɵnov(l.parent,1),e.adjustedSeatTotal,"$")),t.ɵunv(l,5,3,n(l,8,0,t.ɵnov(l.parent,0),e.interval)))})}function g(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),t.ɵpid(0,r.CurrencyPipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,[["form",1]],null,53,"form",[["class","card"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,3).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,3).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(3,4210688,null,0,i.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,i.ControlContainer,null,[i.NgForm]),t.ɵdid(5,16384,null,0,i.NgControlStatusGroup,[[4,i.ControlContainer]],null,null),t.ɵdid(6,540672,null,0,a.ApiActionDirective,[t.ElementRef,s.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,46,"div",[["class","card-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"h3",[["class","card-body-header"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,15,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,2,"label",[["for","seatAdjustment"]],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",""])),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,8,"input",[["class","form-control"],["id","seatAdjustment"],["min","0"],["name","SeatAdjustment"],["required",""],["step","1"],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,23)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,23).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,23)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,23)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,24).onChange(e.target.value)&&u);"input"===l&&(u=!1!==t.ɵnov(n,24).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,24).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.seatAdjustment=e)&&u);return u},null,null)),t.ɵdid(23,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(24,16384,null,0,i.ɵangular_packages_forms_forms_bd,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(25,16384,null,0,i.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,i.NG_VALIDATORS,function(n){return[n]},[i.RequiredValidator]),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[i.DefaultValueAccessor,i.ɵangular_packages_forms_forms_bd]),t.ɵdid(28,671744,null,0,i.NgModel,[[2,i.ControlContainer],[6,i.NG_VALIDATORS],[8,null],[6,i.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(30,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(35,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.cancel()&&t);return t},null,null)),(n()(),t.ɵted(48,null,["\n ","\n "])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,2,"small",[["class","d-block text-muted mt-3"]],null,null,null,null,null)),(n()(),t.ɵted(52,null,["\n ","\n "])),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,6,0,e.formPromise);n(l,25,0,"");n(l,28,0,"SeatAdjustment",e.seatAdjustment),n(l,35,0,e.add)},function(n,l){var e=l.component;n(l,2,0,t.ɵnov(l,5).ngClassUntouched,t.ɵnov(l,5).ngClassTouched,t.ɵnov(l,5).ngClassPristine,t.ɵnov(l,5).ngClassDirty,t.ɵnov(l,5).ngClassValid,t.ɵnov(l,5).ngClassInvalid,t.ɵnov(l,5).ngClassPending),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),e.add?"addSeats":"removeSeats"))),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l,0),e.add?"seatsToAdd":"seatsToRemove"))),n(l,22,0,t.ɵnov(l,25).required?"":null,t.ɵnov(l,30).ngClassUntouched,t.ɵnov(l,30).ngClassTouched,t.ɵnov(l,30).ngClassPristine,t.ɵnov(l,30).ngClassDirty,t.ɵnov(l,30).ngClassValid,t.ɵnov(l,30).ngClassInvalid,t.ɵnov(l,30).ngClassPending),n(l,37,0,t.ɵnov(l,2).loading),n(l,39,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"")),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"submit"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel"))),n(l,52,0,t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),e.add?"seatsAddNote":"seatsRemoveNote")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-adjust-seats",[],null,null,null,g,v)),t.ɵdid(1,49152,null,0,d.AdjustSeatsComponent,[c.ApiService,o.I18nService,p.Angulartics2,f.ToasterService],null,null)],null,null)}l.RenderType_AdjustSeatsComponent=v,l.View_AdjustSeatsComponent_0=g,l.View_AdjustSeatsComponent_Host_0=m;var y=t.ɵccf("app-adjust-seats",d.AdjustSeatsComponent,m,{seatPrice:"seatPrice",add:"add",organizationId:"organizationId",interval:"interval"},{onAdjusted:"onAdjusted",onCanceled:"onCanceled"},[]);l.AdjustSeatsComponentNgFactory=y},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.SeatRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.VerifyBankRequest=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(36),i=e(596),a=e(49),s=e(19),d=e(18),c=e(597),p=e(7),f=e(3),v=e(251),h=e(23),g=e(55),m=e(9),y=e(104),C=e(30),b=e(8),w=e(43),S=e(222),_=e(61),R=e(20),I=t.ɵcrt({encapsulation:2,styles:[],data:{}});function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"select",[["class","form-control"],["id","type"],["name","Type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,9).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.type=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(11,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(13,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(16,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"))),n(l,8,0,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[["for","folder"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,9,"select",[["class","form-control"],["id","folder"],["name","FolderId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,7).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,7).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.folderId=e)&&u);return u},null,null)),t.ɵdid(7,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(9,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(11,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(14,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"))),n(l,6,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"img",[["class","ml-2"],["src","images/totp-countdown.png"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,6,0,!e.organization&&!e.cipher.organizationId&&!e.canAccessPremium),n(l,9,0,e.organization&&!e.organization.useTotp||!e.organization&&!e.canAccessPremium&&e.cipher.organizationId&&!e.cipher.organizationUseTotp)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),""))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,29,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"span",[["class","totp-countdown mr-3 ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"span",[["class","totp-sec"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,":svg:svg",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,":svg:g",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,":svg:circle",[["class","totp-circle inner"],["cx","16"],["cy","16"],["r","12.6"]],null,null,null,null,null)),t.ɵdid(12,278528,null,0,o.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(13,{"stroke-dashoffset.px":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,":svg:circle",[["class","totp-circle outer"],["cx","16"],["cy","16"],["r","14"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"span",[["class","totp-code mr-2"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(22,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.totpCode,"verificationCodeTotp","TOTP")&&t);return t},null,null)),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,0,"i",[["class","fa fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,n(l,13,0,l.component.totpDash))},function(n,l){var e=l.component;n(l,5,0,e.totpSec),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"")),n(l,22,0,e.totpCodeFormatted),n(l,24,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),""))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,72,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,32,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,25,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,7,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,12)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,12).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,12)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,12)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.uri=e)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(14,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(16,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(17,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,13,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.launch(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-share"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.context.$implicit.uri,"uri","URI")&&t);return t},null,null)),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,34,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(42,null,["\n ","\n "])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/uri-match-detection/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,18,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,9,"select",[["class","form-control"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,55).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,55).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.match=e)&&u);"change"===l&&(u=!1!==o.loginUriMatchChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(55,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(57,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(59,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(62,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeUri(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,14,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Uri"),l.context.$implicit.uri);n(l,17,0,""),n(l,57,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Match"),l.context.$implicit.match),n(l,62,0,e.uriMatchOptions)},function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,"")),n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1))),n(l,11,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com"),t.ɵnov(l,16).ngClassUntouched,t.ɵnov(l,16).ngClassTouched,t.ɵnov(l,16).ngClassPristine,t.ɵnov(l,16).ngClassDirty,t.ɵnov(l,16).ngClassValid,t.ɵnov(l,16).ngClassInvalid,t.ɵnov(l,16).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),""),!l.context.$implicit.canLaunch),n(l,28,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"")),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,"")),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"))),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"")),n(l,54,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""),t.ɵnov(l,59).ngClassUntouched,t.ɵnov(l,59).ngClassTouched,t.ɵnov(l,59).ngClassPristine,t.ɵnov(l,59).ngClassDirty,t.ɵnov(l,59).ngClassValid,t.ɵnov(l,59).ngClassInvalid,t.ɵnov(l,59).ngClassPending),n(l,65,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),""))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.login.uris)},null)}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,129,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,87,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","loginUsername"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","loginUsername"],["name","Login.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,13)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,13)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,13)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.username=e)&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(18,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.username,"username","Username")&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,57,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,26,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"label",[["for","loginPassword"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,19,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,5,"a",[["appStopClick",""],["class","d-block mr-2"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==o.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-refresh"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,[["checkPasswordBtn",1]],null,9,"a",[["appStopClick",""],["class","d-block"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==o.checkPassword()&&u);return u},null,null)),t.ɵdid(49,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(50,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(51,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-check-circle"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-lg fa-fw fa-spinner fa-spin"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","loginPassword"],["name","Login.Password"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,64)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,64).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,64)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,64)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.password=e)&&u);return u},null,null)),t.ɵdid(64,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(66,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(68,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(69,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword()&&t);return t},null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(77,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(78,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.password,"password","Password")&&t);return t},null,null)),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(95,0,null,null,2,"label",[["for","loginTotp"]],null,null,null,null,null)),(n()(),t.ɵted(96,null,["",""])),t.ɵppd(97,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(99,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control text-monospace"],["id","loginTotp"],["name","Login.Totp"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,100)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,100).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,100)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,100)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.totp=e)&&u);return u},null,null)),t.ɵdid(100,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(102,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(104,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(105,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,9,"div",[["class","col-6 form-group totp d-flex align-items-end"]],null,null,null,null,null)),t.ɵdid(109,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(110,{low:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(113,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(116,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(121,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==o.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(126,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(127,null,[" ","\n "])),t.ɵppd(128,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,15,0,"Login.Username",e.cipher.login.username);n(l,18,0,""),n(l,49,0,e.checkPasswordPromise);n(l,66,0,"Login.Password",e.cipher.login.password);n(l,69,0,"");n(l,77,0,"fa fa-lg",n(l,78,0,!e.showPassword,e.showPassword));n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");n(l,109,0,"col-6 form-group totp d-flex align-items-end",n(l,110,0,e.totpLow)),n(l,113,0,!e.cipher.login.totp||!e.totpCode),n(l,116,0,e.cipher.login.totp&&e.totpCode),n(l,121,0,e.cipher.login.hasUris)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,12,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"))),n(l,41,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"")),n(l,48,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"")),n(l,53,0,t.ɵnov(l,48).loading),n(l,55,0,!t.ɵnov(l,48).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,63,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,68).ngClassUntouched,t.ɵnov(l,68).ngClassTouched,t.ɵnov(l,68).ngClassPristine,t.ɵnov(l,68).ngClassDirty,t.ɵnov(l,68).ngClassValid,t.ɵnov(l,68).ngClassInvalid,t.ɵnov(l,68).ngClassPending),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,81,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"")),n(l,96,0,t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"))),n(l,99,0,t.ɵnov(l,104).ngClassUntouched,t.ɵnov(l,104).ngClassTouched,t.ɵnov(l,104).ngClassPristine,t.ɵnov(l,104).ngClassDirty,t.ɵnov(l,104).ngClassValid,t.ɵnov(l,104).ngClassInvalid,t.ɵnov(l,104).ngClassPending),n(l,127,0,t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,137,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,33,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","cardCardholderName"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"input",[["class","form-control"],["id","cardCardholderName"],["name","Card.CardCardholderName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.cardholderName=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","cardBrand"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,9,"select",[["class","form-control"],["id","cardBrand"],["name","Card.Brand"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.brand=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(27,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(29,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(32,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,61,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","cardNumber"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","cardNumber"],["name","Card.Number"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,48)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,48)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,48)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.number=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(53,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.number,"number","Number")&&t);return t},null,null)),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,16,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,2,"label",[["for","cardExpMonth"]],null,null,null,null,null)),(n()(),t.ɵted(69,null,["",""])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,9,"select",[["class","form-control"],["id","cardExpMonth"],["name","Card.ExpMonth"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,73).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,73).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expMonth=e)&&u);return u},null,null)),t.ɵdid(73,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(75,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(77,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(80,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,13,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,2,"label",[["for","cardExpYear"]],null,null,null,null,null)),(n()(),t.ɵted(87,null,["",""])),t.ɵppd(88,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,6,"input",[["class","form-control"],["id","cardExpYear"],["name","Card.ExpYear"],["type","text"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,91)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,91).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,91)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,91)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expYear=e)&&u);return u},null,null)),t.ɵdid(91,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(93,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(95,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(96,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,36,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,33,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","cardCode"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(110,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","cardCode"],["name","Card.Code"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,111)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,111).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,111)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,111)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.code=e)&&u);return u},null,null)),t.ɵdid(111,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(113,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(115,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(116,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(118,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(120,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleCardCode()&&t);return t},null,null)),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(124,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(125,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(128,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.code,"securityCode","Security Code")&&t);return t},null,null)),t.ɵppd(129,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(131,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Card.CardCardholderName",e.cipher.card.cardholderName);n(l,27,0,"Card.Brand",e.cipher.card.brand),n(l,32,0,e.cardBrandOptions);n(l,50,0,"Card.Number",e.cipher.card.number);n(l,53,0,"");n(l,75,0,"Card.ExpMonth",e.cipher.card.expMonth),n(l,80,0,e.cardExpMonthOptions);n(l,93,0,"Card.ExpYear",e.cipher.card.expYear);n(l,113,0,"Card.Code",e.cipher.card.code);n(l,116,0,"");n(l,124,0,"fa fa-lg",n(l,125,0,!e.showCardCode,e.showCardCode))},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"))),n(l,24,0,t.ɵnov(l,29).ngClassUntouched,t.ɵnov(l,29).ngClassTouched,t.ɵnov(l,29).ngClassPristine,t.ɵnov(l,29).ngClassDirty,t.ɵnov(l,29).ngClassValid,t.ɵnov(l,29).ngClassInvalid,t.ɵnov(l,29).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"))),n(l,47,0,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,57,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"")),n(l,69,0,t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"))),n(l,72,0,t.ɵnov(l,77).ngClassUntouched,t.ɵnov(l,77).ngClassTouched,t.ɵnov(l,77).ngClassPristine,t.ɵnov(l,77).ngClassDirty,t.ɵnov(l,77).ngClassValid,t.ɵnov(l,77).ngClassInvalid,t.ɵnov(l,77).ngClassPending),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"))),n(l,90,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019"),t.ɵnov(l,95).ngClassUntouched,t.ɵnov(l,95).ngClassTouched,t.ɵnov(l,95).ngClassPristine,t.ɵnov(l,95).ngClassDirty,t.ɵnov(l,95).ngClassValid,t.ɵnov(l,95).ngClassInvalid,t.ɵnov(l,95).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"))),n(l,110,0,t.ɵinlineInterpolate(1,"",e.showCardCode?"text":"password",""),t.ɵnov(l,115).ngClassUntouched,t.ɵnov(l,115).ngClassTouched,t.ɵnov(l,115).ngClassPristine,t.ɵnov(l,115).ngClassDirty,t.ɵnov(l,115).ngClassValid,t.ɵnov(l,115).ngClassInvalid,t.ɵnov(l,115).ngClassPending),n(l,120,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,128,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),""))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,289,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,16,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","idTitle"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,9,"select",[["class","form-control"],["id","idTitle"],["name","Identity.Title"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,11).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.title=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(18,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,43,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","idFirstName"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,5,"input",[["class","form-control"],["id","idFirstName"],["name","Identity.FirstName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.firstName=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(36,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","idMiddleName"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"input",[["class","form-control"],["id","idMiddleName"],["name","Identity.MiddleName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.middleName=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","idLastName"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,5,"input",[["class","form-control"],["id","idLastName"],["name","Identity.LastName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.lastName=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(62,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(64,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,2,"label",[["for","idUsername"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["",""])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idUsername"],["name","Identity.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,77)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,77).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,77)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,77)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.username=e)&&u);return u},null,null)),t.ɵdid(77,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(79,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(81,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(82,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"label",[["for","idCompany"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["",""])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,5,"input",[["class","form-control"],["id","idCompany"],["name","Identity.Company"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,92)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,92).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,92)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,92)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.company=e)&&u);return u},null,null)),t.ɵdid(92,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(94,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(96,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,46,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","idSsn"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idSsn"],["name","Identity.SSN"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,109)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,109).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,109)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,109)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.ssn=e)&&u);return u},null,null)),t.ɵdid(109,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(111,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(113,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(114,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(117,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(119,0,null,null,2,"label",[["for","idPassportNumber"]],null,null,null,null,null)),(n()(),t.ɵted(120,null,["",""])),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idPassportNumber"],["name","Identity.PassportNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,124)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,124).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,124)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,124)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.passportNumber=e)&&u);return u},null,null)),t.ɵdid(124,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(126,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(128,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(129,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(132,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(134,0,null,null,2,"label",[["for","idLicenseNumber"]],null,null,null,null,null)),(n()(),t.ɵted(135,null,["",""])),t.ɵppd(136,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(138,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idLicenseNumber"],["name","Identity.LicenseNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,139)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,139).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,139)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,139)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.licenseNumber=e)&&u);return u},null,null)),t.ɵdid(139,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(141,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(143,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(144,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(148,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(150,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(152,0,null,null,2,"label",[["for","idEmail"]],null,null,null,null,null)),(n()(),t.ɵted(153,null,["",""])),t.ɵppd(154,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(156,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idEmail"],["name","Identity.Email"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,157)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,157).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,157)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,157)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.email=e)&&u);return u},null,null)),t.ɵdid(157,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(159,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(161,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(162,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(165,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(167,0,null,null,2,"label",[["for","idPhone"]],null,null,null,null,null)),(n()(),t.ɵted(168,null,["",""])),t.ɵppd(169,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(171,0,null,null,5,"input",[["class","form-control"],["id","idPhone"],["name","Identity.Phone"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,172)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,172).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,172)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,172)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.phone=e)&&u);return u},null,null)),t.ɵdid(172,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(174,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(176,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(180,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(182,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(184,0,null,null,2,"label",[["for","idAddress1"]],null,null,null,null,null)),(n()(),t.ɵted(185,null,["",""])),t.ɵppd(186,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(188,0,null,null,5,"input",[["class","form-control"],["id","idAddress1"],["name","Identity.Address1"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,189)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,189).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,189)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,189)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address1=e)&&u);return u},null,null)),t.ɵdid(189,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(191,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(193,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(196,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(198,0,null,null,2,"label",[["for","idAddress2"]],null,null,null,null,null)),(n()(),t.ɵted(199,null,["",""])),t.ɵppd(200,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(202,0,null,null,5,"input",[["class","form-control"],["id","idAddress2"],["name","Identity.Address2"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,203)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,203).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,203)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,203)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address2=e)&&u);return u},null,null)),t.ɵdid(203,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(205,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(207,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(211,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(213,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(215,0,null,null,2,"label",[["for","idAddress3"]],null,null,null,null,null)),(n()(),t.ɵted(216,null,["",""])),t.ɵppd(217,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(219,0,null,null,5,"input",[["class","form-control"],["id","idAddress3"],["name","Identity.Address3"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,220)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,220).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,220)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,220)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address3=e)&&u);return u},null,null)),t.ɵdid(220,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(222,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(224,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(227,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(229,0,null,null,2,"label",[["for","idCity"]],null,null,null,null,null)),(n()(),t.ɵted(230,null,["",""])),t.ɵppd(231,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(233,0,null,null,5,"input",[["class","form-control"],["id","idCity"],["name","Identity.City"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,234)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,234).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,234)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,234)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.city=e)&&u);return u},null,null)),t.ɵdid(234,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(236,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(238,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(242,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(244,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(246,0,null,null,2,"label",[["for","idState"]],null,null,null,null,null)),(n()(),t.ɵted(247,null,["",""])),t.ɵppd(248,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(250,0,null,null,5,"input",[["class","form-control"],["id","idState"],["name","Identity.State"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,251)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,251).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,251)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,251)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.state=e)&&u);return u},null,null)),t.ɵdid(251,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(253,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(255,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(258,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(260,0,null,null,2,"label",[["for","idPostalCode"]],null,null,null,null,null)),(n()(),t.ɵted(261,null,["",""])),t.ɵppd(262,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(264,0,null,null,5,"input",[["class","form-control"],["id","idPostalCode"],["name","Identity.PostalCode"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,265)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,265).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,265)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,265)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.postalCode=e)&&u);return u},null,null)),t.ɵdid(265,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(267,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(269,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(273,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(275,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(277,0,null,null,2,"label",[["for","idCountry"]],null,null,null,null,null)),(n()(),t.ɵted(278,null,["",""])),t.ɵppd(279,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(281,0,null,null,5,"input",[["class","form-control"],["id","idCountry"],["name","Identity.Country"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,282)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,282).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,282)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,282)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.country=e)&&u);return u},null,null)),t.ɵdid(282,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(284,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(286,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Identity.Title",e.cipher.identity.title),n(l,18,0,e.identityTitleOptions);n(l,34,0,"Identity.FirstName",e.cipher.identity.firstName);n(l,48,0,"Identity.MiddleName",e.cipher.identity.middleName);n(l,62,0,"Identity.LastName",e.cipher.identity.lastName);n(l,79,0,"Identity.Username",e.cipher.identity.username);n(l,82,0,"");n(l,94,0,"Identity.Company",e.cipher.identity.company);n(l,111,0,"Identity.SSN",e.cipher.identity.ssn);n(l,114,0,"");n(l,126,0,"Identity.PassportNumber",e.cipher.identity.passportNumber);n(l,129,0,"");n(l,141,0,"Identity.LicenseNumber",e.cipher.identity.licenseNumber);n(l,144,0,"");n(l,159,0,"Identity.Email",e.cipher.identity.email);n(l,162,0,"");n(l,174,0,"Identity.Phone",e.cipher.identity.phone);n(l,191,0,"Identity.Address1",e.cipher.identity.address1);n(l,205,0,"Identity.Address2",e.cipher.identity.address2);n(l,222,0,"Identity.Address3",e.cipher.identity.address3);n(l,236,0,"Identity.City",e.cipher.identity.city);n(l,253,0,"Identity.State",e.cipher.identity.state);n(l,267,0,"Identity.PostalCode",e.cipher.identity.postalCode);n(l,284,0,"Identity.Country",e.cipher.identity.country)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"))),n(l,59,0,t.ɵnov(l,64).ngClassUntouched,t.ɵnov(l,64).ngClassTouched,t.ɵnov(l,64).ngClassPristine,t.ɵnov(l,64).ngClassDirty,t.ɵnov(l,64).ngClassValid,t.ɵnov(l,64).ngClassInvalid,t.ɵnov(l,64).ngClassPending),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,76,0,t.ɵnov(l,81).ngClassUntouched,t.ɵnov(l,81).ngClassTouched,t.ɵnov(l,81).ngClassPristine,t.ɵnov(l,81).ngClassDirty,t.ɵnov(l,81).ngClassValid,t.ɵnov(l,81).ngClassInvalid,t.ɵnov(l,81).ngClassPending),n(l,88,0,t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"))),n(l,91,0,t.ɵnov(l,96).ngClassUntouched,t.ɵnov(l,96).ngClassTouched,t.ɵnov(l,96).ngClassPristine,t.ɵnov(l,96).ngClassDirty,t.ɵnov(l,96).ngClassValid,t.ɵnov(l,96).ngClassInvalid,t.ɵnov(l,96).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"))),n(l,108,0,t.ɵnov(l,113).ngClassUntouched,t.ɵnov(l,113).ngClassTouched,t.ɵnov(l,113).ngClassPristine,t.ɵnov(l,113).ngClassDirty,t.ɵnov(l,113).ngClassValid,t.ɵnov(l,113).ngClassInvalid,t.ɵnov(l,113).ngClassPending),n(l,120,0,t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"))),n(l,123,0,t.ɵnov(l,128).ngClassUntouched,t.ɵnov(l,128).ngClassTouched,t.ɵnov(l,128).ngClassPristine,t.ɵnov(l,128).ngClassDirty,t.ɵnov(l,128).ngClassValid,t.ɵnov(l,128).ngClassInvalid,t.ɵnov(l,128).ngClassPending),n(l,135,0,t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"))),n(l,138,0,t.ɵnov(l,143).ngClassUntouched,t.ɵnov(l,143).ngClassTouched,t.ɵnov(l,143).ngClassPristine,t.ɵnov(l,143).ngClassDirty,t.ɵnov(l,143).ngClassValid,t.ɵnov(l,143).ngClassInvalid,t.ɵnov(l,143).ngClassPending),n(l,153,0,t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,156,0,t.ɵnov(l,161).ngClassUntouched,t.ɵnov(l,161).ngClassTouched,t.ɵnov(l,161).ngClassPristine,t.ɵnov(l,161).ngClassDirty,t.ɵnov(l,161).ngClassValid,t.ɵnov(l,161).ngClassInvalid,t.ɵnov(l,161).ngClassPending),n(l,168,0,t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"))),n(l,171,0,t.ɵnov(l,176).ngClassUntouched,t.ɵnov(l,176).ngClassTouched,t.ɵnov(l,176).ngClassPristine,t.ɵnov(l,176).ngClassDirty,t.ɵnov(l,176).ngClassValid,t.ɵnov(l,176).ngClassInvalid,t.ɵnov(l,176).ngClassPending),n(l,185,0,t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"))),n(l,188,0,t.ɵnov(l,193).ngClassUntouched,t.ɵnov(l,193).ngClassTouched,t.ɵnov(l,193).ngClassPristine,t.ɵnov(l,193).ngClassDirty,t.ɵnov(l,193).ngClassValid,t.ɵnov(l,193).ngClassInvalid,t.ɵnov(l,193).ngClassPending),n(l,199,0,t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"))),n(l,202,0,t.ɵnov(l,207).ngClassUntouched,t.ɵnov(l,207).ngClassTouched,t.ɵnov(l,207).ngClassPristine,t.ɵnov(l,207).ngClassDirty,t.ɵnov(l,207).ngClassValid,t.ɵnov(l,207).ngClassInvalid,t.ɵnov(l,207).ngClassPending),n(l,216,0,t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"))),n(l,219,0,t.ɵnov(l,224).ngClassUntouched,t.ɵnov(l,224).ngClassTouched,t.ɵnov(l,224).ngClassPristine,t.ɵnov(l,224).ngClassDirty,t.ɵnov(l,224).ngClassValid,t.ɵnov(l,224).ngClassInvalid,t.ɵnov(l,224).ngClassPending),n(l,230,0,t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"))),n(l,233,0,t.ɵnov(l,238).ngClassUntouched,t.ɵnov(l,238).ngClassTouched,t.ɵnov(l,238).ngClassPristine,t.ɵnov(l,238).ngClassDirty,t.ɵnov(l,238).ngClassValid,t.ɵnov(l,238).ngClassInvalid,t.ɵnov(l,238).ngClassPending),n(l,247,0,t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"))),n(l,250,0,t.ɵnov(l,255).ngClassUntouched,t.ɵnov(l,255).ngClassTouched,t.ɵnov(l,255).ngClassPristine,t.ɵnov(l,255).ngClassDirty,t.ɵnov(l,255).ngClassValid,t.ɵnov(l,255).ngClassInvalid,t.ɵnov(l,255).ngClassPending),n(l,261,0,t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"))),n(l,264,0,t.ɵnov(l,269).ngClassUntouched,t.ɵnov(l,269).ngClassTouched,t.ɵnov(l,269).ngClassPristine,t.ɵnov(l,269).ngClassDirty,t.ɵnov(l,269).ngClassValid,t.ɵnov(l,269).ngClassInvalid,t.ɵnov(l,269).ngClassPending),n(l,278,0,t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"))),n(l,281,0,t.ɵnov(l,286).ngClassUntouched,t.ɵnov(l,286).ngClassTouched,t.ɵnov(l,286).ngClassPristine,t.ɵnov(l,286).ngClassDirty,t.ɵnov(l,286).ngClassValid,t.ɵnov(l,286).ngClassInvalid,t.ɵnov(l,286).ngClassPending)})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"")},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"]],[[8,"id",0],[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFieldValue(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(16,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(17,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"");n(l,16,0,"fa fa-lg",n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue))},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.showValue?"text":"password",""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"")),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"input",[["appTrueFalseValue",""],["falseValue","false"],["trueValue","true"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,1).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,1).onTouched()&&u);"change"===l&&(u=!1!==t.ɵnov(n,2).onHostChange(e)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(2,16384,null,0,c.TrueFalseValueDirective,[t.ElementRef,t.Renderer2],{trueValue:[0,"trueValue"],falseValue:[1,"falseValue"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.CheckboxControlValueAccessor,c.TrueFalseValueDirective]),t.ɵdid(4,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(6,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null)],function(n,l){n(l,2,0,"true","false"),n(l,4,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,6).ngClassUntouched,t.ɵnov(l,6).ngClassTouched,t.ɵnov(l,6).ngClassPristine,t.ɵnov(l,6).ngClassDirty,t.ɵnov(l,6).ngClassValid,t.ɵnov(l,6).ngClassInvalid,t.ɵnov(l,6).ngClassPending)})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,54,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,22,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/custom-fields/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.name=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(24,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,26,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,19,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,4,"div",[["class","flex-fill"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeField(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,21,0,t.ɵinlineInterpolate(1,"Field.Name",l.context.index,""),l.context.$implicit.name);n(l,24,0,""),n(l,36,0,l.context.$implicit.type===e.fieldType.Text),n(l,39,0,l.context.$implicit.type===e.fieldType.Hidden),n(l,44,0,l.context.$implicit.type===e.fieldType.Boolean)},function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,"")),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"")),n(l,18,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,29,0,t.ɵinlineInterpolate(1,"fieldValue",l.context.index,"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"))),n(l,47,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),""))})}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.fields)},null)}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","organizationId"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,9,"select",[["class","form-control"],["id","organizationId"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,15).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==o.organizationChanged()&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(22,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,17,0,"OrganizationId",e.cipher.organizationId),n(l,22,0,e.ownershipOptions)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"))),n(l,14,0,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"input",[["class","form-check-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,3).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"label",[["class","form-check-label"]],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,9,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,"")),n(l,10,0,l.context.$implicit.name)})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.collections)},null)}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,!e.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections")))})}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,2)],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"))),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium")))})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==o.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"))),n(l,6,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"")),n(l,9,0,e.cipher.passwordHistory.length)})}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n "," -\n "])),t.ɵppd(2,2),(n()(),t.ɵeld(3,0,null,null,1,"span",[["class","text-monospace ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"))),n(l,4,0,l.context.$implicit.password)})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.passwordHistory)},null)}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,18,"div",[["class","small text-muted mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",":"])),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.showRevisionDate),n(l,16,0,e.hasPasswordHistory),n(l,19,0,e.viewingPasswordHistory)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium")))})}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,96,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,20,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,14,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,14)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,14).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,14)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,14)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.name=e)&&u);return u},null,null)),t.ɵdid(14,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(15,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(18,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(20,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(24,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(29,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(33,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","notes"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"textarea",[["class","form-control"],["id","notes"],["name","Notes"],["rows","6"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.notes=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(54,null,["",""])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-2"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==o.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,[" ","\n "])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,2,"label",[["class","sr-only"],["for","addFieldType"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["",""])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,9,"select",[["class","form-control"],["id","addFieldType"],["name","AddFieldType"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,76).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,76).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.addFieldType=e)&&u);return u},null,null)),t.ɵdid(76,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(78,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(80,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(83,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(89,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(92,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,on)),t.ɵdid(95,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.editMode);n(l,15,0,"");n(l,18,0,"Name",e.cipher.name),n(l,24,0,!e.organization),n(l,29,0,e.cipher.type===e.cipherType.Login),n(l,33,0,e.cipher.type===e.cipherType.Card),n(l,37,0,e.cipher.type===e.cipherType.Identity);n(l,48,0,"Notes",e.cipher.notes),n(l,58,0,e.cipher.hasFields);n(l,78,0,"AddFieldType",e.addFieldType),n(l,83,0,e.addFieldTypeOptions),n(l,89,0,!e.editMode&&!e.organization&&e.ownershipOptions&&e.ownershipOptions.length>1),n(l,92,0,!e.editMode&&e.cipher.organizationId),n(l,95,0,e.editMode)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"))),n(l,13,0,t.ɵnov(l,15).required?"":null,t.ɵnov(l,20).ngClassUntouched,t.ɵnov(l,20).ngClassTouched,t.ɵnov(l,20).ngClassPristine,t.ɵnov(l,20).ngClassDirty,t.ɵnov(l,20).ngClassValid,t.ɵnov(l,20).ngClassInvalid,t.ɵnov(l,20).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"))),n(l,72,0,t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"))),n(l,75,0,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending)})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFavorite()&&t);return t},null,null)),t.ɵppd(1,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(4,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(5,{"fa-star":0,"fa-star-o":1}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"fa fa-lg",n(l,5,0,e.cipher.favorite,!e.cipher.favorite))},function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),""))})}function sn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,an)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,sn)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.organization),n(l,6,0,e.editMode)},null)}function cn(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵpid(0,o.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,44,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,41,"form",[["autocomplete","off"],["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,rn)),t.ɵdid(26,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(41,null,["\n ","\n "])),t.ɵppd(42,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,dn)),t.ɵdid(45,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,26,0,e.cipher),n(l,45,0,e.cipher)},function(n,l){var e=l.component;n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,e.title),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵnov(l,6).loading),n(l,32,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"))),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel")))})}function pn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-add-edit",[],null,null,null,cn,I)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=I,l.View_AddEditComponent_0=cn,l.View_AddEditComponent_Host_0=pn;var fn=t.ɵccf("app-vault-add-edit",v.AddEditComponent,pn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=fn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(4),i=e(36),a=e(7),s=e(3),d=e(12),c=e(456),p=e(23),f=e(21),v=e(8),h=e(9),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-fw fa-lg fa-file-o"]],null,null,null,null,null))],null,null)}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-lg fa-fw fa-spin"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"a",[["href","https://help.bitwarden.com/article/attachments/#fixing-old-attachments"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-exclamation-triangle text-warning"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["reuploadBtn",1]],null,3,"button",[["class","btn btn-outline-primary btn-sm m-0 py-0 px-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reupload(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵdid(8,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,8,0,l.component.reuploadPromises[l.parent.context.$implicit.id])},function(n,l){n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"")),n(l,7,0,t.ɵnov(l,7).loading),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(5,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(8,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==o.download(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(16,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(20,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,12,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,[["deleteBtn",1]],null,9,"button",[["appStopClick",""],["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(31,16384,null,0,i.StopClickDirective,[],null,null),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!l.context.$implicit.downloading),n(l,8,0,l.context.$implicit.downloading),n(l,20,0,e.showFixOldAttachments(l.context.$implicit)),n(l,30,0,e.deletePromises[l.context.$implicit.id])},function(n,l){n(l,17,0,l.context.$implicit.fileName),n(l,24,0,l.context.$implicit.sizeName),n(l,29,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading),n(l,36,0,!t.ɵnov(l,29).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.cipher.attachments)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),(n()(),t.ɵeld(1,0,null,null,66,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,63,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,60,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,d.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,d.ControlContainer,null,[d.NgForm]),t.ɵdid(8,16384,null,0,d.NgControlStatusGroup,[[4,d.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),t.ɵppd(15,1),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(17,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(31,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"label",[["class","sr-only"],["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(61,1),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,17,0,e.cipher),n(l,31,0,e.cipher&&e.cipher.hasAttachments)},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"))),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"))),n(l,50,0,t.ɵnov(l,5).loading),n(l,52,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"")),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"))),n(l,60,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"")),n(l,62,0,t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-attachments",[],null,null,null,_,g)),t.ɵdid(1,114688,null,0,c.AttachmentsComponent,[p.CipherService,s.I18nService,f.CryptoService,v.UserService,h.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AttachmentsComponent=g,l.View_AttachmentsComponent_0=_,l.View_AttachmentsComponent_Host_0=R;var I=t.ɵccf("app-vault-attachments",c.AttachmentsComponent,R,{cipherId:"cipherId"},{onUploadedAttachment:"onUploadedAttachment",onDeletedAttachment:"onDeletedAttachment",onReuploadedAttachment:"onReuploadedAttachment"},[]);l.AttachmentsComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(540),d=e(6),c=e(23),p=e(13),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,48,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,45,"div",[["class","modal-dialog modal-sm"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,42,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,r.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(9,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["\n ","\n "])),t.ɵppd(28,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,8,"button",[["appAutoFocus",""],["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(43,1),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,10,0,l.component.formPromise)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"deleteSelected"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"")),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"deleteSelectedItemsDesc",e.cipherIds.length))),n(l,32,0,t.ɵnov(l,5).loading),n(l,34,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"")),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"delete"))),n(l,42,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"cancel")),"")),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"cancel")))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-bulk-delete",[],null,null,null,v,f)),t.ɵdid(1,49152,null,0,s.BulkDeleteComponent,[d.Angulartics2,c.CipherService,p.ToasterService,o.I18nService],null,null)],null,null)}l.RenderType_BulkDeleteComponent=f,l.View_BulkDeleteComponent_0=v,l.View_BulkDeleteComponent_Host_0=h;var g=t.ɵccf("app-vault-bulk-delete",s.BulkDeleteComponent,h,{cipherIds:"cipherIds"},{onDeleted:"onDeleted"},[]);l.BulkDeleteComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(7),r=e(3),i=e(19),a=e(18),s=e(4),d=e(541),c=e(6),p=e(23),f=e(13),v=e(55),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function m(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog modal-sm"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,23,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(29,null,["",""])),t.ɵppd(30,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,2,"label",[["for","folder"]],null,null,null,null,null)),(n()(),t.ɵted(35,null,["",""])),t.ɵppd(36,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,9,"select",[["class","form-control"],["id","folder"],["name","FolderId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,39).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,39).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.folderId=e)&&u);return u},null,null)),t.ɵdid(39,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(41,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(43,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(46,278528,null,0,s.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(59,null,["",""])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(64,1),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise);n(l,41,0,"FolderId",e.folderId),n(l,46,0,e.folders)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"moveSelected"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"")),n(l,29,0,t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"moveSelectedItemsDesc",e.cipherIds.length))),n(l,35,0,t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"folder"))),n(l,38,0,t.ɵnov(l,43).ngClassUntouched,t.ɵnov(l,43).ngClassTouched,t.ɵnov(l,43).ngClassPristine,t.ɵnov(l,43).ngClassDirty,t.ɵnov(l,43).ngClassValid,t.ɵnov(l,43).ngClassInvalid,t.ɵnov(l,43).ngClassPending),n(l,53,0,t.ɵnov(l,5).loading),n(l,55,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"")),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"save"))),n(l,63,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,63,0,n(l,64,0,t.ɵnov(l,0),"cancel")),"")),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-bulk-move",[],null,null,null,m,h)),t.ɵdid(1,114688,null,0,d.BulkMoveComponent,[c.Angulartics2,p.CipherService,f.ToasterService,r.I18nService,v.FolderService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_BulkMoveComponent=h,l.View_BulkMoveComponent_0=m,l.View_BulkMoveComponent_Host_0=y;var C=t.ɵccf("app-vault-bulk-move",d.BulkMoveComponent,y,{cipherIds:"cipherIds"},{onMoved:"onMoved"},[]);l.BulkMoveComponentNgFactory=C},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(542),p=e(6),f=e(23),v=e(13),h=e(43),g=e(8),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function _(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,91,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,88,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,85,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(19,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,43,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(29,null,["",""])),t.ɵppd(30,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(33,null,["",""])),t.ɵppd(34,4),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"label",[["for","organization"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,9,"select",[["class","form-control"],["id","organization"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,43).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,43).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.organizationId=e)&&u);"change"===l&&(u=!1!==o.filterCollections()&&u);return u},null,null)),t.ɵdid(43,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(45,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(47,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(50,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(57,null,["",""])),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(61,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(65,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(68,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,10,"button",[["class","btn btn-primary btn-submit manual"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),t.ɵdid(74,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(75,{loading:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(77,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(80,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(81,null,["",""])),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(86,1),(n()(),t.ɵted(87,null,["",""])),t.ɵppd(88,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise);n(l,45,0,"OrganizationId",e.organizationId),n(l,50,0,e.organizations),n(l,61,0,e.collections&&e.collections.length),n(l,65,0,!e.collections||!e.collections.length),n(l,68,0,e.collections&&e.collections.length);n(l,74,0,"btn btn-primary btn-submit manual",n(l,75,0,t.ɵnov(l,5).loading))},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"shareSelected"))),n(l,18,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,18,0,n(l,19,0,t.ɵnov(l,0),"close")),"")),n(l,29,0,t.ɵunv(l,29,0,n(l,30,0,t.ɵnov(l,0),"shareManyDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"shareSelectedItemsCountDesc",e.ciphers.length,e.shareableCiphers.length,e.nonShareableCount))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"organization"))),n(l,42,0,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,57,0,t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l,0),"collections"))),n(l,73,0,t.ɵnov(l,5).loading||!e.canSave),n(l,77,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l,0),"loading")),"")),n(l,81,0,t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l,0),"save"))),n(l,85,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l,0),"cancel")),"")),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l,0),"cancel")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-bulk-share",[],null,null,null,_,m)),t.ɵdid(1,245760,null,0,c.BulkShareComponent,[p.Angulartics2,f.CipherService,v.ToasterService,a.I18nService,h.CollectionService,g.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_BulkShareComponent=m,l.View_BulkShareComponent_0=_,l.View_BulkShareComponent_Host_0=R;var I=t.ɵccf("app-vault-bulk-share",c.BulkShareComponent,R,{ciphers:"ciphers",organizationId:"organizationId"},{onShared:"onShared"},[]);l.BulkShareComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(457),p=e(43),f=e(9),v=e(23),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function w(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,21,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(42,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(46,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.cipher),n(l,42,0,e.collections&&e.collections.length),n(l,46,0,!e.collections||!e.collections.length),n(l,49,0,e.collections&&e.collections.length)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"))),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-collections",[],null,null,null,w,h)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=h,l.View_CollectionsComponent_0=w,l.View_CollectionsComponent_Host_0=S;var _=t.ɵccf("app-vault-collections",c.CollectionsComponent,S,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=_},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(49),p=e(551),f=e(5),v=e(6),h=e(13),g=e(21),m=e(20),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,68,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,65,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,62,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,24,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,8,"input",[["appAutoFocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(59,null,["",""])),t.ɵppd(60,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deauthorizeSessions"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deauthorizeSessionsDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deauthorizeSessionsWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,53,0,t.ɵnov(l,5).loading),n(l,55,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l,0),"loading")),"")),n(l,59,0,t.ɵunv(l,59,0,n(l,60,0,t.ɵnov(l,0),"deauthorizeSessions"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l,0),"close")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-deauthorize-sessions",[],null,null,null,C,y)),t.ɵdid(1,49152,null,0,p.DeauthorizeSessionsComponent,[f.ApiService,o.I18nService,v.Angulartics2,h.ToasterService,g.CryptoService,m.MessagingService],null,null)],null,null)}l.RenderType_DeauthorizeSessionsComponent=y,l.View_DeauthorizeSessionsComponent_0=C,l.View_DeauthorizeSessionsComponent_Host_0=b;var w=t.ɵccf("app-deauthorize-sessions",p.DeauthorizeSessionsComponent,b,{},{},[]);l.DeauthorizeSessionsComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(552),v=e(5),h=e(6),g=e(13),m=e(21),y=e(20),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(49,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"");n(l,49,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteAccount"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteAccountDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteAccountWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteAccount"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-account",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteAccountComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService],null,null)],null,null)}l.RenderType_DeleteAccountComponent=C,l.View_DeleteAccountComponent_0=b,l.View_DeleteAccountComponent_Host_0=w;var S=t.ɵccf("app-delete-account",f.DeleteAccountComponent,w,{},{},[]);l.DeleteAccountComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(594),v=e(5),h=e(6),g=e(13),m=e(21),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(49,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"");n(l,49,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"deleteOrganization"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"deleteOrganizationDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"deleteOrganizationWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"deleteOrganization"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-delete-organization",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.DeleteOrganizationComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_DeleteOrganizationComponent=C,l.View_DeleteOrganizationComponent_0=b,l.View_DeleteOrganizationComponent_Host_0=w;var S=t.ɵccf("app-delete-organization",f.DeleteOrganizationComponent,w,{},{},[]);l.DeleteOrganizationComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(7),i=e(3),a=e(12),s=e(4),d=e(543),c=e(55),p=e(9),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,r.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,64,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,61,"div",[["class","modal-dialog modal-sm"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,58,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,a.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,a.ControlContainer,null,[a.NgForm]),t.ɵdid(8,16384,null,0,a.NgControlStatusGroup,[[4,a.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,14,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,31)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,31).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,31)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,31)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.folder.name=e)&&u);return u},null,null)),t.ɵdid(31,16384,null,0,a.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,a.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(32,16384,null,0,a.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,a.NG_VALIDATORS,function(n){return[n]},[a.RequiredValidator]),t.ɵprd(1024,null,a.NG_VALUE_ACCESSOR,function(n){return[n]},[a.DefaultValueAccessor]),t.ɵdid(35,671744,null,0,a.NgModel,[[2,a.ControlContainer],[6,a.NG_VALIDATORS],[8,null],[6,a.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,a.NgControl,null,[a.NgModel]),t.ɵdid(37,16384,null,0,a.NgControlStatus,[[4,a.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,22,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(53,1),(n()(),t.ɵted(54,null,["",""])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(60,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"");n(l,35,0,"Name",e.folder.name),n(l,60,0,e.editMode)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,e.title),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"")),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l,0),"name"))),n(l,30,0,t.ɵnov(l,32).required?"":null,t.ɵnov(l,37).ngClassUntouched,t.ɵnov(l,37).ngClassTouched,t.ɵnov(l,37).ngClassPristine,t.ɵnov(l,37).ngClassDirty,t.ɵnov(l,37).ngClassValid,t.ɵnov(l,37).ngClassInvalid,t.ɵnov(l,37).ngClassPending),n(l,42,0,t.ɵnov(l,5).loading),n(l,44,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"loading")),"")),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"save"))),n(l,52,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"cancel")),"")),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"cancel")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-folder-add-edit",[],null,null,null,h,f)),t.ɵdid(1,114688,null,0,d.FolderAddEditComponent,[c.FolderService,i.I18nService,p.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_FolderAddEditComponent=f,l.View_FolderAddEditComponent_0=h,l.View_FolderAddEditComponent_Host_0=g;var m=t.ɵccf("app-folder-add-edit",d.FolderAddEditComponent,g,{folderId:"folderId"},{onSavedFolder:"onSavedFolder",onDeletedFolder:"onDeletedFolder"},[]);l.FolderAddEditComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(97),o=t.ɵcrt({encapsulation:2,styles:[],data:{}});function r(n){return t.ɵvid(0,[(n()(),t.ɵand(0,null,null,0))],null,null)}function i(n){return t.ɵvid(0,[t.ɵqud(402653184,1,{container:0}),(n()(),t.ɵand(16777216,[[1,3],["container",2]],null,0,null,r))],null,null)}function a(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-modal",[],null,null,null,i,o)),t.ɵdid(1,180224,null,0,u.ModalComponent,[t.ComponentFactoryResolver],null,null)],null,null)}l.RenderType_ModalComponent=o,l.View_ModalComponent_0=i,l.View_ModalComponent_Host_0=a;var s=t.ɵccf("app-modal",u.ModalComponent,a,{},{onClose:"onClose",onClosed:"onClosed",onShow:"onShow",onShown:"onShown"},[]);l.ModalComponentNgFactory=s},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(4),r=e(36),i=e(596),a=e(49),s=e(19),d=e(18),c=e(597),p=e(7),f=e(3),v=e(475),h=e(23),g=e(55),m=e(9),y=e(104),C=e(30),b=e(8),w=e(43),S=e(222),_=e(61),R=e(5),I=e(20),k=t.ɵcrt({encapsulation:2,styles:[],data:{}});function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","type"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,9,"select",[["class","form-control"],["id","type"],["name","Type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,9).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.type=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(11,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(13,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(16,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,11,0,"Type",e.cipher.type),n(l,16,0,e.typeOptions)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"whatTypeOfItem"))),n(l,8,0,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[["for","folder"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,9,"select",[["class","form-control"],["id","folder"],["name","FolderId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,7).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,7).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.folderId=e)&&u);return u},null,null)),t.ɵdid(7,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(9,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(11,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(14,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,9,0,"FolderId",e.cipher.folderId),n(l,14,0,e.folders)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"folder"))),n(l,6,0,t.ɵnov(l,11).ngClassUntouched,t.ɵnov(l,11).ngClassTouched,t.ɵnov(l,11).ngClassPristine,t.ɵnov(l,11).ngClassDirty,t.ɵnov(l,11).ngClassValid,t.ɵnov(l,11).ngClassInvalid,t.ɵnov(l,11).ngClassPending)})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.premiumRequired()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"premium")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["appStopClick",""],["class","badge badge-primary ml-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.upgradeOrganization()&&u);return u},null,null)),t.ɵdid(1,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],null,function(n,l){n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent.parent,0),"upgrade")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"img",[["class","ml-2"],["src","images/totp-countdown.png"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,6,0,!e.organization&&!e.cipher.organizationId&&!e.canAccessPremium),n(l,9,0,e.organization&&!e.organization.useTotp||!e.organization&&!e.canAccessPremium&&e.cipher.organizationId&&!e.cipher.organizationUseTotp)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),""))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,29,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,16,"span",[["class","totp-countdown mr-3 ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"span",[["class","totp-sec"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,10,":svg:svg",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,7,":svg:g",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,":svg:circle",[["class","totp-circle inner"],["cx","16"],["cy","16"],["r","12.6"]],null,null,null,null,null)),t.ɵdid(12,278528,null,0,o.NgStyle,[t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngStyle:[0,"ngStyle"]},null),t.ɵpod(13,{"stroke-dashoffset.px":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,":svg:circle",[["class","totp-circle outer"],["cx","16"],["cy","16"],["r","14"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"span",[["class","totp-code mr-2"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(22,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,4,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.totpCode,"verificationCodeTotp","TOTP")&&t);return t},null,null)),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,0,"i",[["class","fa fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,n(l,13,0,l.component.totpDash))},function(n,l){var e=l.component;n(l,5,0,e.totpSec),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeTotp")),"")),n(l,22,0,e.totpCodeFormatted),n(l,24,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent.parent.parent,0),"copyVerificationCode")),""))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,72,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,32,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,25,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,7,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,12)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,12).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,12)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,12)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.uri=e)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(14,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(16,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(17,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,13,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.launch(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-share"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.context.$implicit.uri,"uri","URI")&&t);return t},null,null)),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,34,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(42,null,["\n ","\n "])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/uri-match-detection/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,18,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,9,"select",[["class","form-control"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,55).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,55).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.match=e)&&u);"change"===l&&(u=!1!==o.loginUriMatchChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(55,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(57,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(59,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(62,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeUri(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,14,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Uri"),l.context.$implicit.uri);n(l,17,0,""),n(l,57,0,t.ɵinlineInterpolate(1,"Login.Uris[",l.context.index,"].Match"),l.context.$implicit.match),n(l,62,0,e.uriMatchOptions)},function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,"")),n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent.parent.parent.parent,0),"uriPosition",l.context.index+1))),n(l,11,0,t.ɵinlineInterpolate(1,"loginUri",l.context.index,""),t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,1,n(l,18,0,t.ɵnov(l.parent.parent.parent.parent,0),"ex"))," https://google.com"),t.ɵnov(l,16).ngClassUntouched,t.ɵnov(l,16).ngClassTouched,t.ɵnov(l,16).ngClassPristine,t.ɵnov(l,16).ngClassDirty,t.ɵnov(l,16).ngClassValid,t.ɵnov(l,16).ngClassInvalid,t.ɵnov(l,16).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent.parent.parent,0),"launch")),""),!l.context.$implicit.canLaunch),n(l,28,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyUri")),"")),n(l,41,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,"")),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent.parent.parent,0),"matchDetection"))),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent.parent.parent,0),"learnMore")),"")),n(l,54,0,t.ɵinlineInterpolate(1,"loginUriMatch",l.context.index,""),t.ɵnov(l,59).ngClassUntouched,t.ɵnov(l,59).ngClassTouched,t.ɵnov(l,59).ngClassPristine,t.ɵnov(l,59).ngClassDirty,t.ɵnov(l,59).ngClassValid,t.ɵnov(l,59).ngClassInvalid,t.ɵnov(l,59).ngClassPending),n(l,65,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l.parent.parent.parent.parent,0),"remove")),""))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.login.uris)},null)}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,129,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,87,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","loginUsername"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","loginUsername"],["name","Login.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,13)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,13)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,13)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.username=e)&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(18,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.username,"username","Username")&&t);return t},null,null)),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,57,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,26,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"label",[["for","loginPassword"]],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,19,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,5,"a",[["appStopClick",""],["class","d-block mr-2"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,42).onClick(e)&&u);"click"===l&&(u=!1!==o.generatePassword()&&u);return u},null,null)),t.ɵdid(42,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-refresh"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,[["checkPasswordBtn",1]],null,9,"a",[["appStopClick",""],["class","d-block"],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,50).onClick(e)&&u);"click"===l&&(u=!1!==o.checkPassword()&&u);return u},null,null)),t.ɵdid(49,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(50,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(51,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,0,"i",[["class","fa fa-lg fa-fw fa-check-circle"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,1,"i",[["class","fa fa-lg fa-fw fa-spinner fa-spin"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","loginPassword"],["name","Login.Password"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,64)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,64).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,64)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,64)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.password=e)&&u);return u},null,null)),t.ɵdid(64,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(66,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(68,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(69,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(73,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.togglePassword()&&t);return t},null,null)),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(77,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(78,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.login.password,"password","Password")&&t);return t},null,null)),t.ɵppd(82,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,27,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(95,0,null,null,2,"label",[["for","loginTotp"]],null,null,null,null,null)),(n()(),t.ɵted(96,null,["",""])),t.ɵppd(97,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(99,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control text-monospace"],["id","loginTotp"],["name","Login.Totp"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,100)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,100).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,100)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,100)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.login.totp=e)&&u);return u},null,null)),t.ɵdid(100,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(102,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(104,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(105,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,9,"div",[["class","col-6 form-group totp d-flex align-items-end"]],null,null,null,null,null)),t.ɵdid(109,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(110,{low:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(113,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(116,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(121,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-3"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,124).onClick(e)&&u);"click"===l&&(u=!1!==o.addUri()&&u);return u},null,null)),t.ɵdid(124,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(126,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(127,null,[" ","\n "])),t.ɵppd(128,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,15,0,"Login.Username",e.cipher.login.username);n(l,18,0,""),n(l,49,0,e.checkPasswordPromise);n(l,66,0,"Login.Password",e.cipher.login.password);n(l,69,0,"");n(l,77,0,"fa fa-lg",n(l,78,0,!e.showPassword,e.showPassword));n(l,102,0,"Login.Totp",e.cipher.login.totp);n(l,105,0,"");n(l,109,0,"col-6 form-group totp d-flex align-items-end",n(l,110,0,e.totpLow)),n(l,113,0,!e.cipher.login.totp||!e.totpCode),n(l,116,0,e.cipher.login.totp&&e.totpCode),n(l,121,0,e.cipher.login.hasUris)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,12,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,22,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"copyUsername")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l.parent.parent,0),"password"))),n(l,41,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,41,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"generatePassword")),"")),n(l,48,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,51,0,t.ɵnov(l.parent.parent,0),"checkPassword")),"")),n(l,53,0,t.ɵnov(l,48).loading),n(l,55,0,!t.ɵnov(l,48).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,55,1,n(l,56,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,63,0,t.ɵinlineInterpolate(1,"",e.showPassword?"text":"password",""),t.ɵnov(l,68).ngClassUntouched,t.ɵnov(l,68).ngClassTouched,t.ɵnov(l,68).ngClassPristine,t.ɵnov(l,68).ngClassDirty,t.ɵnov(l,68).ngClassValid,t.ɵnov(l,68).ngClassInvalid,t.ɵnov(l,68).ngClassPending),n(l,73,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,81,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,81,0,n(l,82,0,t.ɵnov(l.parent.parent,0),"copyPassword")),"")),n(l,96,0,t.ɵunv(l,96,0,n(l,97,0,t.ɵnov(l.parent.parent,0),"authenticatorKeyTotp"))),n(l,99,0,t.ɵnov(l,104).ngClassUntouched,t.ɵnov(l,104).ngClassTouched,t.ɵnov(l,104).ngClassPristine,t.ɵnov(l,104).ngClassDirty,t.ɵnov(l,104).ngClassValid,t.ɵnov(l,104).ngClassInvalid,t.ɵnov(l,104).ngClassPending),n(l,127,0,t.ɵunv(l,127,0,n(l,128,0,t.ɵnov(l.parent.parent,0),"newUri")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,137,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,33,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","cardCardholderName"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"input",[["class","form-control"],["id","cardCardholderName"],["name","Card.CardCardholderName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.cardholderName=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,16,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","cardBrand"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,9,"select",[["class","form-control"],["id","cardBrand"],["name","Card.Brand"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,25).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.brand=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(27,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(29,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,L)),t.ɵdid(32,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,61,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,25,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","cardNumber"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","cardNumber"],["name","Card.Number"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,48)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,48).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,48)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,48)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.number=e)&&u);return u},null,null)),t.ɵdid(48,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(52,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(53,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.number,"number","Number")&&t);return t},null,null)),t.ɵppd(58,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,16,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,2,"label",[["for","cardExpMonth"]],null,null,null,null,null)),(n()(),t.ɵted(69,null,["",""])),t.ɵppd(70,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,9,"select",[["class","form-control"],["id","cardExpMonth"],["name","Card.ExpMonth"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,73).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,73).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expMonth=e)&&u);return u},null,null)),t.ɵdid(73,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(75,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(77,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,z)),t.ɵdid(80,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,13,"div",[["class","col form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,2,"label",[["for","cardExpYear"]],null,null,null,null,null)),(n()(),t.ɵted(87,null,["",""])),t.ɵppd(88,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,6,"input",[["class","form-control"],["id","cardExpYear"],["name","Card.ExpYear"],["type","text"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,91)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,91).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,91)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,91)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.expYear=e)&&u);return u},null,null)),t.ɵdid(91,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(93,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(95,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵppd(96,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,36,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,33,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","cardCode"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(110,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"],["id","cardCode"],["name","Card.Code"]],[[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,111)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,111).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,111)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,111)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.card.code=e)&&u);return u},null,null)),t.ɵdid(111,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(113,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(115,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(116,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(118,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(120,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleCardCode()&&t);return t},null,null)),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(124,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(125,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(128,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(u.cipher.card.code,"securityCode","Security Code")&&t);return t},null,null)),t.ɵppd(129,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(131,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Card.CardCardholderName",e.cipher.card.cardholderName);n(l,27,0,"Card.Brand",e.cipher.card.brand),n(l,32,0,e.cardBrandOptions);n(l,50,0,"Card.Number",e.cipher.card.number);n(l,53,0,"");n(l,75,0,"Card.ExpMonth",e.cipher.card.expMonth),n(l,80,0,e.cardExpMonthOptions);n(l,93,0,"Card.ExpYear",e.cipher.card.expYear);n(l,113,0,"Card.Code",e.cipher.card.code);n(l,116,0,"");n(l,124,0,"fa fa-lg",n(l,125,0,!e.showCardCode,e.showCardCode))},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"cardholderName"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"brand"))),n(l,24,0,t.ɵnov(l,29).ngClassUntouched,t.ɵnov(l,29).ngClassTouched,t.ɵnov(l,29).ngClassPristine,t.ɵnov(l,29).ngClassDirty,t.ɵnov(l,29).ngClassValid,t.ɵnov(l,29).ngClassInvalid,t.ɵnov(l,29).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"number"))),n(l,47,0,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,57,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,57,0,n(l,58,0,t.ɵnov(l.parent.parent,0),"copyNumber")),"")),n(l,69,0,t.ɵunv(l,69,0,n(l,70,0,t.ɵnov(l.parent.parent,0),"expirationMonth"))),n(l,72,0,t.ɵnov(l,77).ngClassUntouched,t.ɵnov(l,77).ngClassTouched,t.ɵnov(l,77).ngClassPristine,t.ɵnov(l,77).ngClassDirty,t.ɵnov(l,77).ngClassValid,t.ɵnov(l,77).ngClassInvalid,t.ɵnov(l,77).ngClassPending),n(l,87,0,t.ɵunv(l,87,0,n(l,88,0,t.ɵnov(l.parent.parent,0),"expirationYear"))),n(l,90,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,96,0,t.ɵnov(l.parent.parent,0),"ex"))," 2019"),t.ɵnov(l,95).ngClassUntouched,t.ɵnov(l,95).ngClassTouched,t.ɵnov(l,95).ngClassPristine,t.ɵnov(l,95).ngClassDirty,t.ɵnov(l,95).ngClassValid,t.ɵnov(l,95).ngClassInvalid,t.ɵnov(l,95).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"securityCode"))),n(l,110,0,t.ɵinlineInterpolate(1,"",e.showCardCode?"text":"password",""),t.ɵnov(l,115).ngClassUntouched,t.ɵnov(l,115).ngClassTouched,t.ɵnov(l,115).ngClassPristine,t.ɵnov(l,115).ngClassDirty,t.ɵnov(l,115).ngClassValid,t.ɵnov(l,115).ngClassInvalid,t.ɵnov(l,115).ngClassPending),n(l,120,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"toggleVisibility")),"")),n(l,128,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,128,0,n(l,129,0,t.ɵnov(l.parent.parent,0),"securityCode")),""))})}function j(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,289,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,16,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["for","idTitle"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,9,"select",[["class","form-control"],["id","idTitle"],["name","Identity.Title"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,11).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.title=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,j)),t.ɵdid(18,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,43,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","idFirstName"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,5,"input",[["class","form-control"],["id","idFirstName"],["name","Identity.FirstName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.firstName=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(34,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(36,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","idMiddleName"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"input",[["class","form-control"],["id","idMiddleName"],["name","Identity.MiddleName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.middleName=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"label",[["for","idLastName"]],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,5,"input",[["class","form-control"],["id","idLastName"],["name","Identity.LastName"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,60)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,60).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,60)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,60)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.lastName=e)&&u);return u},null,null)),t.ɵdid(60,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(62,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(64,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,2,"label",[["for","idUsername"]],null,null,null,null,null)),(n()(),t.ɵted(73,null,["",""])),t.ɵppd(74,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idUsername"],["name","Identity.Username"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,77)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,77).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,77)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,77)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.username=e)&&u);return u},null,null)),t.ɵdid(77,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(79,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(81,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(82,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,12,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"label",[["for","idCompany"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["",""])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(91,0,null,null,5,"input",[["class","form-control"],["id","idCompany"],["name","Identity.Company"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,92)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,92).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,92)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,92)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.company=e)&&u);return u},null,null)),t.ɵdid(92,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(94,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(96,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(100,0,null,null,46,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(104,0,null,null,2,"label",[["for","idSsn"]],null,null,null,null,null)),(n()(),t.ɵted(105,null,["",""])),t.ɵppd(106,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(108,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idSsn"],["name","Identity.SSN"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,109)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,109).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,109)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,109)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.ssn=e)&&u);return u},null,null)),t.ɵdid(109,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(111,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(113,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(114,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(117,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(119,0,null,null,2,"label",[["for","idPassportNumber"]],null,null,null,null,null)),(n()(),t.ɵted(120,null,["",""])),t.ɵppd(121,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(123,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idPassportNumber"],["name","Identity.PassportNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,124)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,124).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,124)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,124)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.passportNumber=e)&&u);return u},null,null)),t.ɵdid(124,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(126,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(128,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(129,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(132,0,null,null,13,"div",[["class","col-4 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(134,0,null,null,2,"label",[["for","idLicenseNumber"]],null,null,null,null,null)),(n()(),t.ɵted(135,null,["",""])),t.ɵppd(136,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(138,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idLicenseNumber"],["name","Identity.LicenseNumber"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,139)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,139).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,139)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,139)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.licenseNumber=e)&&u);return u},null,null)),t.ɵdid(139,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(141,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(143,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(144,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(148,0,null,null,30,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(150,0,null,null,13,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(152,0,null,null,2,"label",[["for","idEmail"]],null,null,null,null,null)),(n()(),t.ɵted(153,null,["",""])),t.ɵppd(154,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(156,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["id","idEmail"],["name","Identity.Email"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,157)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,157).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,157)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,157)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.email=e)&&u);return u},null,null)),t.ɵdid(157,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(159,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(161,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(162,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(165,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(167,0,null,null,2,"label",[["for","idPhone"]],null,null,null,null,null)),(n()(),t.ɵted(168,null,["",""])),t.ɵppd(169,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(171,0,null,null,5,"input",[["class","form-control"],["id","idPhone"],["name","Identity.Phone"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,172)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,172).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,172)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,172)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.phone=e)&&u);return u},null,null)),t.ɵdid(172,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(174,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(176,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(180,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(182,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(184,0,null,null,2,"label",[["for","idAddress1"]],null,null,null,null,null)),(n()(),t.ɵted(185,null,["",""])),t.ɵppd(186,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(188,0,null,null,5,"input",[["class","form-control"],["id","idAddress1"],["name","Identity.Address1"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,189)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,189).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,189)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,189)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address1=e)&&u);return u},null,null)),t.ɵdid(189,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(191,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(193,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(196,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(198,0,null,null,2,"label",[["for","idAddress2"]],null,null,null,null,null)),(n()(),t.ɵted(199,null,["",""])),t.ɵppd(200,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(202,0,null,null,5,"input",[["class","form-control"],["id","idAddress2"],["name","Identity.Address2"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,203)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,203).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,203)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,203)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address2=e)&&u);return u},null,null)),t.ɵdid(203,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(205,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(207,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(211,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(213,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(215,0,null,null,2,"label",[["for","idAddress3"]],null,null,null,null,null)),(n()(),t.ɵted(216,null,["",""])),t.ɵppd(217,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(219,0,null,null,5,"input",[["class","form-control"],["id","idAddress3"],["name","Identity.Address3"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,220)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,220).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,220)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,220)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.address3=e)&&u);return u},null,null)),t.ɵdid(220,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(222,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(224,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(227,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(229,0,null,null,2,"label",[["for","idCity"]],null,null,null,null,null)),(n()(),t.ɵted(230,null,["",""])),t.ɵppd(231,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(233,0,null,null,5,"input",[["class","form-control"],["id","idCity"],["name","Identity.City"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,234)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,234).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,234)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,234)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.city=e)&&u);return u},null,null)),t.ɵdid(234,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(236,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(238,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(242,0,null,null,29,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(244,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(246,0,null,null,2,"label",[["for","idState"]],null,null,null,null,null)),(n()(),t.ɵted(247,null,["",""])),t.ɵppd(248,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(250,0,null,null,5,"input",[["class","form-control"],["id","idState"],["name","Identity.State"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,251)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,251).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,251)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,251)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.state=e)&&u);return u},null,null)),t.ɵdid(251,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(253,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(255,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(258,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(260,0,null,null,2,"label",[["for","idPostalCode"]],null,null,null,null,null)),(n()(),t.ɵted(261,null,["",""])),t.ɵppd(262,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(264,0,null,null,5,"input",[["class","form-control"],["id","idPostalCode"],["name","Identity.PostalCode"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,265)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,265).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,265)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,265)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.postalCode=e)&&u);return u},null,null)),t.ɵdid(265,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(267,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(269,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(273,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(275,0,null,null,12,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(277,0,null,null,2,"label",[["for","idCountry"]],null,null,null,null,null)),(n()(),t.ɵted(278,null,["",""])),t.ɵppd(279,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(281,0,null,null,5,"input",[["class","form-control"],["id","idCountry"],["name","Identity.Country"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,282)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,282).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,282)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,282)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.identity.country=e)&&u);return u},null,null)),t.ɵdid(282,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(284,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(286,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"Identity.Title",e.cipher.identity.title),n(l,18,0,e.identityTitleOptions);n(l,34,0,"Identity.FirstName",e.cipher.identity.firstName);n(l,48,0,"Identity.MiddleName",e.cipher.identity.middleName);n(l,62,0,"Identity.LastName",e.cipher.identity.lastName);n(l,79,0,"Identity.Username",e.cipher.identity.username);n(l,82,0,"");n(l,94,0,"Identity.Company",e.cipher.identity.company);n(l,111,0,"Identity.SSN",e.cipher.identity.ssn);n(l,114,0,"");n(l,126,0,"Identity.PassportNumber",e.cipher.identity.passportNumber);n(l,129,0,"");n(l,141,0,"Identity.LicenseNumber",e.cipher.identity.licenseNumber);n(l,144,0,"");n(l,159,0,"Identity.Email",e.cipher.identity.email);n(l,162,0,"");n(l,174,0,"Identity.Phone",e.cipher.identity.phone);n(l,191,0,"Identity.Address1",e.cipher.identity.address1);n(l,205,0,"Identity.Address2",e.cipher.identity.address2);n(l,222,0,"Identity.Address3",e.cipher.identity.address3);n(l,236,0,"Identity.City",e.cipher.identity.city);n(l,253,0,"Identity.State",e.cipher.identity.state);n(l,267,0,"Identity.PostalCode",e.cipher.identity.postalCode);n(l,284,0,"Identity.Country",e.cipher.identity.country)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"title"))),n(l,10,0,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"firstName"))),n(l,31,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent.parent,0),"middleName"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"lastName"))),n(l,59,0,t.ɵnov(l,64).ngClassUntouched,t.ɵnov(l,64).ngClassTouched,t.ɵnov(l,64).ngClassPristine,t.ɵnov(l,64).ngClassDirty,t.ɵnov(l,64).ngClassValid,t.ɵnov(l,64).ngClassInvalid,t.ɵnov(l,64).ngClassPending),n(l,73,0,t.ɵunv(l,73,0,n(l,74,0,t.ɵnov(l.parent.parent,0),"username"))),n(l,76,0,t.ɵnov(l,81).ngClassUntouched,t.ɵnov(l,81).ngClassTouched,t.ɵnov(l,81).ngClassPristine,t.ɵnov(l,81).ngClassDirty,t.ɵnov(l,81).ngClassValid,t.ɵnov(l,81).ngClassInvalid,t.ɵnov(l,81).ngClassPending),n(l,88,0,t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent.parent,0),"company"))),n(l,91,0,t.ɵnov(l,96).ngClassUntouched,t.ɵnov(l,96).ngClassTouched,t.ɵnov(l,96).ngClassPristine,t.ɵnov(l,96).ngClassDirty,t.ɵnov(l,96).ngClassValid,t.ɵnov(l,96).ngClassInvalid,t.ɵnov(l,96).ngClassPending),n(l,105,0,t.ɵunv(l,105,0,n(l,106,0,t.ɵnov(l.parent.parent,0),"ssn"))),n(l,108,0,t.ɵnov(l,113).ngClassUntouched,t.ɵnov(l,113).ngClassTouched,t.ɵnov(l,113).ngClassPristine,t.ɵnov(l,113).ngClassDirty,t.ɵnov(l,113).ngClassValid,t.ɵnov(l,113).ngClassInvalid,t.ɵnov(l,113).ngClassPending),n(l,120,0,t.ɵunv(l,120,0,n(l,121,0,t.ɵnov(l.parent.parent,0),"passportNumber"))),n(l,123,0,t.ɵnov(l,128).ngClassUntouched,t.ɵnov(l,128).ngClassTouched,t.ɵnov(l,128).ngClassPristine,t.ɵnov(l,128).ngClassDirty,t.ɵnov(l,128).ngClassValid,t.ɵnov(l,128).ngClassInvalid,t.ɵnov(l,128).ngClassPending),n(l,135,0,t.ɵunv(l,135,0,n(l,136,0,t.ɵnov(l.parent.parent,0),"licenseNumber"))),n(l,138,0,t.ɵnov(l,143).ngClassUntouched,t.ɵnov(l,143).ngClassTouched,t.ɵnov(l,143).ngClassPristine,t.ɵnov(l,143).ngClassDirty,t.ɵnov(l,143).ngClassValid,t.ɵnov(l,143).ngClassInvalid,t.ɵnov(l,143).ngClassPending),n(l,153,0,t.ɵunv(l,153,0,n(l,154,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,156,0,t.ɵnov(l,161).ngClassUntouched,t.ɵnov(l,161).ngClassTouched,t.ɵnov(l,161).ngClassPristine,t.ɵnov(l,161).ngClassDirty,t.ɵnov(l,161).ngClassValid,t.ɵnov(l,161).ngClassInvalid,t.ɵnov(l,161).ngClassPending),n(l,168,0,t.ɵunv(l,168,0,n(l,169,0,t.ɵnov(l.parent.parent,0),"phone"))),n(l,171,0,t.ɵnov(l,176).ngClassUntouched,t.ɵnov(l,176).ngClassTouched,t.ɵnov(l,176).ngClassPristine,t.ɵnov(l,176).ngClassDirty,t.ɵnov(l,176).ngClassValid,t.ɵnov(l,176).ngClassInvalid,t.ɵnov(l,176).ngClassPending),n(l,185,0,t.ɵunv(l,185,0,n(l,186,0,t.ɵnov(l.parent.parent,0),"address1"))),n(l,188,0,t.ɵnov(l,193).ngClassUntouched,t.ɵnov(l,193).ngClassTouched,t.ɵnov(l,193).ngClassPristine,t.ɵnov(l,193).ngClassDirty,t.ɵnov(l,193).ngClassValid,t.ɵnov(l,193).ngClassInvalid,t.ɵnov(l,193).ngClassPending),n(l,199,0,t.ɵunv(l,199,0,n(l,200,0,t.ɵnov(l.parent.parent,0),"address2"))),n(l,202,0,t.ɵnov(l,207).ngClassUntouched,t.ɵnov(l,207).ngClassTouched,t.ɵnov(l,207).ngClassPristine,t.ɵnov(l,207).ngClassDirty,t.ɵnov(l,207).ngClassValid,t.ɵnov(l,207).ngClassInvalid,t.ɵnov(l,207).ngClassPending),n(l,216,0,t.ɵunv(l,216,0,n(l,217,0,t.ɵnov(l.parent.parent,0),"address3"))),n(l,219,0,t.ɵnov(l,224).ngClassUntouched,t.ɵnov(l,224).ngClassTouched,t.ɵnov(l,224).ngClassPristine,t.ɵnov(l,224).ngClassDirty,t.ɵnov(l,224).ngClassValid,t.ɵnov(l,224).ngClassInvalid,t.ɵnov(l,224).ngClassPending),n(l,230,0,t.ɵunv(l,230,0,n(l,231,0,t.ɵnov(l.parent.parent,0),"cityTown"))),n(l,233,0,t.ɵnov(l,238).ngClassUntouched,t.ɵnov(l,238).ngClassTouched,t.ɵnov(l,238).ngClassPristine,t.ɵnov(l,238).ngClassDirty,t.ɵnov(l,238).ngClassValid,t.ɵnov(l,238).ngClassInvalid,t.ɵnov(l,238).ngClassPending),n(l,247,0,t.ɵunv(l,247,0,n(l,248,0,t.ɵnov(l.parent.parent,0),"stateProvince"))),n(l,250,0,t.ɵnov(l,255).ngClassUntouched,t.ɵnov(l,255).ngClassTouched,t.ɵnov(l,255).ngClassPristine,t.ɵnov(l,255).ngClassDirty,t.ɵnov(l,255).ngClassValid,t.ɵnov(l,255).ngClassInvalid,t.ɵnov(l,255).ngClassPending),n(l,261,0,t.ɵunv(l,261,0,n(l,262,0,t.ɵnov(l.parent.parent,0),"zipPostalCode"))),n(l,264,0,t.ɵnov(l,269).ngClassUntouched,t.ɵnov(l,269).ngClassTouched,t.ɵnov(l,269).ngClassPristine,t.ɵnov(l,269).ngClassDirty,t.ɵnov(l,269).ngClassValid,t.ɵnov(l,269).ngClassInvalid,t.ɵnov(l,269).ngClassPending),n(l,278,0,t.ɵunv(l,278,0,n(l,279,0,t.ɵnov(l.parent.parent,0),"country"))),n(l,281,0,t.ɵnov(l,286).ngClassUntouched,t.ɵnov(l,286).ngClassTouched,t.ɵnov(l,286).ngClassPristine,t.ɵnov(l,286).ngClassDirty,t.ɵnov(l,286).ngClassValid,t.ɵnov(l,286).ngClassInvalid,t.ɵnov(l,286).ngClassPending)})}function B(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,7,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"")},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function K(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,"div",[["class","input-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control text-monospace"]],[[8,"id",0],[8,"type",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,3)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,3)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,3)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(8,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,15,"div",[["class","input-group-append"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,6,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFieldValue(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(16,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(17,{"fa-eye":0,"fa-eye-slash":1}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["tabindex","-1"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.parent.context.$implicit.value,"value","Field")&&t);return t},null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value);n(l,8,0,"");n(l,16,0,"fa fa-lg",n(l,17,0,!l.parent.context.$implicit.showValue,l.parent.context.$implicit.showValue))},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.showValue?"text":"password",""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,12,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l.parent.parent.parent.parent,0),"toggleVisibility")),"")),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent.parent.parent.parent,0),"copyValue")),""))})}function H(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"input",[["appTrueFalseValue",""],["falseValue","false"],["trueValue","true"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,1).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,1).onTouched()&&u);"change"===l&&(u=!1!==t.ɵnov(n,2).onHostChange(e)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.value=e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵdid(2,16384,null,0,c.TrueFalseValueDirective,[t.ElementRef,t.Renderer2],{trueValue:[0,"trueValue"],falseValue:[1,"falseValue"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.CheckboxControlValueAccessor,c.TrueFalseValueDirective]),t.ɵdid(4,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(6,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null)],function(n,l){n(l,2,0,"true","false"),n(l,4,0,t.ɵinlineInterpolate(1,"Field.Value",l.parent.context.index,""),l.parent.context.$implicit.value)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"fieldValue",l.parent.context.index,""),t.ɵnov(l,6).ngClassUntouched,t.ɵnov(l,6).ngClassTouched,t.ɵnov(l,6).ngClassPristine,t.ɵnov(l,6).ngClassDirty,t.ɵnov(l,6).ngClassValid,t.ɵnov(l,6).ngClassInvalid,t.ɵnov(l,6).ngClassPending)})}function $(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,54,"div",[["appBoxRow",""],["class","row"]],null,[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);return u},null,null)),t.ɵdid(1,81920,null,0,i.BoxRowDirective,[t.ElementRef],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,22,"div",[["class","col-5 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,11,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,4,"a",[["class","ml-auto"],["href","https://help.bitwarden.com/article/custom-fields/"],["rel","noopener"],["target","_blank"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,0,"i",[["class","fa fa-question-circle-o"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,6,"input",[["appInputVerbatim",""],["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,19)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,19)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,19)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.name=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(24,81920,null,0,a.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,26,"div",[["class","col-7 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,19,"div",[["class","d-flex align-items-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,B)),t.ɵdid(36,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,K)),t.ɵdid(39,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,4,"div",[["class","flex-fill"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,H)),t.ɵdid(44,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,4,"button",[["class","btn btn-link text-danger ml-2"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.removeField(n.context.$implicit)&&t);return t},null,null)),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0),n(l,21,0,t.ɵinlineInterpolate(1,"Field.Name",l.context.index,""),l.context.$implicit.name);n(l,24,0,""),n(l,36,0,l.context.$implicit.type===e.fieldType.Text),n(l,39,0,l.context.$implicit.type===e.fieldType.Hidden),n(l,44,0,l.context.$implicit.type===e.fieldType.Boolean)},function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,"")),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,11,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent.parent,0),"learnMore")),"")),n(l,18,0,t.ɵinlineInterpolate(1,"fieldName",l.context.index,""),t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending),n(l,29,0,t.ɵinlineInterpolate(1,"fieldValue",l.context.index,"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent.parent.parent,0),"value"))),n(l,47,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent.parent.parent,0),"remove")),""))})}function W(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,$)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.fields)},null)}function Y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function J(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.value),n(l,2,0,l.context.$implicit.value)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function Z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,26,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","organizationId"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,9,"select",[["class","form-control"],["id","organizationId"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,15).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.organizationId=e)&&u);"change"===l&&(u=!1!==o.organizationChanged()&&u);return u},null,null)),t.ɵdid(15,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,J)),t.ɵdid(22,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,17,0,"OrganizationId",e.cipher.organizationId),n(l,22,0,e.ownershipOptions)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"ownership"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"whoOwnsThisItem"))),n(l,14,0,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending)})}function X(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function Q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"input",[["class","form-check-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,3).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(7,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,1,"label",[["class","form-check-label"]],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,""),t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending),n(l,9,0,t.ɵinlineInterpolate(1,"collection-",l.context.index,"")),n(l,10,0,l.context.$implicit.name)})}function nn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Q)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.collections)},null)}function ln(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,X)),t.ɵdid(7,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,nn)),t.ɵdid(10,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,!e.collections||!e.collections.length),n(l,10,0,e.collections&&e.collections.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"collections")))})}function en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(5,null,["\n ","\n "])),t.ɵppd(6,2)],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"datePasswordUpdated"))),n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,1),e.cipher.passwordRevisionDisplayDate,"medium")))})}function tn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"a",[["appStopClick",""],["href","#"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,7).onClick(e)&&u);"click"===l&&(u=!1!==o.viewHistory()&&u);return u},null,null)),t.ɵdid(7,16384,null,0,r.StopClickDirective,[],null,null),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"passwordHistory"))),n(l,6,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"view")),"")),n(l,9,0,e.cipher.passwordHistory.length)})}function un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n "," -\n "])),t.ɵppd(2,2),(n()(),t.ɵeld(3,0,null,null,1,"span",[["class","text-monospace ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(4,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,1),l.context.$implicit.lastUsedDate,"short"))),n(l,4,0,l.context.$implicit.password)})}function on(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,un)),t.ɵdid(3,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.cipher.passwordHistory)},null)}function rn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,21,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,18,"div",[["class","small text-muted mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"b",[["class","font-weight-semibold"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",":"])),t.ɵppd(8,1),(n()(),t.ɵted(9,null,["\n ","\n "])),t.ɵppd(10,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,en)),t.ɵdid(13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,tn)),t.ɵdid(16,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,on)),t.ɵdid(19,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.showRevisionDate),n(l,16,0,e.hasPasswordHistory),n(l,19,0,e.viewingPasswordHistory)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"dateUpdated"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,1),e.cipher.revisionDate,"medium")))})}function an(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,96,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,20,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,14,"div",[["class","col-6 form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,14)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,14).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,14)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,14)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.name=e)&&u);return u},null,null)),t.ɵdid(14,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(15,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(18,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(20,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(24,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(29,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,G)),t.ɵdid(33,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,q)),t.ɵdid(37,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,12,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","notes"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"textarea",[["class","form-control"],["id","notes"],["name","Notes"],["rows","6"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.cipher.notes=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(48,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(50,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(53,0,null,null,2,"h3",[["class","mt-4"]],null,null,null,null,null)),(n()(),t.ɵted(54,null,["",""])),t.ɵppd(55,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,W)),t.ɵdid(58,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,5,"a",[["appStopClick",""],["class","d-inline-block mb-2"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,61).onClick(e)&&u);"click"===l&&(u=!1!==o.addField()&&u);return u},null,null)),t.ɵdid(61,16384,null,0,r.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,0,"i",[["class","fa fa-plus-circle fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,[" ","\n "])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,16,"div",[["class","col-5"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(71,0,null,null,2,"label",[["class","sr-only"],["for","addFieldType"]],null,null,null,null,null)),(n()(),t.ɵted(72,null,["",""])),t.ɵppd(73,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,9,"select",[["class","form-control"],["id","addFieldType"],["name","AddFieldType"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,76).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,76).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.addFieldType=e)&&u);return u},null,null)),t.ɵdid(76,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(78,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(80,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Y)),t.ɵdid(83,278528,null,0,o.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,Z)),t.ɵdid(89,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,ln)),t.ɵdid(92,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,rn)),t.ɵdid(95,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.editMode);n(l,15,0,"");n(l,18,0,"Name",e.cipher.name),n(l,24,0,!e.organization),n(l,29,0,e.cipher.type===e.cipherType.Login),n(l,33,0,e.cipher.type===e.cipherType.Card),n(l,37,0,e.cipher.type===e.cipherType.Identity);n(l,48,0,"Notes",e.cipher.notes),n(l,58,0,e.cipher.hasFields);n(l,78,0,"AddFieldType",e.addFieldType),n(l,83,0,e.addFieldTypeOptions),n(l,89,0,!e.editMode&&!e.organization&&e.ownershipOptions&&e.ownershipOptions.length>1),n(l,92,0,!e.editMode&&e.cipher.organizationId),n(l,95,0,e.editMode)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent,0),"name"))),n(l,13,0,t.ɵnov(l,15).required?"":null,t.ɵnov(l,20).ngClassUntouched,t.ɵnov(l,20).ngClassTouched,t.ɵnov(l,20).ngClassPristine,t.ɵnov(l,20).ngClassDirty,t.ɵnov(l,20).ngClassValid,t.ɵnov(l,20).ngClassInvalid,t.ɵnov(l,20).ngClassPending),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"notes"))),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l.parent,0),"customFields"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"newCustomField"))),n(l,72,0,t.ɵunv(l,72,0,n(l,73,0,t.ɵnov(l.parent,0),"type"))),n(l,75,0,t.ɵnov(l,80).ngClassUntouched,t.ɵnov(l,80).ngClassTouched,t.ɵnov(l,80).ngClassPristine,t.ɵnov(l,80).ngClassDirty,t.ɵnov(l,80).ngClassValid,t.ɵnov(l,80).ngClassInvalid,t.ɵnov(l,80).ngClassPending)})}function sn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"button",[["class","btn btn-link"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.toggleFavorite()&&t);return t},null,null)),t.ɵppd(1,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,2,"i",[["class","fa fa-lg"]],null,null,null,null,null)),t.ɵdid(4,278528,null,0,o.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(5,{"fa-star":0,"fa-star-o":1}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,"fa fa-lg",n(l,5,0,e.cipher.favorite,!e.cipher.favorite))},function(n,l){var e=l.component;n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),e.cipher.favorite?"unfavorite":"favorite")),""))})}function dn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function cn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,sn)),t.ɵdid(3,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,dn)),t.ɵdid(6,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.organization),n(l,6,0,e.editMode)},null)}function pn(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵpid(0,o.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,47,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,44,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,41,"form",[["autocomplete","off"],["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,an)),t.ɵdid(26,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(36,null,["",""])),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(41,null,["\n ","\n "])),t.ɵppd(42,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,cn)),t.ɵdid(45,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,26,0,e.cipher),n(l,45,0,e.cipher)},function(n,l){var e=l.component;n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,e.title),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵnov(l,6).loading),n(l,32,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"loading")),"")),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"save"))),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"cancel")))})}function fn(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-add-edit",[],null,null,null,pn,k)),t.ɵdid(1,114688,null,0,v.AddEditComponent,[h.CipherService,g.FolderService,f.I18nService,m.PlatformUtilsService,y.AuditService,C.StateService,b.UserService,w.CollectionService,S.TotpService,_.PasswordGenerationService,R.ApiService,I.MessagingService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AddEditComponent=k,l.View_AddEditComponent_0=pn,l.View_AddEditComponent_Host_0=fn;var vn=t.ɵccf("app-org-vault-add-edit",v.AddEditComponent,fn,{folderId:"folderId",cipherId:"cipherId",type:"type",collectionIds:"collectionIds",organizationId:"organizationId"},{onSavedCipher:"onSavedCipher",onDeletedCipher:"onDeletedCipher",onCancelled:"onCancelled",onEditAttachments:"onEditAttachments",onShareCipher:"onShareCipher",onEditCollections:"onEditCollections",onGeneratePassword:"onGeneratePassword"},[]);l.AddEditComponentNgFactory=vn},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(4),i=e(36),a=e(7),s=e(3),d=e(12),c=e(584),p=e(23),f=e(21),v=e(8),h=e(9),g=e(5),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-fw fa-lg fa-file-o"]],null,null,null,null,null))],null,null)}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-spinner fa-lg fa-fw fa-spin"]],null,null,null,null,null))],null,null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","ml-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,3,"a",[["href","https://help.bitwarden.com/article/attachments/#fixing-old-attachments"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-exclamation-triangle text-warning"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["reuploadBtn",1]],null,3,"button",[["class","btn btn-outline-primary btn-sm m-0 py-0 px-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.reupload(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵdid(8,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,8,0,l.component.reuploadPromises[l.parent.context.$implicit.id])},function(n,l){n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent.parent,0),"attachmentFixDesc")),"")),n(l,7,0,t.ɵnov(l,7).loading),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent.parent,0),"fix")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,40,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"td",[["class","table-list-icon"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(8,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,14,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,2,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,16).onClick(e)&&u);"click"===l&&(u=!1!==o.download(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(16,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(17,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(20,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(24,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,12,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,[["deleteBtn",1]],null,9,"button",[["appStopClick",""],["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,31).onClick(e)&&u);"click"===l&&(u=!1!==o.delete(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(30,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵdid(31,16384,null,0,i.StopClickDirective,[],null,null),t.ɵppd(32,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(37,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,!l.context.$implicit.downloading),n(l,8,0,l.context.$implicit.downloading),n(l,20,0,e.showFixOldAttachments(l.context.$implicit)),n(l,30,0,e.deletePromises[l.context.$implicit.id])},function(n,l){n(l,17,0,l.context.$implicit.fileName),n(l,24,0,l.context.$implicit.sizeName),n(l,29,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,29,0,n(l,32,0,t.ɵnov(l.parent.parent,0),"delete")),""),t.ɵnov(l,29).loading),n(l,34,0,t.ɵnov(l,29).loading),n(l,36,0,!t.ɵnov(l,29).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,36,1,n(l,37,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.cipher.attachments)},null)}function R(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),(n()(),t.ɵeld(1,0,null,null,66,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,63,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,60,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,d.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,d.ControlContainer,null,[d.NgForm]),t.ɵdid(8,16384,null,0,d.NgControlStatusGroup,[[4,d.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,u.ApiActionDirective,[t.ElementRef,o.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),t.ɵppd(15,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(17,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(21,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(23,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(31,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"label",[["class","sr-only"],["for","file"]],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"input",[["class","form-control-file"],["id","file"],["name","file"],["required",""],["type","file"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,16,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(53,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(61,1),(n()(),t.ɵted(62,null,["",""])),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,17,0,e.cipher),n(l,31,0,e.cipher&&e.cipher.hasAttachments)},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"attachments"))),n(l,20,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l,0),"close")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"newAttachment"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"file"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"maxFileSize"))),n(l,50,0,t.ɵnov(l,5).loading),n(l,52,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,52,0,n(l,53,0,t.ɵnov(l,0),"loading")),"")),n(l,56,0,t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"save"))),n(l,60,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"close")),"")),n(l,62,0,t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"close")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-attachments",[],null,null,null,R,m)),t.ɵdid(1,114688,null,0,c.AttachmentsComponent,[p.CipherService,s.I18nService,f.CryptoService,v.UserService,h.PlatformUtilsService,g.ApiService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AttachmentsComponent=m,l.View_AttachmentsComponent_0=R,l.View_AttachmentsComponent_Host_0=I;var k=t.ɵccf("app-org-vault-attachments",c.AttachmentsComponent,I,{cipherId:"cipherId"},{onUploadedAttachment:"onUploadedAttachment",onDeletedAttachment:"onDeletedAttachment",onReuploadedAttachment:"onReuploadedAttachment"},[]);l.AttachmentsComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(19),a=e(18),s=e(7),d=e(3),c=e(587),p=e(5),f=e(6),v=e(13),h=e(9),g=e(21),m=e(8),y=t.ɵcrt({encapsulation:2,styles:[],data:{}});function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"unselectAll")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noGroupsInList")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"i",[["class","fa fa-th text-muted fa-fw"],["title","This group can access all items"]],null,null,null,null,null))],null,null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,28,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,4,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(16,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,22).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,22).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(22,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(24,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(26,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Groups[",l.context.index,"].Checked"),l.context.$implicit.accessAll,l.context.$implicit.checked),n(l,16,0,l.context.$implicit.accessAll),n(l,24,0,t.ɵinlineInterpolate(1,"Groups[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked||l.context.$implicit.accessAll,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,21,0,t.ɵnov(l,26).ngClassUntouched,t.ɵnov(l,26).ngClassTouched,t.ɵnov(l,26).ngClassPristine,t.ɵnov(l,26).ngClassDirty,t.ɵnov(l,26).ngClassValid,t.ɵnov(l,26).ngClassInvalid,t.ɵnov(l,26).ngClassPending)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(22,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,22,0,l.component.groups)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"h3",[["class","mt-4 d-flex mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(10,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(13,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,6,0,e.groups&&e.groups.length),n(l,10,0,!e.groups||!e.groups.length),n(l,13,0,e.groups&&e.groups.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"groupAccess")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,14,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(10,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,10,0,"");n(l,13,0,"Name",e.name),n(l,19,0,e.accessGroups)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"))),n(l,8,0,t.ɵnov(l,10).required?"":null,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[d.I18nService]),(n()(),t.ɵeld(1,0,null,null,53,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,50,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,47,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(8,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(25,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(28,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,21,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,25,0,e.loading),n(l,28,0,!e.loading),n(l,49,0,e.editMode)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,e.title),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵnov(l,5).loading),n(l,34,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"")),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-collection-add-edit",[],null,null,null,O,y)),t.ɵdid(1,114688,null,0,c.CollectionAddEditComponent,[p.ApiService,d.I18nService,f.Angulartics2,v.ToasterService,h.PlatformUtilsService,g.CryptoService,m.UserService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionAddEditComponent=y,l.View_CollectionAddEditComponent_0=O,l.View_CollectionAddEditComponent_Host_0=N;var E=t.ɵccf("app-collection-add-edit",c.CollectionAddEditComponent,N,{collectionId:"collectionId",organizationId:"organizationId"},{onSavedCollection:"onSavedCollection",onDeletedCollection:"onDeletedCollection"},[]);l.CollectionAddEditComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(585),p=e(43),f=e(9),v=e(23),h=e(5),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"unselectAll")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noCollectionsInList")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function S(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,21,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(42,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(46,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.cipher),n(l,42,0,e.collections&&e.collections.length),n(l,46,0,!e.collections||!e.collections.length),n(l,49,0,e.collections&&e.collections.length)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"collections"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"collectionsDesc"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"collections"))),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"save"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"cancel")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-vault-collections",[],null,null,null,S,g)),t.ɵdid(1,245760,null,0,c.CollectionsComponent,[p.CollectionService,f.PlatformUtilsService,a.I18nService,v.CipherService,h.ApiService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_CollectionsComponent=g,l.View_CollectionsComponent_0=S,l.View_CollectionsComponent_Host_0=_;var R=t.ɵccf("app-org-vault-collections",c.CollectionsComponent,_,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(19),r=e(18),i=e(12),a=e(7),s=e(3),d=e(481),c=e(5),p=e(229),f=e(13),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noEventsInList")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"th",[["class","border-top-0"],["width","150"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"user")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"span",[],[[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.userEmail,"")),n(l,3,0,l.parent.context.$implicit.userName)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"td",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,3,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[],[[8,"className",0],[8,"title",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(12,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,0,"td",[],[[8,"innerHTML",1]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,12,0,l.component.showUser)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,1),l.context.$implicit.date,"medium"))),n(l,8,0,t.ɵinlineInterpolate(1,"text-muted fa fa-lg ",l.context.$implicit.appIcon,""),t.ɵinlineInterpolate(2,"",l.context.$implicit.appName,", ",l.context.$implicit.ip,"")),n(l,14,0,l.context.$implicit.message)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,31,"table",[["class","table table-hover mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,22,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,19,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"th",[["class","border-top-0"],["width","210"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"th",[["class","border-top-0"],["width","40"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,2,"span",[["class","sr-only"]],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"th",[["class","border-top-0"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(29,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,18,0,e.showUser),n(l,29,0,e.events)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"timestamp"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l.parent.parent,0),"device"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent.parent,0),"event")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["moreBtn",1]],null,9,"button",[["class","btn btn-block btn-link btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!1)&&t);return t},null,null)),t.ɵdid(1,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.morePromise)},function(n,l){n(l,0,0,l.component.loaded&&t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"loadMore")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,54,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,40,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,28,"div",[["class","form-inline"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["class","sr-only"],["for","start"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","start"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.start=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n){return[n]},[i.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,i.NgModel,[[8,null],[8,null],[8,null],[6,i.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(15,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"span",[["class","mx-2"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["-"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"label",[["class","sr-only"],["for","end"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","end"],["placeholder","YYYY-MM-DDTHH:MM"],["type","datetime-local"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,26)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,26).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,26)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,26)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.end=e)&&u);return u},null,null)),t.ɵdid(26,16384,null,0,i.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,i.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,i.NG_VALUE_ACCESSOR,function(n){return[n]},[i.DefaultValueAccessor]),t.ɵdid(28,671744,null,0,i.NgModel,[[8,null],[8,null],[8,null],[6,i.NG_VALUE_ACCESSOR]],{model:[0,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,i.NgControl,null,[i.NgModel]),t.ɵdid(30,16384,null,0,i.NgControlStatus,[[4,i.NgControl]],null,null),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,[["refreshBtn",1]],null,7,"button",[["class","btn btn-sm btn-outline-primary ml-3"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.loadEvents(!0)&&t);return t},null,null)),t.ɵdid(35,540672,null,0,o.ApiActionDirective,[t.ElementRef,r.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"i",[["class","fa fa-refresh fa-fw"]],null,null,null,null,null)),t.ɵdid(38,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(39,{"fa-spin":0}),(n()(),t.ɵted(40,null,["\n ","\n "])),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(47,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(50,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(53,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,e.start),n(l,28,0,e.end),n(l,35,0,e.refreshPromise);n(l,38,0,"fa fa-refresh fa-fw",n(l,39,0,e.loaded&&t.ɵnov(l,34).loading)),n(l,47,0,!e.events||!e.events.length),n(l,50,0,e.events&&e.events.length),n(l,53,0,e.continuationToken)},function(n,l){var e=l.component;n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"startDate"))),n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"startDate")),""),t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent,0),"endDate"))),n(l,25,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,25,0,n(l,31,0,t.ɵnov(l.parent,0),"endDate")),""),t.ɵnov(l,30).ngClassUntouched,t.ɵnov(l,30).ngClassTouched,t.ɵnov(l,30).ngClassPristine,t.ɵnov(l,30).ngClassDirty,t.ɵnov(l,30).ngClassValid,t.ɵnov(l,30).ngClassInvalid,t.ɵnov(l,30).ngClassPending),n(l,34,0,e.loaded&&t.ɵnov(l,34).loading),n(l,40,0,t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l.parent,0),"refresh")))})}function R(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,37,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,34,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,31,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["\n ","\n "])),t.ɵppd(12,1),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(14,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(26,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(29,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(34,null,["",""])),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,14,0,e.name),n(l,26,0,!e.loaded),n(l,29,0,e.loaded)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"eventLogs"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,34,0,t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"close")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-events",[],null,null,null,R,v)),t.ɵdid(1,114688,null,0,d.EntityEventsComponent,[c.ApiService,s.I18nService,p.EventService,f.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityEventsComponent=v,l.View_EntityEventsComponent_0=R,l.View_EntityEventsComponent_Host_0=I;var k=t.ɵccf("app-entity-events",d.EntityEventsComponent,I,{name:"name",entity:"entity",entityId:"entityId",organizationId:"organizationId",showUser:"showUser"},{},[]);l.EntityEventsComponentNgFactory=k},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(12),r=e(99),i=e(157),a=e(137),s=e(41),d=e(103),c=e(30),p=e(7),f=e(3),v=e(262),h=e(19),g=e(18),m=e(492),y=e(5),C=e(6),b=e(13),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"span",[["class","badge badge-pill badge-info"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.selectedCount)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"noUsersInList")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "]))],null,null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-secondary"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"invited")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","badge badge-warning"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"accepted")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted d-block"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-th"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent.parent,0),"userAccessAllItems")),""))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.parent.context.$implicit.accessAll)},null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"owner")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"admin")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"manager")))})}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent.parent,0),"user")))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,3).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,3).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(3,16384,null,0,o.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.CheckboxControlValueAccessor]),t.ɵdid(5,671744,null,0,o.NgModel,[[2,o.ControlContainer],[8,null],[8,null],[6,o.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,o.NgControl,null,[o.NgModel]),t.ɵdid(7,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,t.ɵinlineInterpolate(1,"",l.parent.context.$implicit.id.substr(0,8),"_ReadOnly"),l.parent.context.$implicit.accessAll||!l.parent.context.$implicit.checked,l.parent.context.$implicit.readOnly)},function(n,l){n(l,2,0,t.ɵnov(l,7).ngClassUntouched,t.ɵnov(l,7).ngClassTouched,t.ɵnov(l,7).ngClassPristine,t.ɵnov(l,7).ngClassDirty,t.ɵnov(l,7).ngClassValid,t.ɵnov(l,7).ngClassInvalid,t.ɵnov(l,7).ngClassPending)})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,51,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);"change"===l&&(u=!1!==o.selectedChanged(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,o.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,o.NgModel,[[2,o.ControlContainer],[8,null],[8,null],[6,o.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,o.NgControl,null,[o.NgModel]),t.ɵdid(9,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵdid(10,16384,null,0,r.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,4,"td",[["width","30"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,1,"app-avatar",[["size","25"]],null,null,null,i.View_AvatarComponent_0,i.RenderType_AvatarComponent)),t.ɵdid(16,638976,null,0,a.AvatarComponent,[s.DomSanitizer,d.CryptoFunctionService,c.StateService],{data:[0,"data"],email:[1,"email"],size:[2,"size"],fontSize:[3,"fontSize"],circle:[4,"circle"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,10,"td",[],null,null,null,null,null)),(n()(),t.ɵted(20,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(22,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(25,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(28,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(32,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,13,"td",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(37,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(40,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(43,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(46,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(50,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,t.ɵinlineInterpolate(1,"",l.context.$implicit.id.substr(0,8),"_Checked"),"collection"===e.entity&&l.context.$implicit.accessAll,l.context.$implicit.checked);n(l,16,0,l.context.$implicit.name||l.context.$implicit.email,l.context.$implicit.email,"25",14,!0),n(l,22,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,25,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,28,0,l.context.$implicit.name),n(l,32,0,"collection"===e.entity),n(l,37,0,l.context.$implicit.type===e.organizationUserType.Owner),n(l,40,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,43,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,46,0,l.context.$implicit.type===e.organizationUserType.User),n(l,50,0,"collection"===e.entity)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,20,0,l.context.$implicit.email)})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,36,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,33,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,24,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,21,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(19,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(26,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(33,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,19,0,"collection"===e.entity),n(l,26,0,"collection"===e.entity),n(l,33,0,l.parent.context.ngIf)},function(n,l){n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"name"))),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"userType")))})}function L(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,43,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,34,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,13,"div",[["class","mr-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"label",[["class","sr-only"],["for","search"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,6,"input",[["class","form-control form-control-sm"],["id","search"],["name","SearchText"],["type","search"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,11)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,11).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,11)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,11)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.searchText=e)&&u);return u},null,null)),t.ɵdid(11,16384,null,0,o.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,o.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,o.NG_VALUE_ACCESSOR,function(n){return[n]},[o.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,o.NgModel,[[2,o.ControlContainer],[8,null],[8,null],[6,o.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,o.NgControl,null,[o.NgModel]),t.ɵdid(15,16384,null,0,o.NgControlStatus,[[4,o.NgControl]],null,null),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,16,"div",[["class","btn-group btn-group-sm"],["role","group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,4,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filterSelected(!1)&&t);return t},null,null)),t.ɵdid(22,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(23,{active:0}),(n()(),t.ɵted(24,null,["\n ","\n "])),t.ɵppd(25,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,7,"button",[["class","btn btn-outline-secondary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.filterSelected(!0)&&t);return t},null,null)),t.ɵdid(28,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(29,{active:0}),(n()(),t.ɵted(30,null,["\n ","\n "])),t.ɵppd(31,1),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(39,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(42,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,13,0,"SearchText",e.searchText);n(l,22,0,"btn btn-outline-secondary",n(l,23,0,!e.showSelected));n(l,28,0,"btn btn-outline-secondary",n(l,29,0,e.showSelected)),n(l,33,0,e.selectedCount),n(l,39,0,!l.context.ngIf.length),n(l,42,0,l.context.ngIf.length)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent,0),"search"))),n(l,10,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,10,0,n(l,16,0,t.ɵnov(l.parent,0),"search")),""),t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,24,0,t.ɵunv(l,24,0,n(l,25,0,t.ɵnov(l.parent,0),"all"))),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"selected")))})}function z(n){return t.ɵvid(0,[t.ɵpid(0,p.I18nPipe,[f.I18nService]),t.ɵpid(0,v.SearchPipe,[]),(n()(),t.ɵeld(2,0,null,null,52,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,49,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,[["form",1]],null,46,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(7,4210688,null,0,o.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,o.ControlContainer,null,[o.NgForm]),t.ɵdid(9,16384,null,0,o.NgControlStatusGroup,[[4,o.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵeld(17,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(18,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(30,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,2,null,L)),t.ɵdid(33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),t.ɵppd(34,5),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(41,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(44,null,["",""])),t.ɵppd(45,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(49,null,["",""])),t.ɵppd(50,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,30,0,e.loading||!e.users),n(l,33,0,!e.loading&&e.users&&t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,1),e.users,e.searchText,"name","email","id")))},function(n,l){var e=l.component;n(l,6,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"userAccess"))),n(l,18,0,e.entityName),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,38,0,t.ɵnov(l,6).loading),n(l,40,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,40,0,n(l,41,0,t.ɵnov(l,0),"loading")),"")),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"save"))),n(l,49,0,t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"close")))})}function G(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-entity-users",[],null,null,null,z,w)),t.ɵdid(1,114688,null,0,m.EntityUsersComponent,[y.ApiService,f.I18nService,C.Angulartics2,b.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_EntityUsersComponent=w,l.View_EntityUsersComponent_0=z,l.View_EntityUsersComponent_Host_0=G;var j=t.ɵccf("app-entity-users",m.EntityUsersComponent,G,{entity:"entity",entityId:"entityId",entityName:"entityName",organizationId:"organizationId"},{onEditedUsers:"onEditedUsers"},[]);l.EntityUsersComponentNgFactory=j},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(19),a=e(18),s=e(7),d=e(3),c=e(589),p=e(5),f=e(6),v=e(13),h=e(43),g=e(9),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,19).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked),n(l,21,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,18,0,t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending)})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(22,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,22,0,l.component.collections)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.collections||!e.collections.length),n(l,6,0,e.collections&&e.collections.length)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,83,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,14,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,7,"input",[["class","form-control"],["id","name"],["name","Name"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,9)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,9).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,9)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,9)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(9,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(10,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(13,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(15,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"label",[["for","externalId"]],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,5,"input",[["class","form-control"],["id","externalId"],["name","ExternalId"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,25)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,25).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,25)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,25)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.externalId=e)&&u);return u},null,null)),t.ɵdid(25,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(27,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(29,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,8,"h3",[["class","mt-4 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"div",[["class","mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["\n ","\n "])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(43,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(47,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(48,{"mb-0":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,6,"input",[["class","form-check-input"],["id","accessAll"],["name","access"],["type","radio"],["value","all"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,53)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,53).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,53)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,53)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,54).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,54).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(53,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(54,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(56,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(58,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,2,"label",[["class","form-check-label"],["for","accessAll"]],null,null,null,null,null)),(n()(),t.ɵted(61,null,["\n ","\n "])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,6,"input",[["class","form-check-input"],["id","accessSelected"],["name","access"],["type","radio"],["value","selected"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,69).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,69).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(69,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(71,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(73,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(75,0,null,null,2,"label",[["class","form-check-label"],["for","accessSelected"]],null,null,null,null,null)),(n()(),t.ɵted(76,null,["\n ","\n "])),t.ɵppd(77,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(82,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,10,0,"");n(l,13,0,"Name",e.name);n(l,27,0,"ExternalId",e.externalId),n(l,43,0,"selected"===e.access&&e.collections&&e.collections.length);n(l,47,0,"form-group",n(l,48,0,"selected"!==e.access));n(l,54,0,"access","all");n(l,56,0,"access",e.access);n(l,69,0,"access","selected");n(l,71,0,"access",e.access),n(l,82,0,"selected"===e.access)},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent,0),"name"))),n(l,8,0,t.ɵnov(l,10).required?"":null,t.ɵnov(l,15).ngClassUntouched,t.ɵnov(l,15).ngClassTouched,t.ɵnov(l,15).ngClassPristine,t.ɵnov(l,15).ngClassDirty,t.ɵnov(l,15).ngClassValid,t.ɵnov(l,15).ngClassInvalid,t.ɵnov(l,15).ngClassPending),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"externalId"))),n(l,24,0,t.ɵnov(l,29).ngClassUntouched,t.ɵnov(l,29).ngClassTouched,t.ɵnov(l,29).ngClassPristine,t.ɵnov(l,29).ngClassDirty,t.ɵnov(l,29).ngClassValid,t.ɵnov(l,29).ngClassInvalid,t.ɵnov(l,29).ngClassPending),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l.parent,0),"externalIdGroupDesc"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"accessControl"))),n(l,52,0,t.ɵnov(l,58).ngClassUntouched,t.ɵnov(l,58).ngClassTouched,t.ɵnov(l,58).ngClassPristine,t.ɵnov(l,58).ngClassDirty,t.ɵnov(l,58).ngClassValid,t.ɵnov(l,58).ngClassInvalid,t.ɵnov(l,58).ngClassPending),n(l,61,0,t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"groupAccessAllItems"))),n(l,67,0,t.ɵnov(l,73).ngClassUntouched,t.ɵnov(l,73).ngClassTouched,t.ɵnov(l,73).ngClassPristine,t.ɵnov(l,73).ngClassDirty,t.ɵnov(l,73).ngClassValid,t.ɵnov(l,73).ngClassInvalid,t.ɵnov(l,73).ngClassPending),n(l,76,0,t.ɵunv(l,76,0,n(l,77,0,t.ɵnov(l.parent,0),"groupAccessSelectedCollections")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function k(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[d.I18nService]),(n()(),t.ɵeld(1,0,null,null,53,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,50,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,47,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(8,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,11,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(25,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(28,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,21,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(35,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(38,null,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(49,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise),n(l,25,0,e.loading),n(l,28,0,!e.loading),n(l,49,0,e.editMode)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,e.title),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵnov(l,5).loading),n(l,34,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,34,0,n(l,35,0,t.ɵnov(l,0),"loading")),"")),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"save"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-group-add-edit",[],null,null,null,k,m)),t.ɵdid(1,114688,null,0,c.GroupAddEditComponent,[p.ApiService,d.I18nService,f.Angulartics2,v.ToasterService,h.CollectionService,g.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_GroupAddEditComponent=m,l.View_GroupAddEditComponent_0=k,l.View_GroupAddEditComponent_Host_0=A;var O=t.ɵccf("app-group-add-edit",c.GroupAddEditComponent,A,{groupId:"groupId",organizationId:"organizationId"},{onSavedGroup:"onSavedGroup",onDeletedGroup:"onDeletedGroup"},[]);l.GroupAddEditComponentNgFactory=O},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(19),a=e(18),s=e(7),d=e(3),c=e(591),p=e(5),f=e(6),v=e(13),h=e(43),g=e(9),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,18,"div",[["class","form-group mb-4"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"label",[["for","emails"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,7,"input",[["class","form-control"],["id","emails"],["name","Emails"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,13)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,13)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,13)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.emails=e)&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(14,16384,null,0,u.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,u.NG_VALIDATORS,function(n){return[n]},[u.RequiredValidator]),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.DefaultValueAccessor]),t.ɵdid(17,671744,null,0,u.NgModel,[[2,u.ControlContainer],[6,u.NG_VALIDATORS],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(19,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(22,null,["",""])),t.ɵppd(23,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,14,0,"");n(l,17,0,"Emails",e.emails)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"inviteUserDesc"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,12,0,t.ɵnov(l,14).required?"":null,t.ɵnov(l,19).ngClassUntouched,t.ɵnov(l,19).ngClassTouched,t.ɵnov(l,19).ngClassPristine,t.ɵnov(l,19).ngClassDirty,t.ɵnov(l,19).ngClassValid,t.ɵnov(l,19).ngClassInvalid,t.ɵnov(l,19).ngClassPending),n(l,22,0,t.ɵunv(l,22,0,n(l,23,0,t.ɵnov(l.parent.parent,0),"inviteMultipleEmailDesc","20")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"noCollectionsInList")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,8,"td",[["class","text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,5,"input",[["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,19).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,19).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.readOnly=e)&&u);return u},null,null)),t.ɵdid(19,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(21,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(23,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked),n(l,21,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].ReadOnly"),!l.context.$implicit.checked,l.context.$implicit.readOnly)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name),n(l,18,0,t.ɵnov(l,23).ngClassUntouched,t.ɵnov(l,23).ngClassTouched,t.ɵnov(l,23).ngClassPristine,t.ɵnov(l,23).ngClassDirty,t.ɵnov(l,23).ngClassValid,t.ɵnov(l,23).ngClassInvalid,t.ɵnov(l,23).ngClassPending)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,24,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,15,"thead",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,12,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"th",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,[" "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"th",[],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"th",[["class","text-center"],["width","100"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(22,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,22,0,l.component.collections)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l.parent.parent.parent,0),"name"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent.parent,0),"readOnly")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(3,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.collections||!e.collections.length),n(l,6,0,e.collections&&e.collections.length)},null)}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,132,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(3,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeUser"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,12)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,12).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,12)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,12)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,13).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(12,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(13,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeUser"]],null,null,null,null,null)),(n()(),t.ɵted(20,null,["\n ","\n "])),t.ɵppd(21,1),(n()(),t.ɵeld(22,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(23,null,["",""])),t.ɵppd(24,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeManager"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,31)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,31).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,31)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,31)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,32).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(31,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(32,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(34,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(36,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeManager"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["\n ","\n "])),t.ɵppd(40,1),(n()(),t.ɵeld(41,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeAdmin"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,50)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,50).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,50)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,50)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,51).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,51).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(50,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(51,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(53,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(55,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeAdmin"]],null,null,null,null,null)),(n()(),t.ɵted(58,null,["\n ","\n "])),t.ɵppd(59,1),(n()(),t.ɵeld(60,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(61,null,["",""])),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(66,0,null,null,17,"div",[["class","form-check mt-2 form-check-block"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(68,0,null,null,6,"input",[["class","form-check-input"],["id","userTypeOwner"],["name","userType"],["type","radio"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,69)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,69).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,69)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,69)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,70).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,70).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.type=e)&&u);return u},null,null)),t.ɵdid(69,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(70,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(72,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(74,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,6,"label",[["class","form-check-label"],["for","userTypeOwner"]],null,null,null,null,null)),(n()(),t.ɵted(77,null,["\n ","\n "])),t.ɵppd(78,1),(n()(),t.ɵeld(79,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(80,null,["",""])),t.ɵppd(81,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(85,0,null,null,8,"h3",[["class","mt-4 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(87,0,null,null,2,"div",[["class","mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(88,null,["\n ","\n "])),t.ɵppd(89,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(92,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(95,0,null,null,33,"div",[["class","form-group"]],null,null,null,null,null)),t.ɵdid(96,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(97,{"mb-0":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(99,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,6,"input",[["class","form-check-input"],["id","accessAll"],["name","access"],["type","radio"],["value","all"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,102)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,102).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,102)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,102)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,103).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,103).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(102,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(103,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(105,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(107,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(109,0,null,null,2,"label",[["class","form-check-label"],["for","accessAll"]],null,null,null,null,null)),(n()(),t.ɵted(110,null,["\n ","\n "])),t.ɵppd(111,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(114,0,null,null,13,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(116,0,null,null,6,"input",[["class","form-check-input"],["id","accessSelected"],["name","access"],["type","radio"],["value","selected"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,117)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,117).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,117)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,117)._compositionEnd(e.target.value)&&u);"change"===l&&(u=!1!==t.ɵnov(n,118).onChange()&&u);"blur"===l&&(u=!1!==t.ɵnov(n,118).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.access=e)&&u);return u},null,null)),t.ɵdid(117,16384,null,0,u.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,u.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(118,212992,null,0,u.RadioControlValueAccessor,[t.Renderer2,t.ElementRef,u.ɵangular_packages_forms_forms_i,t.Injector],{name:[0,"name"],value:[1,"value"]},null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n,l){return[n,l]},[u.DefaultValueAccessor,u.RadioControlValueAccessor]),t.ɵdid(120,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(122,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(124,0,null,null,2,"label",[["class","form-check-label"],["for","accessSelected"]],null,null,null,null,null)),(n()(),t.ɵted(125,null,["\n ","\n "])),t.ɵppd(126,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(131,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,!e.editMode);n(l,13,0,"userType",e.organizationUserType.User);n(l,15,0,"userType",e.type);n(l,32,0,"userType",e.organizationUserType.Manager);n(l,34,0,"userType",e.type);n(l,51,0,"userType",e.organizationUserType.Admin);n(l,53,0,"userType",e.type);n(l,70,0,"userType",e.organizationUserType.Owner);n(l,72,0,"userType",e.type),n(l,92,0,"selected"===e.access&&e.collections&&e.collections.length);n(l,96,0,"form-group",n(l,97,0,"selected"!==e.access));n(l,103,0,"access","all");n(l,105,0,"access",e.access);n(l,118,0,"access","selected");n(l,120,0,"access",e.access),n(l,131,0,"selected"===e.access)},function(n,l){n(l,6,0,t.ɵunv(l,6,0,n(l,7,0,t.ɵnov(l.parent,0),"userType"))),n(l,11,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,20,0,t.ɵunv(l,20,0,n(l,21,0,t.ɵnov(l.parent,0),"user"))),n(l,23,0,t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent,0),"userDesc"))),n(l,30,0,t.ɵnov(l,36).ngClassUntouched,t.ɵnov(l,36).ngClassTouched,t.ɵnov(l,36).ngClassPristine,t.ɵnov(l,36).ngClassDirty,t.ɵnov(l,36).ngClassValid,t.ɵnov(l,36).ngClassInvalid,t.ɵnov(l,36).ngClassPending),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"manager"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l.parent,0),"managerDesc"))),n(l,49,0,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending),n(l,58,0,t.ɵunv(l,58,0,n(l,59,0,t.ɵnov(l.parent,0),"admin"))),n(l,61,0,t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"adminDesc"))),n(l,68,0,t.ɵnov(l,74).ngClassUntouched,t.ɵnov(l,74).ngClassTouched,t.ɵnov(l,74).ngClassPristine,t.ɵnov(l,74).ngClassDirty,t.ɵnov(l,74).ngClassValid,t.ɵnov(l,74).ngClassInvalid,t.ɵnov(l,74).ngClassPending),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"owner"))),n(l,80,0,t.ɵunv(l,80,0,n(l,81,0,t.ɵnov(l.parent,0),"ownerDesc"))),n(l,88,0,t.ɵunv(l,88,0,n(l,89,0,t.ɵnov(l.parent,0),"accessControl"))),n(l,101,0,t.ɵnov(l,107).ngClassUntouched,t.ɵnov(l,107).ngClassTouched,t.ɵnov(l,107).ngClassPristine,t.ɵnov(l,107).ngClassDirty,t.ɵnov(l,107).ngClassValid,t.ɵnov(l,107).ngClassInvalid,t.ɵnov(l,107).ngClassPending),n(l,110,0,t.ɵunv(l,110,0,n(l,111,0,t.ɵnov(l.parent,0),"userAccessAllItems"))),n(l,116,0,t.ɵnov(l,122).ngClassUntouched,t.ɵnov(l,122).ngClassTouched,t.ɵnov(l,122).ngClassPristine,t.ɵnov(l,122).ngClassDirty,t.ɵnov(l,122).ngClassValid,t.ɵnov(l,122).ngClassInvalid,t.ɵnov(l,122).ngClassPending),n(l,125,0,t.ɵunv(l,125,0,n(l,126,0,t.ɵnov(l.parent,0),"userAccessSelectedCollections")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["deleteBtn",1]],null,8,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.delete()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),t.ɵppd(2,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],[[8,"hidden",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"i",[["class","fa fa-spinner fa-spin fa-lg fa-fw"]],[[8,"hidden",0],[8,"title",0]],null,null,null,null)),t.ɵppd(7,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.deletePromise)},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,2,0,t.ɵnov(l.parent,0),"delete")),""),t.ɵnov(l,0).loading),n(l,4,0,t.ɵnov(l,0).loading),n(l,6,0,!t.ɵnov(l,0).loading,t.ɵinlineInterpolate(1,"",t.ɵunv(l,6,1,n(l,7,0,t.ɵnov(l.parent,0),"loading")),""))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,s.I18nPipe,[d.I18nService]),(n()(),t.ɵeld(1,0,null,null,58,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,55,"div",[["class","modal-dialog"]],null,null,null,null,null)),t.ɵdid(4,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(5,{"modal-lg":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,[["form",1]],null,50,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,8).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,8).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(8,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(10,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(11,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,14,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,4,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(16,null,["\n ","\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(30,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(33,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,21,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,4,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(54,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,4,0,"modal-dialog",n(l,5,0,!e.editMode)),n(l,11,0,e.formPromise),n(l,18,0,e.name),n(l,30,0,e.loading),n(l,33,0,!e.loading),n(l,54,0,e.editMode)},function(n,l){var e=l.component;n(l,7,0,t.ɵnov(l,10).ngClassUntouched,t.ɵnov(l,10).ngClassTouched,t.ɵnov(l,10).ngClassPristine,t.ɵnov(l,10).ngClassDirty,t.ɵnov(l,10).ngClassValid,t.ɵnov(l,10).ngClassInvalid,t.ɵnov(l,10).ngClassPending),n(l,16,0,e.title),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,37,0,t.ɵnov(l,7).loading),n(l,39,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"")),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-add-edit",[],null,null,null,O,m)),t.ɵdid(1,114688,null,0,c.UserAddEditComponent,[p.ApiService,d.I18nService,f.Angulartics2,v.ToasterService,h.CollectionService,g.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserAddEditComponent=m,l.View_UserAddEditComponent_0=O,l.View_UserAddEditComponent_Host_0=N;var E=t.ɵccf("app-user-add-edit",c.UserAddEditComponent,N,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser",onDeletedUser:"onDeletedUser"},[]);l.UserAddEditComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(4),d=e(592),c=e(5),p=e(6),f=e(13),v=e(21),h=e(67),g=t.ɵcrt({encapsulation:2,styles:[],data:{}});function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function y(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,75,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,72,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,69,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,r.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(9,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(18,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,27,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),t.ɵted(32,null,["\n ","\n "])),t.ɵppd(33,1),(n()(),t.ɵeld(34,0,null,null,2,"a",[["href","https://help.bitwarden.com/article/fingerprint-phrase/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(35,null,["\n ",""])),t.ɵppd(36,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵeld(40,0,null,null,1,"code",[],null,null,null,null,null)),(n()(),t.ɵted(41,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,12,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,5,"input",[["class","form-check-input"],["id","dontAskAgain"],["name","DontAskAgain"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,46).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.dontAskAgain=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,r.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.CheckboxControlValueAccessor]),t.ɵdid(48,671744,null,0,r.NgModel,[[2,r.ControlContainer],[8,null],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(50,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,2,"label",[["class","form-check-label"],["for","dontAskAgain"]],null,null,null,null,null)),(n()(),t.ɵted(53,null,["\n ","\n "])),t.ɵppd(54,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(60,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(63,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(66,null,["",""])),t.ɵppd(67,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(71,null,["",""])),t.ɵppd(72,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.name);n(l,48,0,"DontAskAgain",e.dontAskAgain)},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"confirmUser"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"fingerprintEnsureIntegrityVerify"))),n(l,35,0,t.ɵunv(l,35,0,n(l,36,0,t.ɵnov(l,0),"learnMore"))),n(l,41,0,e.fingerprint),n(l,45,0,t.ɵnov(l,50).ngClassUntouched,t.ɵnov(l,50).ngClassTouched,t.ɵnov(l,50).ngClassPristine,t.ɵnov(l,50).ngClassDirty,t.ɵnov(l,50).ngClassValid,t.ɵnov(l,50).ngClassInvalid,t.ɵnov(l,50).ngClassPending),n(l,53,0,t.ɵunv(l,53,0,n(l,54,0,t.ɵnov(l,0),"dontAskFingerprintAgain"))),n(l,60,0,t.ɵnov(l,5).loading),n(l,62,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,62,0,n(l,63,0,t.ɵnov(l,0),"loading")),"")),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l,0),"confirm"))),n(l,71,0,t.ɵunv(l,71,0,n(l,72,0,t.ɵnov(l,0),"cancel")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-confirm",[],null,null,null,y,g)),t.ɵdid(1,114688,null,0,d.UserConfirmComponent,[c.ApiService,o.I18nService,p.Angulartics2,f.ToasterService,v.CryptoService,h.StorageService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserConfirmComponent=g,l.View_UserConfirmComponent_0=y,l.View_UserConfirmComponent_Host_0=C;var b=t.ɵccf("app-user-confirm",d.UserConfirmComponent,C,{name:"name",userId:"userId",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onConfirmedUser:"onConfirmedUser"},[]);l.UserConfirmComponentNgFactory=b},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(7),a=e(3),s=e(19),d=e(18),c=e(593),p=e(5),f=e(6),v=e(13),h=t.ɵcrt({encapsulation:2,styles:[],data:{}});function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.name)})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"i",[["class","fa fa-spinner fa-spin text-muted"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(3,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"loading")),""))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noGroupsInList")))})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Groups[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.groups)},null)}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(7,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(10,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,7,0,!e.groups||!e.groups.length),n(l,10,0,e.groups&&e.groups.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"groupAccessUserDesc")))})}function S(n){return t.ɵvid(0,[t.ɵpid(0,i.I18nPipe,[a.I18nService]),(n()(),t.ɵeld(1,0,null,null,52,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,49,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,46,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,s.ApiActionDirective,[t.ElementRef,d.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(30,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(33,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(39,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.name),n(l,30,0,e.loading),n(l,33,0,!e.loading)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"groupAccess"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,37,0,t.ɵnov(l,5).loading),n(l,39,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"loading")),"")),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"save"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l,0),"cancel")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-user-groups",[],null,null,null,S,h)),t.ɵdid(1,114688,null,0,c.UserGroupsComponent,[p.ApiService,a.I18nService,f.Angulartics2,v.ToasterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_UserGroupsComponent=h,l.View_UserGroupsComponent_0=S,l.View_UserGroupsComponent_Host_0=_;var R=t.ɵccf("app-user-groups",c.UserGroupsComponent,_,{name:"name",organizationUserId:"organizationUserId",organizationId:"organizationId"},{onSavedUser:"onSavedUser"},[]);l.UserGroupsComponentNgFactory=R},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(4),o=e(7),r=e(3),i=e(562),a=e(563),s=e(61),d=e(9),c=t.ɵcrt({encapsulation:2,styles:[],data:{}});function p(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,"li",[["class","list-group-item d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"div",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"div",[["class","text-monospace password-wrapper"]],[[8,"innerHTML",1]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"small",[["class","text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,4,"button",[["class","btn btn-link"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.copy(n.context.$implicit.password)&&t);return t},null,null)),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,0,"i",[["class","fa fa-lg fa-clipboard"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,4,0,t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent.parent,1),l.context.$implicit.password))),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent,2),l.context.$implicit.date,"medium"))),n(l,14,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"copyPassword")),""))})}function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"ul",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,p)),t.ɵdid(3,278528,null,0,u.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,l.component.history)},null)}function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noPasswordsInList")))})}function h(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),t.ɵpid(0,i.ColorPasswordPipe,[]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(3,0,null,null,44,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,41,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,38,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(12,null,["",""])),t.ɵppd(13,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(24,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(27,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(32,1),(n()(),t.ɵted(33,null,["\n ","\n "])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,4,"button",[["class","btn btn-outline-danger"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.clear()&&t);return t},null,null)),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,0,"i",[["class","fa fa-trash-o fa-lg fa-fw"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,24,0,e.history.length),n(l,27,0,!e.history.length)},function(n,l){n(l,12,0,t.ɵunv(l,12,0,n(l,13,0,t.ɵnov(l,0),"passwordHistory"))),n(l,15,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"close")),"")),n(l,31,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,31,0,n(l,32,0,t.ɵnov(l,0),"close")),"")),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"close"))),n(l,38,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"clear")),""))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-generator-history",[],null,null,null,h,c)),t.ɵdid(1,114688,null,0,a.PasswordGeneratorHistoryComponent,[s.PasswordGenerationService,d.PlatformUtilsService,r.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PasswordGeneratorHistoryComponent=c,l.View_PasswordGeneratorHistoryComponent_0=h,l.View_PasswordGeneratorHistoryComponent_Host_0=g;var m=t.ɵccf("app-password-generator-history",a.PasswordGeneratorHistoryComponent,g,{},{},[]);l.PasswordGeneratorHistoryComponentNgFactory=m},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(460),v=e(5),h=e(6),g=e(13),m=e(21),y=e(10),C=t.ɵcrt({encapsulation:2,styles:[],data:{}});function b(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,69,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,66,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,63,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(32,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(33,0,["",""])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,41)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,41).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,41)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,41)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(41,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(42,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(45,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(47,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(48,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(49,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(52,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,8,"button",[["class","btn btn-danger btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(56,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(60,null,["",""])),t.ɵppd(61,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,32,0,"warning");n(l,42,0,"");n(l,45,0,"MasterPasswordHash",e.masterPassword);n(l,48,0,"");n(l,49,0,"")},function(n,l){var e=l.component;n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"purgeVault"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),e.organizationId?"purgeOrgVaultDesc":"purgeVaultDesc"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l,0),"purgeVaultWarning"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"masterPass"))),n(l,40,0,t.ɵnov(l,42).required?"":null,t.ɵnov(l,47).ngClassUntouched,t.ɵnov(l,47).ngClassTouched,t.ɵnov(l,47).ngClassPristine,t.ɵnov(l,47).ngClassDirty,t.ɵnov(l,47).ngClassValid,t.ɵnov(l,47).ngClassInvalid,t.ɵnov(l,47).ngClassPending),n(l,54,0,t.ɵnov(l,5).loading),n(l,56,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,56,0,n(l,57,0,t.ɵnov(l,0),"loading")),"")),n(l,60,0,t.ɵunv(l,60,0,n(l,61,0,t.ɵnov(l,0),"purgeVault"))),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"close")))})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-purge-vault",[],null,null,null,b,C)),t.ɵdid(1,49152,null,0,f.PurgeVaultComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.Router],null,null)],null,null)}l.RenderType_PurgeVaultComponent=C,l.View_PurgeVaultComponent_0=b,l.View_PurgeVaultComponent_Host_0=w;var S=t.ɵccf("app-purge-vault",f.PurgeVaultComponent,w,{organizationId:"organizationId"},{},[]);l.PurgeVaultComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(99),r=e(4),i=e(10),a=e(7),s=e(3),d=e(19),c=e(18),p=e(544),f=e(43),v=e(9),h=e(8),g=e(23),m=t.ɵcrt({encapsulation:2,styles:[],data:{}});function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.component.cipher.name)})}function C(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent,0),"noOrganizationsList")))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"option",[],null,null,null,null,null)),t.ɵdid(1,147456,null,0,u.NgSelectOption,[t.ElementRef,t.Renderer2,[2,u.SelectControlValueAccessor]],{ngValue:[0,"ngValue"]},null),t.ɵdid(2,147456,null,0,u.ɵangular_packages_forms_forms_r,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(n()(),t.ɵted(3,null,["",""]))],function(n,l){n(l,1,0,l.context.$implicit.id),n(l,2,0,l.context.$implicit.id)},function(n,l){n(l,3,0,l.context.$implicit.name)})}function w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,"div",[["class","ml-auto d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!0)&&t);return t},null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"button",[["class","btn btn-link btn-sm py-0"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.selectAll(!1)&&t);return t},null,null)),(n()(),t.ɵted(7,null,["\n ","\n "])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"selectAll"))),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"unselectAll")))})}function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"div",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"noCollectionsInList")))})}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,"tr",[],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.check(n.context.$implicit)&&t);return t},null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,9,"td",[["class","table-list-checkbox"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,6,"input",[["appStopProp",""],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"],[null,"click"]],function(n,l,e){var u=!0;"change"===l&&(u=!1!==t.ɵnov(n,5).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,5).onTouched()&&u);"click"===l&&(u=!1!==t.ɵnov(n,10).onClick(e)&&u);"ngModelChange"===l&&(u=!1!==(n.context.$implicit.checked=e)&&u);return u},null,null)),t.ɵdid(5,16384,null,0,u.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.CheckboxControlValueAccessor]),t.ɵdid(7,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(9,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),t.ɵdid(10,16384,null,0,o.StopPropDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,1,"td",[],null,null,null,null,null)),(n()(),t.ɵted(14,null,["\n ","\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,t.ɵinlineInterpolate(1,"Collection[",l.context.index,"].Checked"),l.context.$implicit.checked)},function(n,l){n(l,4,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,14,0,l.context.$implicit.name)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"table",[["class","table table-hover table-list mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"tbody",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(5,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,5,0,l.component.collections)},null)}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,39,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"label",[["for","organization"]],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",""])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,9,"select",[["class","form-control"],["id","organization"],["name","OrganizationId"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,13).onChange(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,13).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.organizationId=e)&&u);"change"===l&&(u=!1!==o.filterCollections()&&u);return u},null,null)),t.ɵdid(13,16384,null,0,u.SelectControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,u.NG_VALUE_ACCESSOR,function(n){return[n]},[u.SelectControlValueAccessor]),t.ɵdid(15,671744,null,0,u.NgModel,[[2,u.ControlContainer],[8,null],[8,null],[6,u.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,u.NgControl,null,[u.NgModel]),t.ɵdid(17,16384,null,0,u.NgControlStatus,[[4,u.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,b)),t.ɵdid(20,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,8,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(27,null,["",""])),t.ɵppd(28,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),t.ɵdid(31,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(35,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(38,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,15,0,"OrganizationId",e.organizationId),n(l,20,0,e.organizations),n(l,31,0,e.collections&&e.collections.length),n(l,35,0,!e.collections||!e.collections.length),n(l,38,0,e.collections&&e.collections.length)},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent,0),"shareDesc"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent,0),"organization"))),n(l,12,0,t.ɵnov(l,17).ngClassUntouched,t.ɵnov(l,17).ngClassTouched,t.ɵnov(l,17).ngClassPristine,t.ɵnov(l,17).ngClassDirty,t.ɵnov(l,17).ngClassValid,t.ɵnov(l,17).ngClassInvalid,t.ɵnov(l,17).ngClassPending),n(l,27,0,t.ɵunv(l,27,0,n(l,28,0,t.ɵnov(l.parent,0),"collections")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"button",[["class","btn btn-primary btn-submit manual"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),t.ɵdid(1,278528,null,0,r.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{loading:0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(5,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(8,null,["",""])),t.ɵppd(9,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,"btn btn-primary btn-submit manual",n(l,2,0,t.ɵnov(l.parent,5).loading))},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l.parent,5).loading||!e.canSave),n(l,4,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,4,0,n(l,5,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent,0),"save")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"a",[["class","btn btn-primary"],["href","#"],["routerLink","/settings/create-organization"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,l,e){var u=!0;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(1,671744,null,0,i.RouterLinkWithHref,[i.Router,i.ActivatedRoute,r.LocationStrategy],{routerLink:[0,"routerLink"]},null),(n()(),t.ɵted(2,null,["\n ","\n "])),t.ɵppd(3,1)],function(n,l){n(l,1,0,"/settings/create-organization")},function(n,l){n(l,0,0,t.ɵnov(l,1).target,t.ɵnov(l,1).href),n(l,2,0,t.ɵunv(l,2,0,n(l,3,0,t.ɵnov(l.parent,0),"newOrganization")))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,a.I18nPipe,[s.I18nService]),(n()(),t.ɵeld(1,0,null,null,49,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,46,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,43,"form",[["class","modal-content"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,7).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,7).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,16384,null,0,u.ɵangular_packages_forms_forms_bg,[],null,null),t.ɵdid(7,4210688,null,0,u.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,u.ControlContainer,null,[u.NgForm]),t.ɵdid(9,16384,null,0,u.NgControlStatusGroup,[[4,u.ControlContainer]],null,null),t.ɵdid(10,540672,null,0,d.ApiActionDirective,[t.ElementRef,c.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(15,null,["\n ","\n "])),t.ɵppd(16,1),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(18,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,C)),t.ɵdid(30,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(33,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,12,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(38,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(41,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(44,1),(n()(),t.ɵted(45,null,["",""])),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,10,0,e.formPromise),n(l,18,0,e.cipher),n(l,30,0,!e.organizations||!e.organizations.length),n(l,33,0,e.organizations&&e.organizations.length),n(l,38,0,e.organizations&&e.organizations.length),n(l,41,0,!e.organizations||!e.organizations.length)},function(n,l){n(l,5,0,t.ɵnov(l,9).ngClassUntouched,t.ɵnov(l,9).ngClassTouched,t.ɵnov(l,9).ngClassPristine,t.ɵnov(l,9).ngClassDirty,t.ɵnov(l,9).ngClassValid,t.ɵnov(l,9).ngClassInvalid,t.ɵnov(l,9).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l,0),"share"))),n(l,21,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l,0),"close")),"")),n(l,43,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"cancel")),"")),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"cancel")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-share",[],null,null,null,O,m)),t.ɵdid(1,245760,null,0,p.ShareComponent,[f.CollectionService,v.PlatformUtilsService,s.I18nService,h.UserService,g.CipherService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_ShareComponent=m,l.View_ShareComponent_0=O,l.View_ShareComponent_Host_0=N;var E=t.ɵccf("app-vault-share",p.ShareComponent,N,{cipherId:"cipherId",organizationId:"organizationId"},{onSharedCipher:"onSharedCipher"},[]);l.ShareComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(19),h=e(18),g=e(4),m=e(7),y=e(553),C=e(6),b=e(8),w=e(9),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,14,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"img",[["alt",""],["class","float-right"],["src","images/0.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["1. ",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDesc"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorDownloadApp")))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,17,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,8,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(6,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(9,0,["\n ","\n "])),t.ɵppd(10,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(12,0,null,null,0,"img",[["alt",""],["class","float-right"],["src","images/0.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorReaddDesc"))),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorNeedApp")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["2. ",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorScanCode")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,0,"hr",[],null,null,null,null,null))],null,null)}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,15,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[["for","token"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["3. ",""])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","token"],["name","Token"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,7)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,7).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,7)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,7)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.token=e)&&u);return u},null,null)),t.ɵdid(7,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(8,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(11,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(13,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(14,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,8,0,"");n(l,11,0,"Token",e.token);n(l,14,0,"")},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepAuthenticatorEnterCode"))),n(l,6,0,t.ɵnov(l,8).required?"":null,t.ɵnov(l,13).ngClassUntouched,t.ɵnov(l,13).ngClassTouched,t.ɵnov(l,13).ngClassPristine,t.ɵnov(l,13).ngClassDirty,t.ɵnov(l,13).ngClassValid,t.ɵnov(l,13).ngClassInvalid,t.ɵnov(l,13).ngClassPending)})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable")))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable")))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,88,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,62,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(9,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(12,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,28,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,7,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(18,0,null,null,0,"i",[["class","fa-li fa fa-apple"]],null,null,null,null,null)),(n()(),t.ɵted(19,null,["",":\n "])),t.ɵppd(20,1),(n()(),t.ɵeld(21,0,null,null,1,"a",[["href","https://itunes.apple.com/us/app/authy/id494168017?mt=8"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Authy"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,7,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,0,"i",[["class","fa-li fa fa-android"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",":\n "])),t.ɵppd(29,1),(n()(),t.ɵeld(30,0,null,null,1,"a",[["href","https://play.google.com/store/apps/details?id=com.authy.authy"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Authy"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,7,"li",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,0,"i",[["class","fa-li fa fa-windows"]],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",":\n "])),t.ɵppd(38,1),(n()(),t.ɵeld(39,0,null,null,1,"a",[["href","https://www.microsoft.com/p/authenticator/9wzdncrfj3rj"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Microsoft Authenticator"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(45,null,["",""])),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(49,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(52,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,10,"p",[["class","text-center"]],null,null,null,null,null)),t.ɵdid(55,278528,null,0,g.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(56,{"mb-0":0}),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(58,0,null,null,0,"canvas",[["id","qr"]],null,null,null,null,null)),(n()(),t.ɵeld(59,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,2,"code",[],[[8,"title",0]],null,null,null,null)),t.ɵppd(62,1),(n()(),t.ɵted(63,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(67,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(70,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(72,0,null,null,10,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(74,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(75,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(78,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(81,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(84,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(85,null,["",""])),t.ɵppd(86,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,!e.enabled),n(l,12,0,e.enabled),n(l,49,0,!e.enabled),n(l,52,0,e.enabled);n(l,55,0,"text-center",n(l,56,0,e.enabled)),n(l,67,0,!e.enabled),n(l,78,0,!e.enabled),n(l,81,0,e.enabled)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,19,0,t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"iosDevices"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent,0),"androidDevices"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"windowsDevices"))),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent,0),"twoStepAuthenticatorAppsRecommended"))),n(l,61,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l.parent,0),"key")),"")),n(l,63,0,e.key),n(l,72,0,t.ɵnov(l,0).loading),n(l,74,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,74,0,n(l,75,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,85,0,t.ɵunv(l,85,0,n(l,86,0,t.ɵnov(l.parent,0),"close")))})}function P(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,31,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,28,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,25,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,16,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,6,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(29,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,26,0,!e.authed),n(l,29,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"authenticatorAppTitle"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),""))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-authenticator",[],null,null,null,P,S)),t.ɵdid(1,245760,null,0,y.TwoFactorAuthenticatorComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.UserService,w.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorAuthenticatorComponent=S,l.View_TwoFactorAuthenticatorComponent_0=P,l.View_TwoFactorAuthenticatorComponent_Host_0=V;var x=t.ɵccf("app-two-factor-authenticator",y.TwoFactorAuthenticatorComponent,V,{},{onUpdated:"onUpdated"},[]);l.TwoFactorAuthenticatorComponentNgFactory=x},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(19),h=e(18),g=e(4),m=e(7),y=e(463),C=e(6),b=e(9),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,25,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"img",[["alt",""],["class","float-right ml-3"],["src","images/2.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",":"])),t.ɵppd(12,1),(n()(),t.ɵted(13,null,[" ","\n "])),(n()(),t.ɵeld(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",":"])),t.ɵppd(18,1),(n()(),t.ɵted(19,null,[" ","\n "])),(n()(),t.ɵeld(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(22,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(23,null,["",":"])),t.ɵppd(24,1),(n()(),t.ɵted(25,null,[" ","\n "]))],function(n,l){n(l,3,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"))),n(l,13,0,e.ikey),n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"))),n(l,19,0,e.skey),n(l,23,0,t.ɵunv(l,23,0,n(l,24,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"))),n(l,25,0,e.host)})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,59,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"img",[["alt",""],["class","float-right ml-3"],["src","images/2.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"label",[["for","ikey"]],null,null,null,null,null)),(n()(),t.ɵted(11,null,["",""])),t.ɵppd(12,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(14,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","ikey"],["name","IntegrationKey"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,15)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,15).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,15)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,15)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.ikey=e)&&u);return u},null,null)),t.ɵdid(15,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(16,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(19,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(21,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(22,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,2,"label",[["for","skey"]],null,null,null,null,null)),(n()(),t.ɵted(28,null,["",""])),t.ɵppd(29,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(31,0,null,null,8,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control"],["id","skey"],["name","SecretKey"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,32)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,32).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,32)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,32)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.skey=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(33,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(36,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(38,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(39,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,16,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(44,0,null,null,2,"label",[["for","host"]],null,null,null,null,null)),(n()(),t.ɵted(45,null,["",""])),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,9,"input",[["appInputVerbatim",""],["class","form-control"],["id","host"],["name","Host"],["required",""],["type","text"]],[[8,"placeholder",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,49)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,49).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,49)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,49)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.host=e)&&u);return u},null,null)),t.ɵdid(49,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(50,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(53,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(55,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(56,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),t.ɵppd(57,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,16,0,"");n(l,19,0,"IntegrationKey",e.ikey);n(l,22,0,"");n(l,33,0,"");n(l,36,0,"SecretKey",e.skey);n(l,39,0,"");n(l,50,0,"");n(l,53,0,"Host",e.host);n(l,56,0,"")},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoDesc"))),n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoIntegrationKey"))),n(l,14,0,t.ɵnov(l,16).required?"":null,t.ɵnov(l,21).ngClassUntouched,t.ɵnov(l,21).ngClassTouched,t.ɵnov(l,21).ngClassPristine,t.ɵnov(l,21).ngClassDirty,t.ɵnov(l,21).ngClassValid,t.ɵnov(l,21).ngClassInvalid,t.ɵnov(l,21).ngClassPending),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoSecretKey"))),n(l,31,0,t.ɵnov(l,33).required?"":null,t.ɵnov(l,38).ngClassUntouched,t.ɵnov(l,38).ngClassTouched,t.ɵnov(l,38).ngClassPristine,t.ɵnov(l,38).ngClassDirty,t.ɵnov(l,38).ngClassValid,t.ɵnov(l,38).ngClassInvalid,t.ɵnov(l,38).ngClassPending),n(l,45,0,t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l.parent.parent,0),"twoFactorDuoApiHostname"))),n(l,48,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,48,0,n(l,57,0,t.ɵnov(l.parent.parent,0),"ex"))," api-xxxxxxxx.duosecurity.com"),t.ɵnov(l,50).required?"":null,t.ɵnov(l,55).ngClassUntouched,t.ɵnov(l,55).ngClassTouched,t.ɵnov(l,55).ngClassPristine,t.ɵnov(l,55).ngClassDirty,t.ɵnov(l,55).ngClassValid,t.ɵnov(l,55).ngClassInvalid,t.ɵnov(l,55).ngClassPending)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable")))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable")))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,33,"form",[["autocomplete","off"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(9,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(12,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,10,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(23,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled),n(l,12,0,!e.enabled),n(l,23,0,!e.enabled),n(l,26,0,e.enabled)},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,17,0,t.ɵnov(l,0).loading),n(l,19,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close")))})}function O(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["Duo"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(28,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),""))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-duo",[],null,null,null,O,w)),t.ɵdid(1,49152,null,0,y.TwoFactorDuoComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorDuoComponent=w,l.View_TwoFactorDuoComponent_0=O,l.View_TwoFactorDuoComponent_Host_0=N;var E=t.ɵccf("app-two-factor-duo",y.TwoFactorDuoComponent,N,{},{onUpdated:"onUpdated"},[]);l.TwoFactorDuoComponentNgFactory=E},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(19),h=e(18),g=e(4),m=e(7),y=e(554),C=e(6),b=e(9),w=e(8),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(3,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(4,1),(n()(),t.ɵted(5,0,["\n ","\n "])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(9,null,["",":"])),t.ɵppd(10,1),(n()(),t.ɵted(11,null,[" ","\n "]))],function(n,l){n(l,3,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,2,n(l,4,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){var e=l.component;n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled"))),n(l,9,0,t.ɵunv(l,9,0,n(l,10,0,t.ɵnov(l.parent.parent,0),"email"))),n(l,11,0,e.email)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[["class","text-success ml-3"]],null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,2)],null,function(n,l){var e=l.component;n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"verificationCodeEmailSent",e.sentEmail)))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,61,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"p",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,2,"span",[["class","mr-3"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"img",[["alt",""],["class","float-right ml-auto"],["src","images/1.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"label",[["for","email"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["1. ",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,8,"input",[["appInputVerbatim","false"],["class","form-control"],["id","email"],["inputmode","email"],["name","Email"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,18)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,18).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,18)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,18)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.email=e)&&u);return u},null,null)),t.ɵdid(18,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(19,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(22,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(24,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(25,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,15,"div",[["class","mb-3 d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,[["sendBtn",1]],null,9,"button",[["class","btn btn-outline-primary btn-sm btn-submit align-self-start"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.sendEmail()&&t);return t},null,null)),t.ɵdid(31,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(33,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",""])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(42,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,15,"div",[["class","form-group"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(47,0,null,null,2,"label",[["for","token"]],null,null,null,null,null)),(n()(),t.ɵted(48,null,["2. ",""])),t.ɵppd(49,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(51,0,null,null,8,"input",[["appInputVerbatim",""],["class","form-control"],["id","token"],["name","Token"],["required",""],["type","text"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,52)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,52).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,52)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,52)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.token=e)&&u);return u},null,null)),t.ɵdid(52,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(53,16384,null,0,p.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,p.NG_VALIDATORS,function(n){return[n]},[p.RequiredValidator]),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(56,671744,null,0,p.NgModel,[[2,p.ControlContainer],[6,p.NG_VALIDATORS],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(58,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(59,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,19,0,"");n(l,22,0,"Email",e.email);n(l,25,0,"false"),n(l,31,0,e.emailPromise),n(l,42,0,e.sentEmail);n(l,53,0,"");n(l,56,0,"Token",e.token);n(l,59,0,"")},function(n,l){n(l,5,0,t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailDesc"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterEmail"))),n(l,17,0,t.ɵnov(l,19).required?"":null,t.ɵnov(l,24).ngClassUntouched,t.ɵnov(l,24).ngClassTouched,t.ɵnov(l,24).ngClassPristine,t.ɵnov(l,24).ngClassDirty,t.ɵnov(l,24).ngClassValid,t.ɵnov(l,24).ngClassInvalid,t.ɵnov(l,24).ngClassPending),n(l,30,0,t.ɵnov(l,30).loading),n(l,33,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent.parent,0),"sendEmail"))),n(l,48,0,t.ɵunv(l,48,0,n(l,49,0,t.ɵnov(l.parent.parent,0),"twoFactorEmailEnterCode"))),n(l,51,0,t.ɵnov(l,53).required?"":null,t.ɵnov(l,58).ngClassUntouched,t.ɵnov(l,58).ngClassTouched,t.ɵnov(l,58).ngClassPristine,t.ɵnov(l,58).ngClassDirty,t.ɵnov(l,58).ngClassValid,t.ɵnov(l,58).ngClassInvalid,t.ɵnov(l,58).ngClassPending)})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"enable")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"disable")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,33,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,7,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(9,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(12,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(15,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,10,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(20,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(23,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled),n(l,12,0,!e.enabled),n(l,23,0,!e.enabled),n(l,26,0,e.enabled)},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,17,0,t.ɵnov(l,0).loading),n(l,19,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,19,0,n(l,20,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l.parent,0),"close")))})}function E(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,31,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,28,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,25,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,16,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,6,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(26,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(29,16384,null,0,g.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,26,0,!e.authed),n(l,29,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"emailTitle"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),""))})}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-email",[],null,null,null,E,S)),t.ɵdid(1,49152,null,0,y.TwoFactorEmailComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,w.UserService],null,null)],null,null)}l.RenderType_TwoFactorEmailComponent=S,l.View_TwoFactorEmailComponent_0=E,l.View_TwoFactorEmailComponent_Host_0=T;var P=t.ɵccf("app-two-factor-email",y.TwoFactorEmailComponent,T,{},{onUpdated:"onUpdated"},[]);l.TwoFactorEmailComponentNgFactory=P},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(36),o=e(7),r=e(3),i=e(4),a=e(529),s=e(90),d=e(10),c=e(9),p=t.ɵcrt({encapsulation:2,styles:[],data:{}});function f(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,7,"a",[["appStopClick",""],["class","list-group-item list-group-item-action"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,1).onClick(e)&&u);"click"===l&&(u=!1!==o.choose(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"img",[["alt",""],["class","pull-right"]],[[8,"src",4]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,1,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(6,null,["",""])),(n()(),t.ɵted(7,null,["\n ","\n "]))],null,function(n,l){n(l,3,0,"images/two-factor/"+l.context.$implicit.type+".png"),n(l,6,0,l.context.$implicit.name),n(l,7,0,l.context.$implicit.description)})}function v(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),(n()(),t.ɵeld(1,0,null,null,43,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,40,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,37,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["",""])),t.ɵppd(11,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(21,0,null,null,13,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,f)),t.ɵdid(24,278528,null,0,i.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,7,"a",[["appStopClick",""],["class","list-group-item list-group-item-action"],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,27).onClick(e)&&u);"click"===l&&(u=!1!==o.recover()&&u);return u},null,null)),t.ɵdid(27,16384,null,0,u.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(29,0,null,null,2,"h3",[],null,null,null,null,null)),(n()(),t.ɵted(30,null,["",""])),t.ɵppd(31,1),(n()(),t.ɵted(32,null,["\n ","\n "])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,24,0,l.component.providers)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepOptions"))),n(l,13,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"recoveryCodeTitle"))),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"recoveryCodeDesc"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l,0),"close")))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-options",[],null,null,null,v,p)),t.ɵdid(1,114688,null,0,a.TwoFactorOptionsComponent,[s.AuthService,d.Router,r.I18nService,c.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorOptionsComponent=p,l.View_TwoFactorOptionsComponent_0=v,l.View_TwoFactorOptionsComponent_Host_0=h;var g=t.ɵccf("app-two-factor-options",a.TwoFactorOptionsComponent,h,{},{onProviderSelected:"onProviderSelected",onRecoverSelected:"onRecoverSelected"},[]);l.TwoFactorOptionsComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(4),c=e(7),p=e(555),f=t.ɵcrt({encapsulation:2,styles:[],data:{}});function v(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,8,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",":"])),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,1,"code",[["class","text-lg"]],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){var e=l.component;n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryYourCode"))),n(l,7,0,e.code)})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,null,null,null,null,null,null,null)),(n()(),t.ɵted(1,null,["\n ","\n "])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"twoFactorRecoveryNoCode")))})}function m(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"button",[["class","btn btn-primary"],["type","button"]],null,[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.print()&&t);return t},null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"printCode")))})}function y(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,20,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,7,"div",[["class","modal-body text-center"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,h)),t.ɵdid(5,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,g)),t.ɵdid(8,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,8,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,m)),t.ɵdid(14,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(17,null,["",""])),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,5,0,e.code),n(l,8,0,!e.code),n(l,14,0,e.code)},function(n,l){n(l,17,0,t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l.parent,0),"close")))})}function C(n){return t.ɵvid(0,[t.ɵpid(0,c.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,31,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,28,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,25,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,16,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,6,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,2,"small",[],null,null,null,null,null)),(n()(),t.ɵted(13,null,["",""])),t.ɵppd(14,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,v)),t.ɵdid(26,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,y)),t.ɵdid(29,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,26,0,!e.authed),n(l,29,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,13,0,t.ɵunv(l,13,0,n(l,14,0,t.ɵnov(l,0),"recoveryCodeTitle"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),""))})}function b(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-recovery",[],null,null,null,C,f)),t.ɵdid(1,49152,null,0,p.TwoFactorRecoveryComponent,[i.I18nService],null,null)],null,null)}l.RenderType_TwoFactorRecoveryComponent=f,l.View_TwoFactorRecoveryComponent_0=C,l.View_TwoFactorRecoveryComponent_Host_0=b;var w=t.ɵccf("app-two-factor-recovery",p.TwoFactorRecoveryComponent,b,{},{},[]);l.TwoFactorRecoveryComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(4),f=e(36),v=e(19),h=e(18),g=e(12),m=e(7),y=e(556),C=e(6),b=e(9),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,2)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent.parent,0),"u2fkeyX",l.parent.context.index+1)))})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"strong",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""]))],null,function(n,l){n(l,1,0,l.parent.context.$implicit.name)})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,"i",[["class","fa fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵdid(1,278528,null,0,p.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(2,{"fa-check text-success":0,"fa-exclamation-triangle text-warning":1}),t.ɵppd(3,1)],function(n,l){n(l,1,0,"fa fa-fw",n(l,2,0,!l.parent.context.$implicit.compromised,l.parent.context.$implicit.compromised))},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,3,0,t.ɵnov(l.parent.parent.parent,0),l.parent.context.$implicit.compromised?"keyCompromised":"enabled")),""))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spin fa-spinner text-muted fa-fw"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent.parent.parent,0),"loading")),""))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,9,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n -\n "])),(n()(),t.ɵeld(5,0,null,null,3,"a",[["appStopClick",""],["href","#"]],null,[[null,"click"]],function(n,l,e){var u=!0,o=n.component;"click"===l&&(u=!1!==t.ɵnov(n,6).onClick(e)&&u);"click"===l&&(u=!1!==o.remove(n.parent.context.$implicit)&&u);return u},null,null)),t.ɵdid(6,16384,null,0,f.StopClickDirective,[],null,null),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,3,0,t.ɵnov(l.parent,0).loading)},function(n,l){n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent.parent,0),"remove")))})}function N(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["removeKeyBtn",1]],null,16,"li",[],null,null,null,null,null)),t.ɵdid(1,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,0,"i",[["class","fa-li fa fa-key"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(12,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(15,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,l.context.$implicit.removePromise),n(l,6,0,!l.context.$implicit.configured||!l.context.$implicit.name),n(l,9,0,l.context.$implicit.configured&&l.context.$implicit.name),n(l,12,0,l.context.$implicit.configured&&!t.ɵnov(l,0).loading),n(l,15,0,e.keysConfiguredCount>1&&l.context.$implicit.configured)},null)}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,3,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-spinner fa-spin text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "]))],null,null)}function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-spinner fa-spin text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","...\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fWaiting")))})}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-check-circle text-success"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fClickSave")))})}function V(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,0,"i",[["class","fa fa-warning text-danger"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["\n ","\n "])),t.ɵppd(4,1)],null,function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent.parent,0),"twoFactorU2fProblemReadingTryAgain")))})}function x(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,null,null,null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,T)),t.ɵdid(3,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,P)),t.ɵdid(6,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,V)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,3,0,e.u2fListening),n(l,6,0,e.u2fResponse),n(l,9,0,e.u2fError)},null)}function M(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(1,1)],null,function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,0,0,n(l,1,0,t.ɵnov(l.parent.parent,0),"loading")),""))})}function D(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(1,null,["",""])),t.ɵppd(2,1)],null,function(n,l){n(l,1,0,t.ɵunv(l,1,0,n(l,2,0,t.ɵnov(l.parent.parent,0),"save")))})}function U(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["disableBtn",1]],null,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.disable()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.disablePromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys")))})}function F(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,106,"form",[["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,g.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,g.ControlContainer,null,[g.NgForm]),t.ɵdid(3,16384,null,0,g.NgControlStatusGroup,[[4,g.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,80,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(9,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,13,"app-callout",[["type","warning"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(12,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(14,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(18,0,null,0,5,"ul",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(26,0,null,null,0,"img",[["alt",""],["class","float-right ml-5"],["src","images/4.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,4,"ul",[["class","fa-ul"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,N)),t.ɵdid(31,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(37,null,["",":"])),t.ɵppd(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,0,null,null,17,"ol",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(54,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(55,null,["",""])),t.ɵppd(56,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,12,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"label",[["for","name"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,5,"input",[["class","form-control"],["id","name"],["name","Name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,68)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,68).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,68)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,68)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.name=e)&&u);return u},null,null)),t.ɵdid(68,16384,null,0,g.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,g.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,g.NG_VALUE_ACCESSOR,function(n){return[n]},[g.DefaultValueAccessor]),t.ɵdid(70,671744,null,0,g.NgModel,[[2,g.ControlContainer],[8,null],[8,null],[6,g.NG_VALUE_ACCESSOR]],{name:[0,"name"],isDisabled:[1,"isDisabled"],model:[2,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,g.NgControl,null,[g.NgModel]),t.ɵdid(72,16384,null,0,g.NgControlStatus,[[4,g.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,[["readKeyBtn",1]],null,3,"button",[["class","btn btn-outline-secondary mr-2"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.readKey()&&t);return t},null,null)),t.ɵdid(77,540672,null,0,v.ApiActionDirective,[t.ElementRef,h.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(78,null,["\n ","\n "])),t.ɵppd(79,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,E)),t.ɵdid(82,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,x)),t.ɵdid(85,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,17,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,7,"button",[["class","btn btn-primary"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,M)),t.ɵdid(93,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,D)),t.ɵdid(96,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,U)),t.ɵdid(100,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(102,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(103,null,["",""])),t.ɵppd(104,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled);n(l,12,0,"warning"),n(l,31,0,e.keys);n(l,70,0,"Name",!e.keyIdAvailable,e.name),n(l,77,0,e.challengePromise),n(l,82,0,t.ɵnov(l,76).loading),n(l,85,0,!t.ɵnov(l,76).loading),n(l,93,0,t.ɵnov(l,0).loading),n(l,96,0,!t.ɵnov(l,0).loading),n(l,100,0,e.enabled)},function(n,l){var e=l.component;n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorU2fWarning"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorU2fSupportWeb"))),n(l,37,0,t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l.parent,0),"twoFactorU2fAdd"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorU2fGiveName"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorU2fPlugInReadKey"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorU2fTouchButton"))),n(l,55,0,t.ɵunv(l,55,0,n(l,56,0,t.ɵnov(l.parent,0),"twoFactorU2fSaveForm"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"name"))),n(l,67,0,t.ɵnov(l,72).ngClassUntouched,t.ɵnov(l,72).ngClassTouched,t.ɵnov(l,72).ngClassPristine,t.ɵnov(l,72).ngClassDirty,t.ɵnov(l,72).ngClassValid,t.ɵnov(l,72).ngClassInvalid,t.ɵnov(l,72).ngClassPending),n(l,76,0,t.ɵnov(l,76).loading||e.u2fListening||!e.keyIdAvailable),n(l,78,0,t.ɵunv(l,78,0,n(l,79,0,t.ɵnov(l.parent,0),"readKey"))),n(l,90,0,t.ɵnov(l,0).loading||!e.u2fResponse),n(l,103,0,t.ɵunv(l,103,0,n(l,104,0,t.ɵnov(l.parent,0),"close")))})}function L(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["FIDO U2F"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,F)),t.ɵdid(28,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),""))})}function z(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-u2f",[],null,null,null,L,w)),t.ɵdid(1,245760,null,0,y.TwoFactorU2fComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,t.NgZone],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorU2fComponent=w,l.View_TwoFactorU2fComponent_0=L,l.View_TwoFactorU2fComponent_Host_0=z;var G=t.ɵccf("app-two-factor-u2f",y.TwoFactorU2fComponent,z,{},{onUpdated:"onUpdated"},[]);l.TwoFactorU2fComponentNgFactory=G},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(187),o=e(162),r=e(5),i=e(3),a=e(13),s=e(21),d=e(31),c=e(28),p=e(12),f=e(49),v=e(4),h=e(19),g=e(18),m=e(7),y=e(557),C=e(6),b=e(9),w=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"app-two-factor-verify",[],null,[[null,"onAuthed"]],function(n,l,e){var t=!0,u=n.component;"onAuthed"===l&&(t=!1!==u.auth(e)&&t);return t},u.View_TwoFactorVerifyComponent_0,u.RenderType_TwoFactorVerifyComponent)),t.ɵdid(1,49152,null,0,o.TwoFactorVerifyComponent,[r.ApiService,i.I18nService,a.ToasterService,s.CryptoService],{type:[0,"type"],organizationId:[1,"organizationId"]},{onAuthed:"onAuthed"}),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,1,0,e.type,e.organizationId)},null)}function _(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,4,"app-callout",[["icon","fa-check-circle"],["type","success"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(1,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"],icon:[1,"icon"],title:[2,"title"]},null),t.ɵppd(2,1),(n()(),t.ɵted(3,0,["\n ","\n "])),t.ɵppd(4,1)],function(n,l){n(l,1,0,"success","fa-check-circle",t.ɵinlineInterpolate(1,"",t.ɵunv(l,1,2,n(l,2,0,t.ɵnov(l.parent.parent,0),"enabled")),""))},function(n,l){n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"twoStepLoginProviderEnabled")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,6,"input",[["appInputVerbatim",""],["autocomplete","new-password"],["class","form-control"],["type","password"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0;"input"===l&&(u=!1!==t.ɵnov(n,1)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,1).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,1)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,1)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(n.parent.context.$implicit.key=e)&&u);return u},null,null)),t.ɵdid(1,16384,null,0,p.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,p.COMPOSITION_BUFFER_MODE]],null,null),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.DefaultValueAccessor]),t.ɵdid(3,671744,null,0,p.NgModel,[[2,p.ControlContainer],[8,null],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(5,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),t.ɵdid(6,81920,null,0,f.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null)],function(n,l){n(l,3,0,t.ɵinlineInterpolate(1,"Key",l.parent.context.index+1,""),l.parent.context.$implicit.key);n(l,6,0,"")},function(n,l){n(l,0,0,t.ɵinlineInterpolate(1,"key",l.parent.context.index+1,""),t.ɵnov(l,5).ngClassUntouched,t.ɵnov(l,5).ngClassTouched,t.ɵnov(l,5).ngClassPristine,t.ɵnov(l,5).ngClassDirty,t.ɵnov(l,5).ngClassValid,t.ɵnov(l,5).ngClassInvalid,t.ɵnov(l,5).ngClassPending)})}function I(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,10,"div",[["class","d-flex"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,1,"span",[["class","mr-2"]],null,null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,4,"button",[["class","btn btn-link text-danger ml-auto"],["type","button"]],[[8,"title",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.remove(n.parent.context.$implicit)&&t);return t},null,null)),t.ɵppd(6,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,0,"i",[["class","fa fa-minus-circle fa-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],null,function(n,l){n(l,3,0,l.parent.context.$implicit.existingKey),n(l,5,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,5,0,n(l,6,0,t.ɵnov(l.parent.parent.parent,0),"remove")),""))})}function k(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,11,"div",[["class","form-group col-6"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(2,0,null,null,2,"label",[],[[8,"htmlFor",0]],null,null,null,null)),(n()(),t.ɵted(3,null,["",""])),t.ɵppd(4,2),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,R)),t.ɵdid(7,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,I)),t.ɵdid(10,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,7,0,!l.context.$implicit.existingKey),n(l,10,0,l.context.$implicit.existingKey)},function(n,l){n(l,2,0,t.ɵinlineInterpolate(1,"key",l.context.index+1,"")),n(l,3,0,t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"yubikeyX",l.context.index+1)))})}function A(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["disableBtn",1]],null,9,"button",[["class","btn btn-outline-secondary btn-submit"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],function(n,l,e){var t=!0,u=n.component;"click"===l&&(t=!1!==u.disable()&&t);return t},null,null)),t.ɵdid(1,540672,null,0,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(4,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(7,null,["",""])),t.ɵppd(8,1),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){n(l,1,0,l.component.disablePromise)},function(n,l){n(l,0,0,t.ɵnov(l,0).loading),n(l,3,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,3,0,n(l,4,0,t.ɵnov(l.parent.parent,0),"loading")),"")),n(l,7,0,t.ɵunv(l,7,0,n(l,8,0,t.ɵnov(l.parent.parent,0),"disableAllKeys")))})}function O(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,[["form",1]],null,105,"form",[["autocomplete","off"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,1).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,1).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(1,4210688,null,0,p.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,p.ControlContainer,null,[p.NgForm]),t.ɵdid(3,16384,null,0,p.NgControlStatusGroup,[[4,p.ControlContainer]],null,null),t.ɵdid(4,540672,null,0,h.ApiActionDirective,[t.ElementRef,g.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,78,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,_)),t.ɵdid(9,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,17,"app-callout",[["type","warning"]],null,null,null,d.View_CalloutComponent_0,d.RenderType_CalloutComponent)),t.ɵdid(12,114688,null,0,c.CalloutComponent,[i.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(14,0,null,0,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(15,null,["",""])),t.ɵppd(16,1),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(18,0,null,0,9,"ul",[["class","mb-0"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(21,null,["",""])),t.ɵppd(22,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(24,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(25,null,["",""])),t.ɵppd(26,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,0,"img",[["alt",""],["class","float-right"],["src","images/3.png"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(32,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),t.ɵted(33,null,["",":"])),t.ɵppd(34,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,17,"ol",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(38,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(39,null,["",""])),t.ɵppd(40,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(42,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(43,null,["",""])),t.ɵppd(44,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(46,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(47,null,["",""])),t.ɵppd(48,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(50,0,null,null,2,"li",[],null,null,null,null,null)),(n()(),t.ɵted(51,null,["",""])),t.ɵppd(52,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(55,0,null,null,0,"hr",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,4,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,k)),t.ɵdid(60,278528,null,0,v.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(63,0,null,null,2,"strong",[["class","d-block mb-2"]],null,null,null,null,null)),(n()(),t.ɵted(64,null,["",""])),t.ɵppd(65,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(67,0,null,null,12,"div",[["class","form-check"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,5,"input",[["class","form-check-input"],["id","nfc"],["name","Nfc"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(n,l,e){var u=!0,o=n.component;"change"===l&&(u=!1!==t.ɵnov(n,70).onChange(e.target.checked)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,70).onTouched()&&u);"ngModelChange"===l&&(u=!1!==(o.nfc=e)&&u);return u},null,null)),t.ɵdid(70,16384,null,0,p.CheckboxControlValueAccessor,[t.Renderer2,t.ElementRef],null,null),t.ɵprd(1024,null,p.NG_VALUE_ACCESSOR,function(n){return[n]},[p.CheckboxControlValueAccessor]),t.ɵdid(72,671744,null,0,p.NgModel,[[2,p.ControlContainer],[8,null],[8,null],[6,p.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,p.NgControl,null,[p.NgModel]),t.ɵdid(74,16384,null,0,p.NgControlStatus,[[4,p.NgControl]],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(76,0,null,null,2,"label",[["class","form-check-label"],["for","nfc"]],null,null,null,null,null)),(n()(),t.ɵted(77,null,["",""])),t.ɵppd(78,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(81,0,null,null,2,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(n()(),t.ɵted(82,null,["",""])),t.ɵppd(83,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(86,0,null,null,18,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(88,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(90,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(91,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(93,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(94,null,["",""])),t.ɵppd(95,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,A)),t.ɵdid(99,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(101,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(102,null,["",""])),t.ɵppd(103,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "]))],function(n,l){var e=l.component;n(l,4,0,e.formPromise),n(l,9,0,e.enabled);n(l,12,0,"warning"),n(l,60,0,e.keys);n(l,72,0,"Nfc",e.nfc),n(l,99,0,e.enabled)},function(n,l){n(l,0,0,t.ɵnov(l,3).ngClassUntouched,t.ɵnov(l,3).ngClassTouched,t.ɵnov(l,3).ngClassPristine,t.ɵnov(l,3).ngClassDirty,t.ɵnov(l,3).ngClassValid,t.ɵnov(l,3).ngClassInvalid,t.ɵnov(l,3).ngClassPending),n(l,15,0,t.ɵunv(l,15,0,n(l,16,0,t.ɵnov(l.parent,0),"twoFactorYubikeyWarning"))),n(l,21,0,t.ɵunv(l,21,0,n(l,22,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportUsb"))),n(l,25,0,t.ɵunv(l,25,0,n(l,26,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportMobile"))),n(l,33,0,t.ɵunv(l,33,0,n(l,34,0,t.ɵnov(l.parent,0),"twoFactorYubikeyAdd"))),n(l,39,0,t.ɵunv(l,39,0,n(l,40,0,t.ɵnov(l.parent,0),"twoFactorYubikeyPlugIn"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l.parent,0),"twoFactorYubikeySelectKey"))),n(l,47,0,t.ɵunv(l,47,0,n(l,48,0,t.ɵnov(l.parent,0),"twoFactorYubikeyTouchButton"))),n(l,51,0,t.ɵunv(l,51,0,n(l,52,0,t.ɵnov(l.parent,0),"twoFactorYubikeySaveForm"))),n(l,64,0,t.ɵunv(l,64,0,n(l,65,0,t.ɵnov(l.parent,0),"nfcSupport"))),n(l,69,0,t.ɵnov(l,74).ngClassUntouched,t.ɵnov(l,74).ngClassTouched,t.ɵnov(l,74).ngClassPristine,t.ɵnov(l,74).ngClassDirty,t.ɵnov(l,74).ngClassValid,t.ɵnov(l,74).ngClassInvalid,t.ɵnov(l,74).ngClassPending),n(l,77,0,t.ɵunv(l,77,0,n(l,78,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfc"))),n(l,82,0,t.ɵunv(l,82,0,n(l,83,0,t.ɵnov(l.parent,0),"twoFactorYubikeySupportsNfcDesc"))),n(l,88,0,t.ɵnov(l,0).loading),n(l,90,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,90,0,n(l,91,0,t.ɵnov(l.parent,0),"loading")),"")),n(l,94,0,t.ɵunv(l,94,0,n(l,95,0,t.ɵnov(l.parent,0),"save"))),n(l,102,0,t.ɵunv(l,102,0,n(l,103,0,t.ɵnov(l.parent,0),"close")))})}function N(n){return t.ɵvid(0,[t.ɵpid(0,m.I18nPipe,[i.I18nService]),(n()(),t.ɵeld(1,0,null,null,30,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,27,"div",[["class","modal-dialog modal-lg"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,24,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,15,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,5,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(10,null,["\n ","\n "])),t.ɵppd(11,1),(n()(),t.ɵeld(12,0,null,null,1,"small",[],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["YubiKey"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(16,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(17,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(19,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,S)),t.ɵdid(25,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,O)),t.ɵdid(28,16384,null,0,v.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,25,0,!e.authed),n(l,28,0,e.authed)},function(n,l){n(l,10,0,t.ɵunv(l,10,0,n(l,11,0,t.ɵnov(l,0),"twoStepLogin"))),n(l,16,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,16,0,n(l,17,0,t.ɵnov(l,0),"close")),""))})}function E(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-yubikey",[],null,null,null,N,w)),t.ɵdid(1,49152,null,0,y.TwoFactorYubiKeyComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService],null,null)],null,null)}l.RenderType_TwoFactorYubiKeyComponent=w,l.View_TwoFactorYubiKeyComponent_0=N,l.View_TwoFactorYubiKeyComponent_Host_0=E;var T=t.ɵccf("app-two-factor-yubikey",y.TwoFactorYubiKeyComponent,E,{},{onUpdated:"onUpdated"},[]);l.TwoFactorYubiKeyComponentNgFactory=T},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(7),o=e(3),r=e(12),i=e(19),a=e(18),s=e(31),d=e(28),c=e(96),p=e(49),f=e(537),v=e(5),h=e(6),g=e(13),m=e(21),y=e(20),C=e(62),b=e(55),w=e(23),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function _(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,74,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,71,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,[["form",1]],null,68,"form",[["class","modal-content"],["ngNativeValidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],function(n,l,e){var u=!0,o=n.component;"submit"===l&&(u=!1!==t.ɵnov(n,6).onSubmit(e)&&u);"reset"===l&&(u=!1!==t.ɵnov(n,6).onReset()&&u);"ngSubmit"===l&&(u=!1!==o.submit()&&u);return u},null,null)),t.ɵdid(6,4210688,null,0,r.NgForm,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),t.ɵprd(2048,null,r.ControlContainer,null,[r.NgForm]),t.ɵdid(8,16384,null,0,r.NgControlStatusGroup,[[4,r.ControlContainer]],null,null),t.ɵdid(9,540672,null,0,i.ApiActionDirective,[t.ElementRef,a.ValidationService],{appApiAction:[0,"appApiAction"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(11,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(13,0,null,null,2,"h2",[["class","modal-title"]],null,null,null,null,null)),(n()(),t.ɵted(14,null,["",""])),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,0,null,null,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(18,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(20,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["×"])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,30,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(27,0,null,null,7,"p",[],null,null,null,null,null)),(n()(),t.ɵted(28,null,[""," ","\n "])),t.ɵppd(29,1),t.ɵppd(30,1),(n()(),t.ɵeld(31,0,null,null,2,"a",[["href","https://help.bitwarden.com/article/update-encryption-key/"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(n()(),t.ɵted(32,null,["",""])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,0,null,null,3,"app-callout",[["type","warning"]],null,null,null,s.View_CalloutComponent_0,s.RenderType_CalloutComponent)),t.ɵdid(37,114688,null,0,d.CalloutComponent,[o.I18nService],{type:[0,"type"]},null),(n()(),t.ɵted(38,0,["",""])),t.ɵppd(39,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,2,"label",[["for","masterPassword"]],null,null,null,null,null)),(n()(),t.ɵted(42,null,["",""])),t.ɵppd(43,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(45,0,null,null,9,"input",[["appAutofocus",""],["appInputVerbatim",""],["class","form-control"],["id","masterPassword"],["name","MasterPasswordHash"],["required",""],["type","password"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(n,l,e){var u=!0,o=n.component;"input"===l&&(u=!1!==t.ɵnov(n,46)._handleInput(e.target.value)&&u);"blur"===l&&(u=!1!==t.ɵnov(n,46).onTouched()&&u);"compositionstart"===l&&(u=!1!==t.ɵnov(n,46)._compositionStart()&&u);"compositionend"===l&&(u=!1!==t.ɵnov(n,46)._compositionEnd(e.target.value)&&u);"ngModelChange"===l&&(u=!1!==(o.masterPassword=e)&&u);return u},null,null)),t.ɵdid(46,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(47,16384,null,0,r.RequiredValidator,[],{required:[0,"required"]},null),t.ɵprd(1024,null,r.NG_VALIDATORS,function(n){return[n]},[r.RequiredValidator]),t.ɵprd(1024,null,r.NG_VALUE_ACCESSOR,function(n){return[n]},[r.DefaultValueAccessor]),t.ɵdid(50,671744,null,0,r.NgModel,[[2,r.ControlContainer],[6,r.NG_VALIDATORS],[8,null],[6,r.NG_VALUE_ACCESSOR]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),t.ɵprd(2048,null,r.NgControl,null,[r.NgModel]),t.ɵdid(52,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(53,81920,null,0,c.AutofocusDirective,[t.ElementRef],{appAutofocus:[0,"appAutofocus"]},null),t.ɵdid(54,81920,null,0,p.InputVerbatimDirective,[t.ElementRef,t.Renderer2],{appInputVerbatim:[0,"appInputVerbatim"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(57,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(59,0,null,null,8,"button",[["class","btn btn-primary btn-submit"],["type","submit"]],[[8,"disabled",0]],null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(61,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(62,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(64,0,null,null,2,"span",[],null,null,null,null,null)),(n()(),t.ɵted(65,null,["",""])),t.ɵppd(66,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(69,0,null,null,2,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],null,null,null,null,null)),(n()(),t.ɵted(70,null,["",""])),t.ɵppd(71,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){var e=l.component;n(l,9,0,e.formPromise);n(l,37,0,"warning");n(l,47,0,"");n(l,50,0,"MasterPasswordHash",e.masterPassword);n(l,53,0,"");n(l,54,0,"")},function(n,l){n(l,5,0,t.ɵnov(l,8).ngClassUntouched,t.ɵnov(l,8).ngClassTouched,t.ɵnov(l,8).ngClassPristine,t.ɵnov(l,8).ngClassDirty,t.ɵnov(l,8).ngClassValid,t.ɵnov(l,8).ngClassInvalid,t.ɵnov(l,8).ngClassPending),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"updateEncryptionKey"))),n(l,17,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,17,0,n(l,18,0,t.ɵnov(l,0),"close")),"")),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"updateEncryptionKeyShortDesc")),t.ɵunv(l,28,1,n(l,30,0,t.ɵnov(l,0),"updateEncryptionKeyDesc"))),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"learnMore"))),n(l,38,0,t.ɵunv(l,38,0,n(l,39,0,t.ɵnov(l,0),"updateEncryptionKeyWarning"))),n(l,42,0,t.ɵunv(l,42,0,n(l,43,0,t.ɵnov(l,0),"masterPass"))),n(l,45,0,t.ɵnov(l,47).required?"":null,t.ɵnov(l,52).ngClassUntouched,t.ɵnov(l,52).ngClassTouched,t.ɵnov(l,52).ngClassPristine,t.ɵnov(l,52).ngClassDirty,t.ɵnov(l,52).ngClassValid,t.ɵnov(l,52).ngClassInvalid,t.ɵnov(l,52).ngClassPending),n(l,59,0,t.ɵnov(l,5).loading),n(l,61,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,61,0,n(l,62,0,t.ɵnov(l,0),"loading")),"")),n(l,65,0,t.ɵunv(l,65,0,n(l,66,0,t.ɵnov(l,0),"updateEncryptionKey"))),n(l,70,0,t.ɵunv(l,70,0,n(l,71,0,t.ɵnov(l,0),"close")))})}function R(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-update-key",[],null,null,null,_,S)),t.ɵdid(1,49152,null,0,f.UpdateKeyComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService,C.SyncService,b.FolderService,w.CipherService],null,null)],null,null)}l.RenderType_UpdateKeyComponent=S,l.View_UpdateKeyComponent_0=_,l.View_UpdateKeyComponent_Host_0=R;var I=t.ɵccf("app-update-key",f.UpdateKeyComponent,R,{},{},[]);l.UpdateKeyComponentNgFactory=I},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(910),o=e(113),r=e(13),i=e(10),a=e(524),s=e(432),d=e(110),c=e(8),p=e(70),f=e(55),v=e(434),h=e(62),g=e(61),m=e(23),y=e(90),C=e(6),b=e(3),w=e(9),S=e(219),_=e(67),R=e(21),I=e(43),k=e(41),A=e(125),O=e(433),N=e(220),E=t.ɵcrt({encapsulation:2,styles:[],data:{}});function T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"toaster-container",[],null,null,null,u.View_ToasterContainerComponent_0,u.RenderType_ToasterContainerComponent)),t.ɵdid(1,245760,null,0,o.ToasterContainerComponent,[r.ToasterService,t.ChangeDetectorRef,t.NgZone],{toasterconfig:[0,"toasterconfig"]},null),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵeld(3,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(4,212992,null,0,i.RouterOutlet,[i.ChildrenOutletContexts,t.ViewContainerRef,t.ComponentFactoryResolver,[8,null],t.ChangeDetectorRef],null,null),(n()(),t.ɵted(-1,null,["\n"]))],function(n,l){n(l,1,0,l.component.toasterConfig),n(l,4,0)},null)}function P(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-root",[],null,null,null,T,E)),t.ɵdid(1,245760,null,0,a.AppComponent,[s.Angulartics2GoogleAnalytics,d.BroadcasterService,c.UserService,p.TokenService,f.FolderService,v.SettingsService,h.SyncService,g.PasswordGenerationService,m.CipherService,y.AuthService,i.Router,C.Angulartics2,r.ToasterService,b.I18nService,w.PlatformUtilsService,t.NgZone,S.LockService,_.StorageService,R.CryptoService,I.CollectionService,k.DomSanitizer,A.SearchService,O.NotificationsService,N.RouterService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AppComponent=E,l.View_AppComponent_0=T,l.View_AppComponent_Host_0=P;var V=t.ɵccf("app-root",a.AppComponent,P,{},{},[]);l.AppComponentNgFactory=V},,,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]=0?this.browserCache=r.DeviceType.OperaBrowser:-1!==navigator.userAgent.indexOf(" Edge/")?this.browserCache=r.DeviceType.EdgeBrowser:-1!==navigator.userAgent.indexOf(" Vivaldi/")?this.browserCache=r.DeviceType.VivaldiBrowser:-1!==navigator.userAgent.indexOf(" Safari/")&&-1===navigator.userAgent.indexOf("Chrome")?this.browserCache=r.DeviceType.SafariBrowser:window.chrome&&-1!==navigator.userAgent.indexOf(" Chrome/")?this.browserCache=r.DeviceType.ChromeBrowser:-1!==navigator.userAgent.indexOf(" Trident/")?this.browserCache=r.DeviceType.IEBrowser:this.browserCache=r.DeviceType.UnknownBrowser,this.browserCache)},n.prototype.getDeviceString=function(){return r.DeviceType[this.getDevice()].toLowerCase().replace("browser","")},n.prototype.isFirefox=function(){return this.getDevice()===r.DeviceType.FirefoxBrowser},n.prototype.isChrome=function(){return this.getDevice()===r.DeviceType.ChromeBrowser},n.prototype.isEdge=function(){return this.getDevice()===r.DeviceType.EdgeBrowser},n.prototype.isOpera=function(){return this.getDevice()===r.DeviceType.OperaBrowser},n.prototype.isVivaldi=function(){return this.getDevice()===r.DeviceType.VivaldiBrowser},n.prototype.isSafari=function(){return this.getDevice()===r.DeviceType.SafariBrowser},n.prototype.isIE=function(){return this.getDevice()===r.DeviceType.IEBrowser},n.prototype.isMacAppStore=function(){return!1},n.prototype.analyticsId=function(){return"UA-81915606-3"},n.prototype.isViewOpen=function(){return!1},n.prototype.lockTimeout=function(){return null},n.prototype.launchUri=function(n,l){var e=document.createElement("a");e.href=n,e.target="_blank",e.rel="noreferrer noopener",e.classList.add("d-none"),document.body.appendChild(e),e.click(),document.body.removeChild(e)},n.prototype.saveFile=function(n,l,e,t){var u=null,o=null,r=t.toLowerCase(),i=!0;if(r.endsWith(".pdf")?(o="application/pdf",i=!1):r.endsWith(".xlsx")?o="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":r.endsWith(".docx")?o="application/vnd.openxmlformats-officedocument.wordprocessingml.document":r.endsWith(".pptx")?o="application/vnd.openxmlformats-officedocument.presentationml.presentation":r.endsWith(".csv")?o="text/csv":r.endsWith(".png")?o="image/png":r.endsWith(".jpg")||r.endsWith(".jpeg")?o="image/jpeg":r.endsWith(".gif")&&(o="image/gif"),null!=o&&null==(e=e||{}).type&&(e.type=o),u=null==e||this.isIE()?new Blob([l]):new Blob([l],e),navigator.msSaveOrOpenBlob)navigator.msSaveBlob(u,t);else{var a=n.document.createElement("a");i?a.download=t:a.target="_blank",a.href=n.URL.createObjectURL(u),a.style.position="fixed",n.document.body.appendChild(a),a.click(),n.document.body.removeChild(a)}},n.prototype.getApplicationVersion=function(){return"2.8.0"},n.prototype.supportsU2f=function(n){return null!=n&&null!=n.u2f||(this.isChrome()||this.isOpera()||this.isVivaldi())&&!i.Utils.isMobileBrowser},n.prototype.supportsDuo=function(){return!0},n.prototype.showToast=function(n,l,e,t){this.messagingService.send("showToast",{text:e,title:l,type:n,options:t})},n.prototype.showDialog=function(n,l,e,o,r){return t(this,void 0,void 0,function(){var t,i,s,d,c,p;return u(this,function(u){switch(u.label){case 0:if(t=[null==e?this.i18nService.t("ok"):e],null!=o&&t.unshift(o),i=document.createElement("div"),null!=r){switch((s=document.createElement("i")).classList.add("swal-custom-icon"),r){case"success":s.classList.add("fa","fa-check","text-success");break;case"warning":s.classList.add("fa","fa-warning","text-warning");break;case"error":s.classList.add("fa","fa-bolt","text-danger");break;case"info":s.classList.add("fa","fa-info-circle","text-info")}s.classList.contains("fa")&&i.appendChild(s)}return null!=l&&((d=document.createElement("div")).classList.add("swal-title"),d.appendChild(document.createTextNode(l)),i.appendChild(d)),null!=n&&((c=document.createElement("div")).classList.add("swal-text"),c.appendChild(document.createTextNode(n)),i.appendChild(c)),t.length>1?[4,a({content:{element:i},buttons:t})]:[3,2];case 1:return p=u.sent(),[3,4];case 2:return[4,a({content:{element:i},button:t[0]})];case 3:p=u.sent(),u.label=4;case 4:return[2,p]}})})},n.prototype.eventTrack=function(n,l,e){this.messagingService.send("analyticsEventTrack",{action:n,label:l,options:e})},n.prototype.isDev=function(){return!1},n.prototype.isSelfHost=function(){return"true"===(!1).toString()},n.prototype.copyToClipboard=function(n,l){var e=window,t=window.document;if(l&&(l.window||l.win)?t=(e=l.window||l.win).document:l&&l.doc&&(t=l.doc),e.clipboardData&&e.clipboardData.setData)e.clipboardData.setData("Text",n);else if(t.queryCommandSupported&&t.queryCommandSupported("copy")){var u=t.createElement("textarea");u.textContent=n,u.style.position="fixed";var o=t.body;this.isFirefox()&&t.body.classList.contains("modal-open")&&(o=t.body.querySelector(".modal")),o.appendChild(u),u.select();try{t.execCommand("copy")}catch(n){console.warn("Copy to clipboard failed.",n)}finally{o.removeChild(u)}}},n}();l.WebPlatformUtilsService=s},function(n,l,e){"use strict";var t,u=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},o=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1&&(n=n.substring(0,l)),0!==n.indexOf("!/")&&0!==n.indexOf("#/")||(n=n.substring(1));var e=[];return n.split("/").forEach(function(n){n.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)?e.push("__guid__"):e.push(n)}),encodeURIComponent(e.join("/"))},n}();l.Analytics=s},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&n.data.forEach(function(n){var t=new a.Collection(new d.CollectionData(n));l.push(t.decrypt().then(function(n){e.push(n)}))}),Promise.all(l)})),f.push(this.apiService.getCiphersOrganization(n).then(function(n){var l=[];return null!=n&&null!=n.data&&n.data.length>0&&n.data.forEach(function(n){var e=new i.Cipher(new s.CipherData(n));l.push(e.decrypt().then(function(n){t.push(n)}))}),Promise.all(l)})),[4,Promise.all(f)];case 1:return u.sent(),"csv"===l?(v=new Map,e.forEach(function(n){v.set(n.id,n)}),h=[],t.forEach(function(n){if(n.type===r.CipherType.Login||n.type===r.CipherType.SecureNote){var l={collections:[]};null!=n.collectionIds&&(l.collections=n.collectionIds.filter(function(n){return v.has(n)}).map(function(n){return v.get(n).name})),m.buildCommonCipher(l,n),h.push(l)}}),[2,o.unparse(h)]):(g={collections:[],items:[]},e.forEach(function(n){var l=new p.CollectionWithId;l.build(n),g.collections.push(l)}),t.forEach(function(n){var l=new c.CipherWithIds;l.build(n),g.items.push(l)}),[2,JSON.stringify(g,null," ")])}})})},n.prototype.getFileName=function(n,l){void 0===n&&(n=null),void 0===l&&(l="csv");var e=new Date,t=e.getFullYear()+""+this.padNumber(e.getMonth()+1,2)+this.padNumber(e.getDate(),2)+this.padNumber(e.getHours(),2)+this.padNumber(e.getMinutes(),2)+this.padNumber(e.getSeconds(),2);return"bitwarden"+(n?"_"+n:"")+"_export_"+t+"."+l},n.prototype.padNumber=function(n,l,e){void 0===e&&(e="0");var t=n.toString();return t.length>=l?t:new Array(l-t.length+1).join(e)+t},n.prototype.buildCommonCipher=function(n,l){switch(n.type=null,n.name=l.name,n.notes=l.notes,n.fields=null,n.login_uri=null,n.login_username=null,n.login_password=null,n.login_totp=null,l.fields&&l.fields.forEach(function(l){n.fields?n.fields+="\n":n.fields="",n.fields+=(l.name||"")+": "+l.value}),l.type){case r.CipherType.Login:n.type="login",n.login_username=l.login.username,n.login_password=l.login.password,n.login_totp=l.login.totp,l.login.uris&&(n.login_uri=[],l.login.uris.forEach(function(l){n.login_uri.push(l.uri)}));break;case r.CipherType.SecureNote:n.type="note";break;default:return}return n},n}();l.ExportService=v},,function(n,l){},,function(n,l){},,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(39),u=e(126),o=e(978),r=e(979),i=e(980),a=e(981),s=e(983),d=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId=null,l.folderId=null,l.type=t.CipherType.Login,l.name="Item name",l.notes="Some notes about this item.",l.favorite=!1,l.fields=[],l.login=null,l.secureNote=null,l.card=null,l.identity=null,l},n.toView=function(n,l){switch(void 0===l&&(l=new u.CipherView),l.type=n.type,l.folderId=n.folderId,null==l.organizationId&&(l.organizationId=n.organizationId),l.name=n.name,l.notes=n.notes,l.favorite=n.favorite,null!=n.fields&&(l.fields=n.fields.map(function(n){return r.Field.toView(n)})),n.type){case t.CipherType.Login:l.login=a.Login.toView(n.login);break;case t.CipherType.SecureNote:l.secureNote=s.SecureNote.toView(n.secureNote);break;case t.CipherType.Card:l.card=o.Card.toView(n.card);break;case t.CipherType.Identity:l.identity=i.Identity.toView(n.identity)}return l},n.prototype.build=function(n){switch(this.organizationId=n.organizationId,this.folderId=n.folderId,this.type=n.type,this.name=n.name,this.notes=n.notes,this.favorite=n.favorite,null!=n.fields&&(this.fields=n.fields.map(function(n){return new r.Field(n)})),n.type){case t.CipherType.Login:this.login=new a.Login(n.login);break;case t.CipherType.SecureNote:this.secureNote=new s.SecureNote(n.secureNote);break;case t.CipherType.Card:this.card=new o.Card(n.card);break;case t.CipherType.Identity:this.identity=new i.Identity(n.identity)}},n}();l.Cipher=d},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(105),u=function(){function n(n){null!=n&&(this.cardholderName=n.cardholderName,this.brand=n.brand,this.number=n.number,this.expMonth=n.expMonth,this.expYear=n.expYear,this.code=n.code)}return n.template=function(){var l=new n;return l.cardholderName="John Doe",l.brand="visa",l.number="4242424242424242",l.expMonth="04",l.expYear="2023",l.code="123",l},n.toView=function(n,l){return void 0===l&&(l=new t.CardView),l.cardholderName=n.cardholderName,l.brand=n.brand,l.number=n.number,l.expMonth=n.expMonth,l.expYear=n.expYear,l.code=n.code,l},n}();l.Card=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(183),u=e(184),o=function(){function n(n){null!=n&&(this.name=n.name,this.value=n.value,this.type=n.type)}return n.template=function(){var l=new n;return l.name="Field name",l.value="Some value",l.type=t.FieldType.Text,l},n.toView=function(n,l){return void 0===l&&(l=new u.FieldView),l.type=n.type,l.value=n.value,l.name=n.name,l},n}();l.Field=o},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(185),u=function(){function n(n){null!=n&&(this.title=n.title,this.firstName=n.firstName,this.middleName=n.middleName,this.lastName=n.lastName,this.address1=n.address1,this.address2=n.address2,this.address3=n.address3,this.city=n.city,this.state=n.state,this.postalCode=n.postalCode,this.country=n.country,this.company=n.company,this.email=n.email,this.phone=n.phone,this.ssn=n.ssn,this.username=n.username,this.passportNumber=n.passportNumber,this.licenseNumber=n.licenseNumber)}return n.template=function(){var l=new n;return l.title="Mr",l.firstName="John",l.middleName="William",l.lastName="Doe",l.address1="123 Any St",l.address2="Apt #123",l.address3=null,l.city="New York",l.state="NY",l.postalCode="10001",l.country="US",l.company="Acme Inc.",l.email="john@company.com",l.phone="5555551234",l.ssn="000-123-4567",l.username="jdoe",l.passportNumber="US-123456789",l.licenseNumber="D123-12-123-12333",l},n.toView=function(n,l){return void 0===l&&(l=new t.IdentityView),l.title=n.title,l.firstName=n.firstName,l.middleName=n.middleName,l.lastName=n.lastName,l.address1=n.address1,l.address2=n.address2,l.address3=n.address3,l.city=n.city,l.state=n.state,l.postalCode=n.postalCode,l.country=n.country,l.company=n.company,l.email=n.email,l.phone=n.phone,l.ssn=n.ssn,l.username=n.username,l.passportNumber=n.passportNumber,l.licenseNumber=n.licenseNumber,l},n}();l.Identity=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(982),u=e(158),o=function(){function n(n){null!=n&&(null!=n.uris&&(this.uris=n.uris.map(function(n){return new t.LoginUri(n)})),this.username=n.username,this.password=n.password,this.totp=n.totp)}return n.template=function(){var l=new n;return l.uris=[],l.username="jdoe",l.password="myp@ssword123",l.totp="JBSWY3DPEHPK3PXP",l},n.toView=function(n,l){return void 0===l&&(l=new u.LoginView),null!=n.uris&&(l.uris=n.uris.map(function(n){return t.LoginUri.toView(n)})),l.username=n.username,l.password=n.password,l.totp=n.totp,l},n}();l.Login=o},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(223),u=function(){function n(n){this.match=null,null!=n&&(this.uri=n.uri,this.match=n.match)}return n.template=function(){var l=new n;return l.uri="https://google.com",l.match=null,l},n.toView=function(n,l){return void 0===l&&(l=new t.LoginUriView),l.uri=n.uri,l.match=n.match,l},n}();l.LoginUri=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(111),u=e(93),o=function(){function n(n){null!=n&&(this.type=n.type)}return n.template=function(){var l=new n;return l.type=t.SecureNoteType.Generic,l},n.toView=function(n,l){return void 0===l&&(l=new u.SecureNoteView),l.type=n.type,l},n}();l.SecureNote=o},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(139),u=function(){function n(){}return n.template=function(){var l=new n;return l.organizationId="00000000-0000-0000-0000-000000000000",l.name="Collection name",l},n.toView=function(n,l){return void 0===l&&(l=new t.CollectionView),l.name=n.name,null==l.organizationId&&(l.organizationId=n.organizationId),l},n.prototype.build=function(n){this.organizationId=n.organizationId,this.name=n.name},n}();l.Collection=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(138),u=function(){function n(){}return n.template=function(){var l=new n;return l.name="Folder name",l},n.toView=function(n,l){return void 0===l&&(l=new t.FolderView),l.name=n.name,l},n.prototype.build=function(n){this.name=n.name},n}();l.Folder=u},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&(o=Math.floor(t.ciphers.length/2),r=t.ciphers.length-1,this.badData(t.ciphers[0])&&this.badData(t.ciphers[o])&&this.badData(t.ciphers[r]))?[2,new Error(this.i18nService.t("importFormatError"))]:[4,this.postImport(t,e)]:[3,3];case 2:return u.sent(),[2,null];case 3:return[2,new Error(this.i18nService.t("importFormatError"))]}})})},n.prototype.getImporter=function(n,l){void 0===l&&(l=!1);var e=this.getImporterInstance(n);return null==e?null:(e.organization=l,e)},n.prototype.getImporterInstance=function(n){if(null==n||""===n)return null;switch(n){case"bitwardencsv":return new v.BitwardenCsvImporter;case"bitwardenjson":return new h.BitwardenJsonImporter;case"lastpasscsv":case"passboltcsv":return new A.LastPassCsvImporter;case"keepassxcsv":return new I.KeePassXCsvImporter;case"aviracsv":return new f.AviraCsvImporter;case"blurcsv":return new g.BlurCsvImporter;case"safeincloudxml":return new G.SafeInCloudXmlImporter;case"padlockcsv":return new P.PadlockCsvImporter;case"keepass2xml":return new R.KeePass2XmlImporter;case"chromecsv":case"operacsv":case"vivaldicsv":return new m.ChromeCsvImporter;case"firefoxcsv":return new S.FirefoxCsvImporter;case"upmcsv":return new H.UpmCsvImporter;case"saferpasscsv":return new j.SaferPassCsvImporter;case"meldiumcsv":return new O.MeldiumCsvImporter;case"1password1pif":return new E.OnePassword1PifImporter;case"1passwordwincsv":return new T.OnePasswordWinCsvImporter;case"keepercsv":return new k.KeeperCsvImporter;case"passworddragonxml":return new F.PasswordDragonXmlImporter;case"enpasscsv":return new b.EnpassCsvImporter;case"enpassjson":return new w.EnpassJsonImporter;case"pwsafexml":return new L.PasswordSafeXmlImporter;case"dashlanejson":return new C.DashlaneJsonImporter;case"msecurecsv":return new N.MSecureCsvImporter;case"stickypasswordxml":return new B.StickyPasswordXmlImporter;case"truekeycsv":return new K.TrueKeyCsvImporter;case"clipperzhtml":return new y.ClipperzHtmlImporter;case"roboformcsv":return new z.RoboFormCsvImporter;case"ascendocsv":return new c.AscendoCsvImporter;case"passwordbossjson":return new U.PasswordBossJsonImporter;case"zohovaultcsv":return new $.ZohoVaultCsvImporter;case"splashidcsv":return new q.SplashIdCsvImporter;case"passkeepcsv":return new V.PassKeepCsvImporter;case"gnomejson":return new _.GnomeJsonImporter;case"passwordagentcsv":return new D.PasswordAgentCsvImporter;case"passpackcsv":return new M.PasspackCsvImporter;case"passmanjson":return new x.PassmanJsonImporter;case"avastcsv":return new p.AvastCsvImporter;default:return null}},n.prototype.postImport=function(n,l){return void 0===l&&(l=null),t(this,void 0,void 0,function(){var e,t,c,p,f;return u(this,function(u){switch(u.label){case 0:if(null!=l)return[3,10];e=new a.ImportCiphersRequest,p=0,u.label=1;case 1:return p2&&n.length%2==0)for(var u=0;u-1?t.login.password=l.getValueOrDefault(o):null==t.login.username&&l.usernameFieldNames.indexOf(i)>-1?t.login.username=l.getValueOrDefault(o):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(i)>-1?t.login.uris=l.makeUriArray(o):l.processKvp(t,r,o)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(u.BaseImporter);l.AscendoCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name),t.login.uris=l.makeUriArray(n.web),t.login.password=l.getValueOrDefault(n.password),t.login.username=l.getValueOrDefault(n.login),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.AvastCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name,l.getValueOrDefault(l.nameFromUrl(n.website),"--")),t.login.uris=l.makeUriArray(n.website),t.login.password=l.getValueOrDefault(n.password),l.isNullOrWhitespace(n.username)&&!l.isNullOrWhitespace(n.secondary_username)?t.login.username=n.secondary_username:(t.login.username=l.getValueOrDefault(n.username),t.notes=l.getValueOrDefault(n.secondary_username)),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.AviraCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(126),i=e(139),a=e(184),s=e(158),d=e(93),c=e(39),p=e(183),f=e(111),v=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){l.organization&&!l.isNullOrWhitespace(n.collections)?n.collections.split(",").forEach(function(n){for(var l=!0,t=e.collections.length,u=0;uv+2&&(h.value=u[o].substr(v+2)),t.fields.push(h)}}switch(null!=n.type?n.type.toLowerCase():null){case"note":t.type=c.CipherType.SecureNote,t.secureNote=new d.SecureNoteView,t.secureNote.type=f.SecureNoteType.Generic;break;default:t.type=c.CipherType.Login,t.login=new s.LoginView,t.login.totp=l.getValueOrDefault(n.login_totp||n.totp),t.login.username=l.getValueOrDefault(n.login_username||n.username),t.login.password=l.getValueOrDefault(n.login_password||n.password);var g=l.parseSingleRowCsv(n.login_uri||n.uri);t.login.uris=l.makeUriArray(g)}e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.BitwardenCsvImporter=v},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(634),i=e(635),a=e(636),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);if(null==t||null==t.items||0===t.items.length)return e.success=!1,e;var u=new Map;return this.organization&&null!=t.collections?t.collections.forEach(function(n){var l=i.CollectionWithId.toView(n);null!=l&&(l.id=null,l.organizationId=null,u.set(n.id,e.collections.length),e.collections.push(l))}):this.organization||null==t.folders||t.folders.forEach(function(n){var l=a.FolderWithId.toView(n);null!=l&&(l.id=null,u.set(n.id,e.folders.length),e.folders.push(l))}),t.items.forEach(function(n){var t=r.CipherWithIds.toView(n);t.id=null,t.folderId=null,t.organizationId=null,t.collectionIds=null,!l.organization&&null!=n.folderId&&u.has(n.folderId)?e.folderRelationships.push([e.ciphers.length,u.get(n.folderId)]):l.organization&&null!=n.collectionIds&&n.collectionIds.forEach(function(n){u.has(n)&&e.collectionRelationships.push([e.ciphers.length,u.get(n)])}),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e},l}(u.BaseImporter);l.BitwardenJsonImporter=s},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){"null"===n.label&&(n.label=null);var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.label,l.getValueOrDefault(l.nameFromUrl(n.domain),"--")),t.login.uris=l.makeUriArray(n.domain),t.login.password=l.getValueOrDefault(n.password),l.isNullOrWhitespace(n.email)&&!l.isNullOrWhitespace(n.username)?t.login.username=n.username:(t.login.username=l.getValueOrDefault(n.email),t.notes=l.getValueOrDefault(n.username)),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.BlurCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.name,"--"),t.login.username=l.getValueOrDefault(n.username),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.url),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.ChromeCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;var u=t.querySelector("textarea");return null==u||this.isNullOrWhitespace(u.textContent)?(e.errorMessage="Missing textarea.",e.success=!1,e):(JSON.parse(u.textContent).forEach(function(n){var t=l.initLoginCipher();if(l.isNullOrWhitespace(n.label)||(t.name=n.label.split(" ")[0]),null==n.data||l.isNullOrWhitespace(n.data.notes)||(t.notes=n.data.notes.split("\\n").join("\n")),null!=n.currentVersion&&null!=n.currentVersion.fields)for(var u in n.currentVersion.fields)if(n.currentVersion.fields.hasOwnProperty(u)){var o=n.currentVersion.fields[u];switch(null!=o.actionType?o.actionType.toLowerCase():null){case"password":t.login.password=l.getValueOrDefault(o.value);break;case"email":case"username":case"user":case"name":t.login.username=l.getValueOrDefault(o.value);break;case"url":t.login.uris=l.makeUriArray(o.value);break;default:var r=null!=o.label?o.label.toLowerCase():null;null==t.login.password&&l.passwordFieldNames.indexOf(r)>-1?t.login.password=l.getValueOrDefault(o.value):null==t.login.username&&l.usernameFieldNames.indexOf(r)>-1?t.login.username=l.getValueOrDefault(o.value):(null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(r)>-1?t.login.uris=l.makeUriArray(o.value):l.processKvp(t,o.label,o.value)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.ClipperzHtmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(126),a=e(185),s=e(93),d=e(39),c=new Set(["ADDRESS","AUTHENTIFIANT","BANKSTATEMENT","IDCARD","IDENTITY","PAYMENTMEANS_CREDITCARD","PAYMENTMEAN_PAYPAL","EMAIL"]),p=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){this.result=new o.ImportResult;var l=JSON.parse(n);if(null==l||0===l.length)return this.result.success=!1,this.result;for(var e in null!=l.ADDRESS&&this.processAddress(l.ADDRESS),null!=l.AUTHENTIFIANT&&this.processAuth(l.AUTHENTIFIANT),null!=l.BANKSTATEMENT&&this.processNote(l.BANKSTATEMENT,"BankAccountName"),null!=l.IDCARD&&this.processNote(l.IDCARD,"Fullname"),null!=l.PAYMENTMEANS_CREDITCARD&&this.processCard(l.PAYMENTMEANS_CREDITCARD),null!=l.IDENTITY&&this.processIdentity(l.IDENTITY),l)l.hasOwnProperty(e)&&!c.has(e)&&this.processNote(l[e],null,"Generic Note");return this.result.success=!0,this.result},l.prototype.processAuth=function(n){var l=this;n.forEach(function(n){var e=l.initLoginCipher();e.name=l.getValueOrDefault(n.title),e.login.username=l.getValueOrDefault(n.login,l.getValueOrDefault(n.secondaryLogin)),l.isNullOrWhitespace(e.login.username)?e.login.username=l.getValueOrDefault(n.email):l.isNullOrWhitespace(n.email)||(e.notes="Email: "+n.email+"\n"),e.login.password=l.getValueOrDefault(n.password),e.login.uris=l.makeUriArray(n.domain),e.notes+=l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(e),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processIdentity=function(n){var l=this;n.forEach(function(n){var e=new i.CipherView;e.identity=new a.IdentityView,e.type=d.CipherType.Identity,e.name=l.getValueOrDefault(n.fullName,"");var t=e.name.split(" ");t.length>0&&(e.identity.firstName=l.getValueOrDefault(t[0])),2===t.length?e.identity.lastName=l.getValueOrDefault(t[1]):3===t.length&&(e.identity.middleName=l.getValueOrDefault(t[1]),e.identity.lastName=l.getValueOrDefault(t[2])),e.identity.username=l.getValueOrDefault(n.pseudo),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processAddress=function(n){var l=this;n.forEach(function(n){var e=new i.CipherView;e.identity=new a.IdentityView,e.type=d.CipherType.Identity,e.name=l.getValueOrDefault(n.addressName),e.identity.address1=l.getValueOrDefault(n.addressFull),e.identity.city=l.getValueOrDefault(n.city),e.identity.state=l.getValueOrDefault(n.state),e.identity.postalCode=l.getValueOrDefault(n.zipcode),e.identity.country=l.getValueOrDefault(n.country),null!=e.identity.country&&(e.identity.country=e.identity.country.toUpperCase()),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processCard=function(n){var l=this;n.forEach(function(n){var e=new i.CipherView;e.card=new r.CardView,e.type=d.CipherType.Card,e.name=l.getValueOrDefault(n.bank),e.card.number=l.getValueOrDefault(n.cardNumber),e.card.brand=l.getCardBrand(e.card.number),e.card.cardholderName=l.getValueOrDefault(n.owner),l.isNullOrWhitespace(e.card.brand)||(l.isNullOrWhitespace(e.name)?e.name=e.card.brand:e.name+=" - "+e.card.brand),l.cleanupCipher(e),l.result.ciphers.push(e)})},l.prototype.processNote=function(n,l,e){var t=this;void 0===e&&(e=null),n.forEach(function(n){var u=new i.CipherView;for(var o in u.secureNote=new s.SecureNoteView,u.type=d.CipherType.SecureNote,u.name=null!=e?e:t.getValueOrDefault(n[l]),n)n.hasOwnProperty(o)&&o!==l&&t.processKvp(u,o,n[o].toString());t.cleanupCipher(u),t.result.ciphers.push(u)})},l}(u.BaseImporter);l.DashlaneJsonImporter=p},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(39),i=e(111),a=e(105),s=e(93),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);if(null==t)return e.success=!1,e;var u=!0;return t.forEach(function(n){if(n.length<2||u&&("Title"===n[0]||"title"===n[0]))u=!1;else{var t=l.initLoginCipher();if(t.notes=l.getValueOrDefault(n[n.length-1]),t.name=l.getValueOrDefault(n[0],"--"),2!==n.length&&(l.containsField(n,"username")||l.containsField(n,"password")||l.containsField(n,"email")||l.containsField(n,"url"))||(t.type=r.CipherType.SecureNote,t.secureNote=new s.SecureNoteView,t.secureNote.type=i.SecureNoteType.Generic),l.containsField(n,"cardholder")&&l.containsField(n,"number")&&l.containsField(n,"expiry date")&&(t.type=r.CipherType.Card,t.card=new a.CardView),n.length>2&&n.length%2==0)for(var o=0;o0},l}(u.BaseImporter);l.EnpassCsvImporter=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(39),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t||null==t.items||0===t.items.length?(e.success=!1,e):(t.items.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.title),t.favorite=n.favorite>0,null!=n.template_type&&null!=n.fields&&n.fields.length>0&&(0===n.template_type.indexOf("login.")||0===n.template_type.indexOf("password.")?l.processLogin(t,n.fields):0===n.template_type.indexOf("creditcard.")?l.processCard(t,n.fields):n.template_type.indexOf("identity.")<0&&null!=n.fields.find(function(n){return"password"===n.type&&!l.isNullOrWhitespace(n.value)})?l.processLogin(t,n.fields):l.processNote(t,n.fields)),t.notes+="\n"+l.getValueOrDefault(n.note,""),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l.prototype.processLogin=function(n,l){var e=this,t=[];l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||("username"!==l.type&&"email"!==l.type||!e.isNullOrWhitespace(n.login.username)?"password"===l.type&&e.isNullOrWhitespace(n.login.password)?n.login.password=l.value:"totp"===l.type&&e.isNullOrWhitespace(n.login.totp)?n.login.totp=l.value:"url"===l.type?t.push(l.value):e.processKvp(n,l.label,l.value):n.login.username=l.value)}),n.login.uris=this.makeUriArray(t)},l.prototype.processCard=function(n,l){var e=this;n.card=new r.CardView,n.type=i.CipherType.Card,l.forEach(function(l){if(!e.isNullOrWhitespace(l.value)&&"section"!==l.type&&"ccType"!==l.type)if("ccName"===l.type&&e.isNullOrWhitespace(n.card.cardholderName))n.card.cardholderName=l.value;else if("ccNumber"===l.type&&e.isNullOrWhitespace(n.card.number))n.card.number=l.value,n.card.brand=e.getCardBrand(n.card.number);else if("ccCvc"===l.type&&e.isNullOrWhitespace(n.card.code))n.card.code=l.value;else if("ccExpiry"===l.type&&e.isNullOrWhitespace(n.card.expYear)){var t=l.value.split("/");if(2===t.length){var u=null,o=null;1!==t[0].length&&2!==t[0].length||2===(u=t[0]).length&&"0"===u[0]&&(u=u.substr(1,1)),2!==t[1].length&&4!==t[1].length||(o=2===u.length?"20"+t[1]:t[1]),null!=u&&null!=o&&(n.card.expMonth=u,n.card.expYear=o)}else e.processKvp(n,l.label,l.value)}else e.processKvp(n,l.label,l.value)})},l.prototype.processNote=function(n,l){var e=this;l.forEach(function(l){e.isNullOrWhitespace(l.value)||"section"===l.type||e.processKvp(n,l.label,l.value)})},l}(u.BaseImporter);l.EnpassJsonImporter=a},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(l.nameFromUrl(n.hostname),"--"),t.login.username=l.getValueOrDefault(n.username),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.hostname),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.FirefoxCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);if(null==t||0===Object.keys(t).length)return e.success=!1,e;var u=function(n){if(!t.hasOwnProperty(n)||r.isNullOrWhitespace(n)||0===t[n].length)return"continue";t[n].forEach(function(t){if(!l.isNullOrWhitespace(t.display_name)&&0===t.display_name.indexOf("http")){l.processFolder(e,n);var u=l.initLoginCipher();if(u.name=t.display_name.replace("http://","").replace("https://",""),u.name.length>30&&(u.name=u.name.substring(0,30)),u.login.password=l.getValueOrDefault(t.secret),u.login.uris=l.makeUriArray(t.display_name),null!=t.attributes)for(var o in u.login.username=null!=t.attributes?l.getValueOrDefault(t.attributes.username_value):null,t.attributes)t.attributes.hasOwnProperty(o)&&"username_value"!==o&&"xdg:schema"!==o&&l.processKvp(u,o,t.attributes[o]);l.convertToNoteIfNeeded(u),l.cleanupCipher(u),e.ciphers.push(u)}})},r=this;for(var i in t)u(i);return this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.GnomeJsonImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(138),i=function(n){function l(){var l=null!==n&&n.apply(this,arguments)||this;return l.result=new o.ImportResult,l}return t(l,n),l.prototype.parse=function(n){var l=this.parseXml(n);if(null==l)return this.result.success=!1,this.result;var e=l.querySelector("KeePassFile > Root > Group");return null==e?(this.result.errorMessage="Missing `KeePassFile > Root > Group` node.",this.result.success=!1,this.result):(this.traverse(e,!0,""),this.organization&&this.moveFoldersToCollections(this.result),this.result.success=!0,this.result)},l.prototype.traverse=function(n,l,e){var t=this,u=this.result.folders.length,o=e;if(!l){""!==o&&(o+="/");var i=this.querySelectorDirectChild(n,"Name");o+=null==i?"-":i.textContent;var a=new r.FolderView;a.name=o,this.result.folders.push(a)}this.querySelectorAllDirectChild(n,"Entry").forEach(function(n){var e=t.result.ciphers.length,o=t.initLoginCipher();t.querySelectorAllDirectChild(n,"String").forEach(function(n){var l=t.querySelectorDirectChild(n,"Value"),e=null!=l?l.textContent:null;if(!t.isNullOrWhitespace(e)){var u=t.querySelectorDirectChild(n,"Key"),r=null!=u?u.textContent:null;"URL"===r?o.login.uris=t.makeUriArray(e):"UserName"===r?o.login.username=e:"Password"===r?o.login.password=e:"Title"===r?o.name=e:"Notes"===r?o.notes+=e+"\n":t.processKvp(o,r,e)}}),t.cleanupCipher(o),t.result.ciphers.push(o),l||t.result.folderRelationships.push([e,u])}),this.querySelectorAllDirectChild(n,"Group").forEach(function(n){t.traverse(n,!1,o)})},l}(u.BaseImporter);l.KeePass2XmlImporter=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!l.isNullOrWhitespace(n.Title)){n.Group=!l.isNullOrWhitespace(n.Group)&&n.Group.startsWith("Root/")?n.Group.replace("Root/",""):n.Group;var t=l.isNullOrWhitespace(n.Group)?null:n.Group;l.processFolder(e,t);var u=l.initLoginCipher();u.notes=l.getValueOrDefault(n.Notes),u.name=l.getValueOrDefault(n.Title,"--"),u.login.username=l.getValueOrDefault(n.Username),u.login.password=l.getValueOrDefault(n.Password),u.login.uris=l.makeUriArray(n.URL),l.cleanupCipher(u),e.ciphers.push(u)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(u.BaseImporter);l.KeePassXCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<6)){l.processFolder(e,n[0]);var t=l.initLoginCipher();if(t.notes=l.getValueOrDefault(n[5])+"\n",t.name=l.getValueOrDefault(n[1],"--"),t.login.username=l.getValueOrDefault(n[2]),t.login.password=l.getValueOrDefault(n[3]),t.login.uris=l.makeUriArray(n[4]),n.length>7)for(var u=7;u-1){var e=n.ccexp.split("-");e.length>1&&(l.expYear=e[0],l.expMonth=e[1],2===l.expMonth.length&&"0"===l.expMonth[0]&&(l.expMonth=l.expMonth[1]))}return l},l.prototype.parseIdentity=function(n){var l=new s.IdentityView;return l.title=this.getValueOrDefault(n.title),l.firstName=this.getValueOrDefault(n.firstname),l.middleName=this.getValueOrDefault(n.middlename),l.lastName=this.getValueOrDefault(n.lastname),l.username=this.getValueOrDefault(n.username),l.company=this.getValueOrDefault(n.company),l.ssn=this.getValueOrDefault(n.ssn),l.address1=this.getValueOrDefault(n.address1),l.address2=this.getValueOrDefault(n.address2),l.address3=this.getValueOrDefault(n.address3),l.city=this.getValueOrDefault(n.city),l.state=this.getValueOrDefault(n.state),l.postalCode=this.getValueOrDefault(n.zip),l.country=this.getValueOrDefault(n.country),l.email=this.getValueOrDefault(n.email),l.phone=this.getValueOrDefault(n.phone),this.isNullOrWhitespace(l.title)||(l.title=l.title.charAt(0).toUpperCase()+l.title.slice(1)),l},l.prototype.parseSecureNote=function(n,l){var e=this.splitNewLine(n.extra),t=!1;if(e.length){var u=e[0].split(":");if(u.length>1&&"NoteType"===u[0]&&("Credit Card"===u[1]||"Address"===u[1])){if("Credit Card"===u[1]){var o=this.parseSecureNoteMapping(e,{Number:"number","Name on Card":"cardholderName","Security Code":"code"});l.type=p.CipherType.Card,l.card=o[0],l.notes=o[1]}else if("Address"===u[1]){o=this.parseSecureNoteMapping(e,{Title:"title","First Name":"firstName","Last Name":"lastName","Middle Name":"middleName",Company:"company","Address 1":"address1","Address 2":"address2","Address 3":"address3","City / Town":"city",State:"state","Zip / Postal Code":"postalCode",Country:"country","Email Address":"email",Username:"username"});l.type=p.CipherType.Identity,l.identity=o[0],l.notes=o[1]}t=!0}}t||(l.secureNote=new c.SecureNoteView,l.secureNote.type=f.SecureNoteType.Generic,l.notes=this.getValueOrDefault(n.extra))},l.prototype.parseSecureNoteMapping=function(n,l){var e=this,t=null,u={};return n.forEach(function(n){var o=n.split(":");o.length<1||e.isNullOrWhitespace(o[0])||e.isNullOrWhitespace(o[1])||"NoteType"===o[0]||("Notes"===o[0]?e.isNullOrWhitespace(t)?t=o[1]:t+="\n"+o[1]:l.hasOwnProperty(o[0])?u[l[o[0]]]=o[1]:(e.isNullOrWhitespace(t)?t="":t+="\n",t+=o[0]+": "+o[1]))}),[u,t]},l}(u.BaseImporter);l.LastPassCsvImporter=v},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n.DisplayName,"--"),t.notes=l.getValueOrDefault(n.Notes),t.login.username=l.getValueOrDefault(n.UserName),t.login.password=l.getValueOrDefault(n.Password),t.login.uris=l.makeUriArray(n.Url),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.MeldiumCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(39),i=e(111),a=e(93),s=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<3)){var t="Unassigned"!==l.getValueOrDefault(n[0],"Unassigned")?n[0]:null;l.processFolder(e,t);var u=l.initLoginCipher();if(u.name=l.getValueOrDefault(n[2],"--"),"Web Logins"===n[1])u.login.uris=l.makeUriArray(n[4]),u.login.username=l.getValueOrDefault(n[5]),u.login.password=l.getValueOrDefault(n[6]),u.notes=l.isNullOrWhitespace(n[3])?null:n[3].split("\\n").join("\n");else if(n.length>3){u.type=r.CipherType.SecureNote,u.secureNote=new a.SecureNoteView,u.secureNote.type=i.SecureNoteType.Generic;for(var o=3;o0?t[0].trim():null;l.processFolder(e,o)}var i=l.initLoginCipher();i.name=l.getValueOrDefault(n[0],"--");for(var a=2;a-1?i.login.username=n[a]:l.passwordFieldNames.indexOf(s)>-1?i.login.password=n[a]:l.uriFieldNames.indexOf(s)>-1?i.login.uris=l.makeUriArray(n[a]):l.processKvp(i,u[a],n[a]))}l.cleanupCipher(i),e.ciphers.push(i)}}else u=n.map(function(n){return n})}),e.success=!0,e},l}(u.BaseImporter);l.PadlockCsvImporter=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){l.processFolder(e,l.getValue("category",n));var t=l.initLoginCipher();t.notes=l.getValue("description",n),t.name=l.getValueOrDefault(l.getValue("title",n),"--"),t.login.username=l.getValue("username",n),t.login.password=l.getValue("password",n),t.login.uris=l.makeUriArray(l.getValue("site",n)),l.processKvp(t,"Password 2",l.getValue("password2",n)),l.cleanupCipher(t),e.ciphers.push(t)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l.prototype.getValue=function(n,l){return this.getValueOrDefault(l[n],this.getValueOrDefault(l[" "+n]))},l}(u.BaseImporter);l.PassKeepCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t||0===t.length?(e.success=!1,e):(t.forEach(function(n){if(null!=n.tags&&n.tags.length>0){var t=n.tags[0].text;l.processFolder(e,t)}var u=l.initLoginCipher();u.name=n.label,u.login.username=l.getValueOrDefault(n.username),l.isNullOrWhitespace(u.login.username)?u.login.username=l.getValueOrDefault(n.email):l.isNullOrWhitespace(n.email)||(u.notes="Email: "+n.email+"\n"),u.login.password=l.getValueOrDefault(n.password),u.login.uris=l.makeUriArray(n.url),u.notes+=l.getValueOrDefault(n.description,""),null!=n.otp&&(u.login.totp=l.getValueOrDefault(n.otp.secret)),null!=n.custom_fields&&n.custom_fields.forEach(function(n){switch(n.field_type){case"text":case"password":l.processKvp(u,n.label,n.value)}}),l.convertToNoteIfNeeded(u),l.cleanupCipher(u),e.ciphers.push(u)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(u.BaseImporter);l.PassmanJsonImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(139),i=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.isNullOrWhitespace(n.Tags)?null:JSON.parse(n.Tags),u=null!=t&&null!=t.tags&&t.tags.length>0?t.tags.map(function(n){try{var e=JSON.parse(n);return l.getValueOrDefault(e.tag)}catch(n){}return null}).filter(function(n){return!l.isNullOrWhitespace(n)}):null;l.organization&&null!=u&&u.length>0?u.forEach(function(n){for(var l=!0,t=e.collections.length,u=0;u0&&l.processFolder(e,u[0]);var o=l.initLoginCipher();o.notes=l.getValueOrDefault(n.Notes,""),o.notes+="\n\n"+l.getValueOrDefault(n["Shared Notes"],"")+"\n",o.name=l.getValueOrDefault(n["Entry Name"],"--"),o.login.username=l.getValueOrDefault(n["User ID"]),o.login.password=l.getValueOrDefault(n.Password),o.login.uris=l.makeUriArray(n.URL),null!=n.__parsed_extra&&n.__parsed_extra.length>0&&n.__parsed_extra.forEach(function(n){l.isNullOrWhitespace(n)||(o.notes+="\n"+n)});var i=l.isNullOrWhitespace(n["Extra Fields"])?null:JSON.parse(n["Extra Fields"]),a=null!=i&&null!=i.extraFields&&i.extraFields.length>0?i.extraFields.map(function(n){try{return JSON.parse(n)}catch(n){}return null}):null;null!=a&&a.forEach(function(n){null!=n&&l.processKvp(o,n.name,n.data)}),l.cleanupCipher(o),e.ciphers.push(o)}),e.success=!0,e)},l}(u.BaseImporter);l.PasspackCsvImporter=i},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<9)){var t=l.getValueOrDefault(n[8],"(None)"),u="(None)"!==t?t.split("\\").join("/"):null;l.processFolder(e,u);var o=l.initLoginCipher();o.notes=l.getValueOrDefault(n[3]),o.name=l.getValueOrDefault(n[0],"--"),o.login.username=l.getValueOrDefault(n[1]),o.login.password=l.getValueOrDefault(n[2]),o.login.uris=l.makeUriArray(n[4]),l.convertToNoteIfNeeded(o),l.cleanupCipher(o),e.ciphers.push(o)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l}(u.BaseImporter);l.PasswordAgentCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(39),a=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=JSON.parse(n);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();if(t.name=l.getValueOrDefault(n.name,"--"),t.login.uris=l.makeUriArray(n.login_url),null!=n.identifiers){for(var u in l.isNullOrWhitespace(n.identifiers.notes)||(t.notes=n.identifiers.notes.split("\\r\\n").join("\n").split("\\n").join("\n")),"CreditCard"===n.type&&(t.card=new r.CardView,t.type=i.CipherType.Card),n.identifiers)if(n.identifiers.hasOwnProperty(u)){var o=n.identifiers[u],a=null!=o?o.toString():null;if(!l.isNullOrWhitespace(a)&&"notes"!==u&&"ignoreItemInSecurityScore"!==u){if(t.type===i.CipherType.Card){if("cardNumber"===u){t.card.number=a,t.card.brand=l.getCardBrand(a);continue}if("nameOnCard"===u){t.card.cardholderName=a;continue}if("security_code"===u){t.card.code=a;continue}if("expires"===u){try{var s=new Date(a);t.card.expYear=s.getFullYear().toString(),t.card.expMonth=(s.getMonth()+1).toString()}catch(n){}continue}if("cardType"===u)continue}else{if("username"===u){t.login.username=a;continue}if("password"===u){t.login.password=a;continue}if((null==t.login.uris||0===t.login.uris.length)&&l.uriFieldNames.indexOf(u)>-1){t.login.uris=l.makeUriArray(a);continue}}l.processKvp(t,u,a)}}l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(u.BaseImporter);l.PasswordBossJsonImporter=a},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;var u=t.querySelectorAll("PasswordManager > record");return Array.from(u).forEach(function(n){var t=l.querySelectorDirectChild(n,"Category"),u=null==t||l.isNullOrWhitespace(t.textContent)||"Unfiled"===t.textContent?null:t.textContent;l.processFolder(e,u);var o=l.querySelectorDirectChild(n,"Account-Name"),r=l.querySelectorDirectChild(n,"User-Id"),i=l.querySelectorDirectChild(n,"Password"),a=l.querySelectorDirectChild(n,"URL"),s=l.querySelectorDirectChild(n,"Notes"),d=l.initLoginCipher();d.name=null!=o?l.getValueOrDefault(o.textContent,"--"):"--",d.notes=null!=s?l.getValueOrDefault(s.textContent):"",d.login.username=null!=r?l.getValueOrDefault(r.textContent):null,d.login.password=null!=i?l.getValueOrDefault(i.textContent):null,d.login.uris=null!=a?l.makeUriArray(a.textContent):null;for(var c=[],p=1;p<=10;p++)c.push("Attribute-"+p);l.querySelectorAllDirectChild(n,c.join(",")).forEach(function(n){l.isNullOrWhitespace(n.textContent)||"null"===n.textContent||l.processKvp(d,n.tagName,n.textContent)}),l.cleanupCipher(d),e.ciphers.push(d)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.PasswordDragonXmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;var u=t.querySelector("passwordsafe");if(null==u)return e.errorMessage="Missing `passwordsafe` node.",e.success=!1,e;var r=u.getAttribute("delimiter"),i=t.querySelectorAll("passwordsafe > entry");return Array.from(i).forEach(function(n){var t=l.querySelectorDirectChild(n,"group"),u=null==t||l.isNullOrWhitespace(t.textContent)?null:t.textContent.split(".").join("/");l.processFolder(e,u);var o=l.querySelectorDirectChild(n,"title"),i=l.querySelectorDirectChild(n,"username"),a=l.querySelectorDirectChild(n,"email"),s=l.querySelectorDirectChild(n,"password"),d=l.querySelectorDirectChild(n,"url"),c=l.querySelectorDirectChild(n,"notes"),p=l.initLoginCipher();p.name=null!=o?l.getValueOrDefault(o.textContent,"--"):"--",p.notes=null!=c?l.getValueOrDefault(c.textContent,"").split(r).join("\n"):null,p.login.username=null!=i?l.getValueOrDefault(i.textContent):null,p.login.password=null!=s?l.getValueOrDefault(s.textContent):null,p.login.uris=null!=d?l.makeUriArray(d.textContent):null,l.isNullOrWhitespace(p.login.username)&&null!=a?p.login.username=l.getValueOrDefault(a.textContent):null==a||l.isNullOrWhitespace(a.textContent)||(p.notes=l.isNullOrWhitespace(p.notes)?"Email: "+a.textContent:p.notes+"\nEmail: "+a.textContent),l.cleanupCipher(p),e.ciphers.push(p)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.PasswordSafeXmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);if(null==t)return e.success=!1,e;var u=1;return t.forEach(function(n){var o=!l.isNullOrWhitespace(n.Folder)&&n.Folder.startsWith("/")?n.Folder.replace("/",""):n.Folder,r=l.isNullOrWhitespace(o)?null:o;l.processFolder(e,r);var i=l.initLoginCipher();i.notes=l.getValueOrDefault(n.Note),i.name=l.getValueOrDefault(n.Name,"--"),i.login.username=l.getValueOrDefault(n.Login),i.login.password=l.getValueOrDefault(n.Pwd),i.login.uris=l.makeUriArray(n.Url),l.cleanupCipher(i),u===t.length&&"--"===i.name&&l.isNullOrWhitespace(i.login.password)||(e.ciphers.push(i),u++)}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.RoboFormCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(138),i=e(93),a=e(39),s=e(111),d=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseXml(n);if(null==t)return e.success=!1,e;if(null==t.querySelector("database"))return e.errorMessage="Missing `database` node.",e.success=!1,e;var u=new Map;return Array.from(t.querySelectorAll("database > label")).forEach(function(n){var t=n.getAttribute("name"),o=n.getAttribute("id");if(!l.isNullOrWhitespace(t)&&!l.isNullOrWhitespace(o)){u.set(o,e.folders.length);var i=new r.FolderView;i.name=t,e.folders.push(i)}}),Array.from(t.querySelectorAll("database > card")).forEach(function(n){if("true"!==n.getAttribute("template")){var t=l.querySelectorDirectChild(n,"label_id");if(null!=t){var o=t.textContent;!l.isNullOrWhitespace(o)&&u.has(o)&&e.folderRelationships.push([e.ciphers.length,u.get(o)])}var r=l.initLoginCipher();r.name=l.getValueOrDefault(n.getAttribute("title"),"--"),"note"===n.getAttribute("type")?(r.type=a.CipherType.SecureNote,r.secureNote=new i.SecureNoteView,r.secureNote.type=s.SecureNoteType.Generic):Array.from(l.querySelectorAllDirectChild(n,"field")).forEach(function(n){var e=n.textContent;if(!l.isNullOrWhitespace(e)){var t=n.getAttribute("name"),u=l.getValueOrDefault(n.getAttribute("type"),"").toLowerCase();"login"===u?r.login.username=e:"password"===u?r.login.password=e:"notes"===u?r.notes+=e+"\n":"weblogin"===u||"website"===u?r.login.uris=l.makeUriArray(e):l.processKvp(r,t,e)}}),Array.from(l.querySelectorAllDirectChild(n,"notes")).forEach(function(n){r.notes+=n.textContent+"\n"}),l.cleanupCipher(r),e.ciphers.push(r)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l}(u.BaseImporter);l.SafeInCloudXmlImporter=d},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();t.name=l.getValueOrDefault(l.nameFromUrl(n.url),"--"),t.notes=l.getValueOrDefault(n.notes),t.login.username=l.getValueOrDefault(n.username),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.url),l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.SaferPassCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!(n.length<3)){l.processFolder(e,l.getValueOrDefault(n[n.length-1]));var t=l.initLoginCipher();t.notes=l.getValueOrDefault(n[n.length-2],""),t.name=l.getValueOrDefault(n[1],"--"),"Web Logins"===n[0]||"Servers"===n[0]||"Email Accounts"===n[0]?(t.login.username=l.getValueOrDefault(n[2]),t.login.password=l.getValueOrDefault(n[3]),t.login.uris=l.makeUriArray(n[4]),l.parseFieldsToNotes(t,5,n)):l.parseFieldsToNotes(t,2,n),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l.prototype.parseFieldsToNotes=function(n,l,e){for(var t=l;t Database > Logins > Login");return Array.from(u).forEach(function(n){var u=n.getAttribute("ID");if(!l.isNullOrWhitespace(u)){var o=n.getAttribute("Name"),r=n.getAttribute("Password"),i=null,a=null,s=null,d=null,c=null,p=t.querySelector('root > Database > Accounts > Account > LoginLinks > Login[SourceLoginID="'+u+'"]');if(null!=p){var f=p.parentElement.parentElement;null!=f&&(i=f.getAttribute("Name"),a=f.getAttribute("Link"),d=f.getAttribute("ParentID"),s=f.getAttribute("Comments"),l.isNullOrWhitespace(s)||(s=s.split("/n").join("\n")))}l.isNullOrWhitespace(d)||(c=l.buildGroupText(t,d,""),l.processFolder(e,c));var v=l.initLoginCipher();v.name=l.getValueOrDefault(i,"--"),v.notes=l.getValueOrDefault(s),v.login.username=l.getValueOrDefault(o),v.login.password=l.getValueOrDefault(r),v.login.uris=l.makeUriArray(a),l.cleanupCipher(v),e.ciphers.push(v)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e},l.prototype.buildGroupText=function(n,l,e){var t=n.querySelector('root > Database > Groups > Group[ID="'+l+'"]');return null==t?e:(this.isNullOrWhitespace(e)||(e="/"+e),e=t.getAttribute("Name")+e,this.buildGroupText(n,t.getAttribute("ParentID"),e))},l}(u.BaseImporter);l.StickyPasswordXmlImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=e(105),i=e(93),a=e(39),s=e(111),d=["kind","autologin","favorite","hexcolor","protectedwithpassword","subdomainonly","type","tk_export_version","note","title","document_content"],c=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){var t=l.initLoginCipher();if(t.favorite="true"===l.getValueOrDefault(n.favorite,"").toLowerCase(),t.name=l.getValueOrDefault(n.name,"--"),t.notes=l.getValueOrDefault(n.memo,""),t.login.username=l.getValueOrDefault(n.login),t.login.password=l.getValueOrDefault(n.password),t.login.uris=l.makeUriArray(n.url),"login"!==n.kind&&(t.name=l.getValueOrDefault(n.title,"--"),t.notes=l.getValueOrDefault(n.note,"")),"cc"===n.kind){if(t.type=a.CipherType.Card,t.card=new r.CardView,t.card.cardholderName=l.getValueOrDefault(n.cardholder),t.card.number=l.getValueOrDefault(n.number),t.card.brand=l.getCardBrand(t.card.number),!l.isNullOrWhitespace(n.expiryDate))try{var u=new Date(n.expiryDate);t.card.expYear=u.getFullYear().toString(),t.card.expMonth=(u.getMonth()+1).toString()}catch(n){}}else if("login"!==n.kind)for(var o in t.type=a.CipherType.SecureNote,t.secureNote=new i.SecureNoteView,t.secureNote.type=s.SecureNoteType.Generic,l.isNullOrWhitespace(t.notes)||(t.notes=l.getValueOrDefault(n.document_content,"")),n)n.hasOwnProperty(o)&&d.indexOf(o.toLowerCase())<0&&!l.isNullOrWhitespace(n[o])&&l.processKvp(t,o,n[o]);l.cleanupCipher(t),e.ciphers.push(t)}),e.success=!0,e)},l}(u.BaseImporter);l.TrueKeyCsvImporter=c},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!1);return null==t?(e.success=!1,e):(t.forEach(function(n){if(5===n.length){var t=l.initLoginCipher();t.name=l.getValueOrDefault(n[0],"--"),t.notes=l.getValueOrDefault(n[4]),t.login.username=l.getValueOrDefault(n[1]),t.login.password=l.getValueOrDefault(n[2]),t.login.uris=l.makeUriArray(n[3]),l.cleanupCipher(t),e.ciphers.push(t)}}),e.success=!0,e)},l}(u.BaseImporter);l.UpmCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__extends||function(){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,l){n.__proto__=l}||function(n,l){for(var e in l)l.hasOwnProperty(e)&&(n[e]=l[e])};return function(l,e){function t(){this.constructor=l}n(l,e),l.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}}();Object.defineProperty(l,"__esModule",{value:!0});var u=e(32),o=e(33),r=function(n){function l(){return null!==n&&n.apply(this,arguments)||this}return t(l,n),l.prototype.parse=function(n){var l=this,e=new o.ImportResult,t=this.parseCsv(n,!0);return null==t?(e.success=!1,e):(t.forEach(function(n){if(!l.isNullOrWhitespace(n["Secret Name"])){l.processFolder(e,l.getValueOrDefault(n.ChamberName));var t=l.initLoginCipher();t.favorite="1"===l.getValueOrDefault(n.Favorite,"0"),t.notes=l.getValueOrDefault(n.Notes),t.name=l.getValueOrDefault(n["Secret Name"],"--"),t.login.uris=l.makeUriArray(n["Secret URL"]),l.parseData(t,n.SecretData),l.parseData(t,n.CustomData),l.convertToNoteIfNeeded(t),l.cleanupCipher(t),e.ciphers.push(t)}}),this.organization&&this.moveFoldersToCollections(e),e.success=!0,e)},l.prototype.parseData=function(n,l){var e=this;this.isNullOrWhitespace(l)||this.splitNewLine(l).forEach(function(l){var t=l.indexOf(":");if(!(t<0)){var u=l.substring(0,t),o=l.length>t?l.substring(t+1):null;if(!e.isNullOrWhitespace(u)&&!e.isNullOrWhitespace(o)&&"SecretType"!==u){var r=u.toLowerCase();null==n.login.username&&e.usernameFieldNames.indexOf(r)>-1?n.login.username=o:null==n.login.password&&e.passwordFieldNames.indexOf(r)>-1?n.login.password=o:e.processKvp(n,u,o)}}})},l}(u.BaseImporter);l.ZohoVaultCsvImporter=r},function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]"))},n.prototype.indexCiphers=function(){return t(this,void 0,void 0,function(){var n,l=this;return u(this,function(e){switch(e.label){case 0:return this.indexing?[2]:(console.time("search indexing"),this.indexing=!0,this.index=null,(n=new o.Builder).ref("id"),n.field("shortid",{boost:100,extractor:function(n){return n.id.substr(0,8)}}),n.field("name",{boost:10}),n.field("subtitle",{boost:5,extractor:function(n){return null!=n.subTitle&&n.type===r.CipherType.Card?n.subTitle.replace(/\*/g,""):n.subTitle}}),n.field("notes"),n.field("login.username",{extractor:function(n){return null!=n.login?n.login.username:null}}),n.field("login.uris",{boost:2,extractor:function(n){return l.uriExtractor(n)}}),n.field("fields",{extractor:function(n){return l.fieldExtractor(n,!1)}}),n.field("fields_joined",{extractor:function(n){return l.fieldExtractor(n,!0)}}),n.field("attachments",{extractor:function(n){return l.attachmentExtractor(n,!1)}}),n.field("attachments_joined",{extractor:function(n){return l.attachmentExtractor(n,!0)}}),n.field("organizationid",{extractor:function(n){return n.organizationId}}),[4,this.cipherService.getAllDecrypted()]);case 1:return e.sent().forEach(function(l){return n.add(l)}),this.index=n.build(),this.indexing=!1,console.timeEnd("search indexing"),[2]}})})},n.prototype.searchCiphers=function(n,l,e){return void 0===l&&(l=null),void 0===e&&(e=null),t(this,void 0,void 0,function(){var t,r,i,a,s;return u(this,function(u){switch(u.label){case 0:return t=[],null!=n&&(n=n.trim().toLowerCase()),""===n&&(n=null),null!=e?[3,2]:[4,this.cipherService.getAllDecrypted()];case 1:e=u.sent(),u.label=2;case 2:if(null!=l&&(e=e.filter(l)),!this.isSearchable(n))return[2,e];if(null==(r=this.getIndexForSearch()))return[2,this.searchCiphersBasic(e,n)];if(i=new Map,e.forEach(function(n){return i.set(n.id,n)}),a=null,null!=n&&n.length>1&&0===n.indexOf(">"))try{a=r.search(n.substr(1).trim())}catch(n){}else s=o.Query.wildcard.LEADING|o.Query.wildcard.TRAILING,a=r.query(function(l){l.term(n,{fields:["name"],wildcard:s}),l.term(n,{fields:["subtitle"],wildcard:s}),l.term(n,{fields:["login.uris"],wildcard:s}),o.tokenizer(n).forEach(function(n){l.term(n.toString(),{})})});return null!=a&&a.forEach(function(n){i.has(n.ref)&&t.push(i.get(n.ref))}),[2,t]}})})},n.prototype.searchCiphersBasic=function(n,l){var e=this;return l=l.trim().toLowerCase(),n.filter(function(n){return null!=n.name&&n.name.toLowerCase().indexOf(l)>-1||!e.onlySearchName&&(!!(l.length>=8&&n.id.startsWith(l))||(null!=n.subTitle&&n.subTitle.toLowerCase().indexOf(l)>-1||!!(n.login&&null!=n.login.uri&&n.login.uri.toLowerCase().indexOf(l)>-1)))})},n.prototype.getIndexForSearch=function(){return this.index},n.prototype.fieldExtractor=function(n,l){if(!n.hasFields)return null;var e=[];return n.fields.forEach(function(n){null!=n.name&&e.push(n.name),n.type===a.FieldType.Text&&null!=n.value&&e.push(n.value)}),0===(e=e.filter(function(n){return""!==n.trim()})).length?null:l?e.join(" "):e},n.prototype.attachmentExtractor=function(n,l){if(!n.hasAttachments)return null;var e=[];return n.attachments.forEach(function(n){null!=n&&null!=n.fileName&&(l&&n.fileName.indexOf(".")>-1?e.push(n.fileName.substr(0,n.fileName.lastIndexOf("."))):e.push(n.fileName))}),0===(e=e.filter(function(n){return""!==n.trim()})).length?null:l?e.join(" "):e},n.prototype.uriExtractor=function(n){if(null==n.login||!n.login.hasUris)return null;var l=[];return n.login.uris.forEach(function(n){if(null!=n.uri&&""!==n.uri)if(null==n.hostname){var e=n.uri;if(n.match!==s.UriMatchType.RegularExpression){var t=e.indexOf("://");t>-1&&(e=e.substr(t+3));var u=e.search(/\?|&|#/);u>-1&&(e=e.substring(0,u))}l.push(e)}else l.push(n.hostname)}),l.length>0?l:null},n}();l.SearchService=d},,function(n,l,e){"use strict";var t=this&&this.__awaiter||function(n,l,e,t){return new(e||(e=Promise))(function(u,o){function r(n){try{a(t.next(n))}catch(n){o(n)}}function i(n){try{a(t.throw(n))}catch(n){o(n)}}function a(n){n.done?u(n.value):new e(function(l){l(n.value)}).then(r,i)}a((t=t.apply(n,l||[])).next())})},u=this&&this.__generator||function(n,l){var e,t,u,o,r={label:0,sent:function(){if(1&u[0])throw u[1];return u[1]},trys:[],ops:[]};return o={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function i(o){return function(i){return function(o){if(e)throw new TypeError("Generator is already executing.");for(;r;)try{if(e=1,t&&(u=2&o[0]?t.return:o[0]?t.throw||((u=t.return)&&u.call(t),0):t.next)&&!(u=u.call(t,o[1])).done)return u;switch(t=0,u&&(o=[2&o[0],u.value]),o[0]){case 0:case 1:u=o;break;case 4:return r.label++,{value:o[1],done:!1};case 5:r.label++,t=o[1],o=[0];continue;case 7:o=r.ops.pop(),r.trys.pop();continue;default:if(!(u=(u=r.trys).length>0&&u[u.length-1])&&(6===o[0]||2===o[0])){r=0;continue}if(3===o[0]&&(!u||o[1]>u[0]&&o[1]-1||e.indexOf(" Version/9.")>-1)}return n.prototype.pbkdf2=function(n,l,e,i){return t(this,void 0,void 0,function(){var t,a,s,d,c,p,f,v,h;return u(this,function(u){switch(u.label){case 0:return this.isEdge||this.isIE||this.isOldSafari?(t="sha256"===e?32:64,a=this.toByteString(n),s=this.toByteString(l),d=o.pbkdf2(a,s,i,t,e),[2,r.Utils.fromByteStringToArray(d).buffer]):(c="sha256"===e?256:512,p=this.toBuf(n),f=this.toBuf(l),v={name:"PBKDF2",salt:f,iterations:i,hash:{name:this.toWebCryptoAlgorithm(e)}},[4,this.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveBits"])]);case 1:return h=u.sent(),[4,this.subtle.deriveBits(v,h,c)];case 2:return[2,u.sent()]}})})},n.prototype.hash=function(n,l){return t(this,void 0,void 0,function(){var e,t,i;return u(this,function(u){switch(u.label){case 0:return(this.isEdge||this.isIE)&&"sha1"===l||"md5"===l?(e="md5"===l?o.md.md5.create():o.md.sha1.create(),t=this.toByteString(n),e.update(t,"raw"),[2,r.Utils.fromByteStringToArray(e.digest().data).buffer]):(i=this.toBuf(n),[4,this.subtle.digest({name:this.toWebCryptoAlgorithm(l)},i)]);case 1:return[2,u.sent()]}})})},n.prototype.hmac=function(n,l,e){return t(this,void 0,void 0,function(){var t,i,a,s,d;return u(this,function(u){switch(u.label){case 0:return this.isIE&&"sha512"===e?(t=o.hmac.create(),i=this.toByteString(l),a=this.toByteString(n),t.start(e,i),t.update(a,"raw"),[2,r.Utils.fromByteStringToArray(t.digest().data).buffer]):(s={name:"HMAC",hash:{name:this.toWebCryptoAlgorithm(e)}},[4,this.subtle.importKey("raw",l,s,!1,["sign"])]);case 1:return d=u.sent(),[4,this.subtle.sign(s,d,n)];case 2:return[2,u.sent()]}})})},n.prototype.compare=function(n,l){return t(this,void 0,void 0,function(){var e,t,o,r,i,a,s,d;return u(this,function(u){switch(u.label){case 0:return[4,this.randomBytes(32)];case 1:return e=u.sent(),t={name:"HMAC",hash:{name:"SHA-256"}},[4,this.subtle.importKey("raw",e,t,!1,["sign"])];case 2:return o=u.sent(),[4,this.subtle.sign(t,o,n)];case 3:return r=u.sent(),[4,this.subtle.sign(t,o,l)];case 4:if(i=u.sent(),r.byteLength!==i.byteLength)return[2,!1];for(a=new Uint8Array(r),s=new Uint8Array(i),d=0;d string;\r\n translate: (id: string, p1?: string, p2?: string, p3?: string) => string;\r\n}\r\n","import { EnvironmentUrls } from '../models/domain/environmentUrls';\r\n\r\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\r\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\r\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\r\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\r\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\r\nimport { CipherRequest } from '../models/request/cipherRequest';\r\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\r\nimport { CollectionRequest } from '../models/request/collectionRequest';\r\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\r\nimport { EmailRequest } from '../models/request/emailRequest';\r\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\nimport { GroupRequest } from '../models/request/groupRequest';\r\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\r\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\r\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\r\nimport { KdfRequest } from '../models/request/kdfRequest';\r\nimport { KeysRequest } from '../models/request/keysRequest';\r\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\r\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\r\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\r\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\r\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\r\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\r\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\r\nimport { PasswordRequest } from '../models/request/passwordRequest';\r\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\r\nimport { PaymentRequest } from '../models/request/paymentRequest';\r\nimport { PreloginRequest } from '../models/request/preloginRequest';\r\nimport { RegisterRequest } from '../models/request/registerRequest';\r\nimport { SeatRequest } from '../models/request/seatRequest';\r\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\r\nimport { StorageRequest } from '../models/request/storageRequest';\r\nimport { TokenRequest } from '../models/request/tokenRequest';\r\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\r\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\r\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\r\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\r\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\r\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\r\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\r\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\r\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\r\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\r\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\r\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\r\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\r\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\r\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\r\n\r\nimport { BillingResponse } from '../models/response/billingResponse';\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport {\r\n CollectionGroupDetailsResponse,\r\n CollectionResponse,\r\n} from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { EventResponse } from '../models/response/eventResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n GroupDetailsResponse,\r\n GroupResponse,\r\n} from '../models/response/groupResponse';\r\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\r\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\r\nimport { ListResponse } from '../models/response/listResponse';\r\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\r\nimport { OrganizationResponse } from '../models/response/organizationResponse';\r\nimport {\r\n OrganizationUserDetailsResponse,\r\n OrganizationUserUserDetailsResponse,\r\n} from '../models/response/organizationUserResponse';\r\nimport { PreloginResponse } from '../models/response/preloginResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\r\nimport { SyncResponse } from '../models/response/syncResponse';\r\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\r\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\r\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\r\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\r\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\r\nimport {\r\n ChallengeResponse,\r\n TwoFactorU2fResponse,\r\n} from '../models/response/twoFactorU2fResponse';\r\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\r\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\r\n\r\nexport abstract class ApiService {\r\n urlsSet: boolean;\r\n apiBaseUrl: string;\r\n identityBaseUrl: string;\r\n\r\n setUrls: (urls: EnvironmentUrls) => void;\r\n postIdentityToken: (request: TokenRequest) => Promise;\r\n refreshIdentityToken: () => Promise;\r\n\r\n getProfile: () => Promise;\r\n getUserBilling: () => Promise;\r\n putProfile: (request: UpdateProfileRequest) => Promise;\r\n postPrelogin: (request: PreloginRequest) => Promise;\r\n postEmailToken: (request: EmailTokenRequest) => Promise;\r\n postEmail: (request: EmailRequest) => Promise;\r\n postPassword: (request: PasswordRequest) => Promise;\r\n postSecurityStamp: (request: PasswordVerificationRequest) => Promise;\r\n deleteAccount: (request: PasswordVerificationRequest) => Promise;\r\n getAccountRevisionDate: () => Promise;\r\n postPasswordHint: (request: PasswordHintRequest) => Promise;\r\n postRegister: (request: RegisterRequest) => Promise;\r\n postPremium: (data: FormData) => Promise;\r\n postReinstatePremium: () => Promise;\r\n postCancelPremium: () => Promise;\r\n postAccountStorage: (request: StorageRequest) => Promise;\r\n postAccountPayment: (request: PaymentRequest) => Promise;\r\n postAccountLicense: (data: FormData) => Promise;\r\n postAccountKey: (request: UpdateKeyRequest) => Promise;\r\n postAccountKeys: (request: KeysRequest) => Promise;\r\n postAccountVerifyEmail: () => Promise;\r\n postAccountVerifyEmailToken: (request: VerifyEmailRequest) => Promise;\r\n postAccountRecoverDelete: (request: DeleteRecoverRequest) => Promise;\r\n postAccountRecoverDeleteToken: (request: VerifyDeleteRecoverRequest) => Promise;\r\n postAccountKdf: (request: KdfRequest) => Promise;\r\n\r\n getFolder: (id: string) => Promise;\r\n postFolder: (request: FolderRequest) => Promise;\r\n putFolder: (id: string, request: FolderRequest) => Promise;\r\n deleteFolder: (id: string) => Promise;\r\n\r\n getCipher: (id: string) => Promise;\r\n getCipherAdmin: (id: string) => Promise;\r\n getCiphersOrganization: (organizationId: string) => Promise>;\r\n postCipher: (request: CipherRequest) => Promise;\r\n postCipherCreate: (request: CipherCreateRequest) => Promise;\r\n postCipherAdmin: (request: CipherCreateRequest) => Promise;\r\n putCipher: (id: string, request: CipherRequest) => Promise;\r\n putCipherAdmin: (id: string, request: CipherRequest) => Promise;\r\n deleteCipher: (id: string) => Promise;\r\n deleteCipherAdmin: (id: string) => Promise;\r\n deleteManyCiphers: (request: CipherBulkDeleteRequest) => Promise;\r\n putMoveCiphers: (request: CipherBulkMoveRequest) => Promise;\r\n putShareCipher: (id: string, request: CipherShareRequest) => Promise;\r\n putShareCiphers: (request: CipherBulkShareRequest) => Promise;\r\n putCipherCollections: (id: string, request: CipherCollectionsRequest) => Promise;\r\n putCipherCollectionsAdmin: (id: string, request: CipherCollectionsRequest) => Promise;\r\n postPurgeCiphers: (request: PasswordVerificationRequest, organizationId?: string) => Promise;\r\n postImportCiphers: (request: ImportCiphersRequest) => Promise;\r\n postImportOrganizationCiphers: (organizationId: string, request: ImportOrganizationCiphersRequest) => Promise;\r\n\r\n postCipherAttachment: (id: string, data: FormData) => Promise;\r\n postCipherAttachmentAdmin: (id: string, data: FormData) => Promise;\r\n deleteCipherAttachment: (id: string, attachmentId: string) => Promise;\r\n deleteCipherAttachmentAdmin: (id: string, attachmentId: string) => Promise;\r\n postShareCipherAttachment: (id: string, attachmentId: string, data: FormData,\r\n organizationId: string) => Promise;\r\n\r\n getCollectionDetails: (organizationId: string, id: string) => Promise;\r\n getUserCollections: () => Promise>;\r\n getCollections: (organizationId: string) => Promise>;\r\n getCollectionUsers: (organizationId: string, id: string) => Promise;\r\n postCollection: (organizationId: string, request: CollectionRequest) => Promise;\r\n putCollectionUsers: (organizationId: string, id: string, request: SelectionReadOnlyRequest[]) => Promise;\r\n putCollection: (organizationId: string, id: string, request: CollectionRequest) => Promise;\r\n deleteCollection: (organizationId: string, id: string) => Promise;\r\n deleteCollectionUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\r\n\r\n getGroupDetails: (organizationId: string, id: string) => Promise;\r\n getGroups: (organizationId: string) => Promise>;\r\n getGroupUsers: (organizationId: string, id: string) => Promise;\r\n postGroup: (organizationId: string, request: GroupRequest) => Promise;\r\n putGroup: (organizationId: string, id: string, request: GroupRequest) => Promise;\r\n putGroupUsers: (organizationId: string, id: string, request: string[]) => Promise;\r\n deleteGroup: (organizationId: string, id: string) => Promise;\r\n deleteGroupUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\r\n\r\n getOrganizationUser: (organizationId: string, id: string) => Promise;\r\n getOrganizationUserGroups: (organizationId: string, id: string) => Promise;\r\n getOrganizationUsers: (organizationId: string) => Promise>;\r\n postOrganizationUserInvite: (organizationId: string, request: OrganizationUserInviteRequest) => Promise;\r\n postOrganizationUserReinvite: (organizationId: string, id: string) => Promise;\r\n postOrganizationUserAccept: (organizationId: string, id: string,\r\n request: OrganizationUserAcceptRequest) => Promise;\r\n postOrganizationUserConfirm: (organizationId: string, id: string,\r\n request: OrganizationUserConfirmRequest) => Promise;\r\n putOrganizationUser: (organizationId: string, id: string, request: OrganizationUserUpdateRequest) => Promise;\r\n putOrganizationUserGroups: (organizationId: string, id: string,\r\n request: OrganizationUserUpdateGroupsRequest) => Promise;\r\n deleteOrganizationUser: (organizationId: string, id: string) => Promise;\r\n\r\n getSync: () => Promise;\r\n postImportDirectory: (organizationId: string, request: ImportDirectoryRequest) => Promise;\r\n\r\n getSettingsDomains: () => Promise;\r\n putSettingsDomains: (request: UpdateDomainsRequest) => Promise;\r\n\r\n getTwoFactorProviders: () => Promise>;\r\n getTwoFactorOrganizationProviders: (organizationId: string) => Promise>;\r\n getTwoFactorAuthenticator: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorEmail: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorDuo: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorOrganizationDuo: (organizationId: string,\r\n request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorYubiKey: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorU2f: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorU2fChallenge: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorRecover: (request: PasswordVerificationRequest) => Promise;\r\n putTwoFactorAuthenticator: (\r\n request: UpdateTwoFactorAuthenticatorRequest) => Promise;\r\n putTwoFactorEmail: (request: UpdateTwoFactorEmailRequest) => Promise;\r\n putTwoFactorDuo: (request: UpdateTwoFactorDuoRequest) => Promise;\r\n putTwoFactorOrganizationDuo: (organizationId: string,\r\n request: UpdateTwoFactorDuoRequest) => Promise;\r\n putTwoFactorYubiKey: (request: UpdateTwoFactorYubioOtpRequest) => Promise;\r\n putTwoFactorU2f: (request: UpdateTwoFactorU2fRequest) => Promise;\r\n deleteTwoFactorU2f: (request: UpdateTwoFactorU2fDeleteRequest) => Promise;\r\n putTwoFactorDisable: (request: TwoFactorProviderRequest) => Promise;\r\n putTwoFactorOrganizationDisable: (organizationId: string,\r\n request: TwoFactorProviderRequest) => Promise;\r\n postTwoFactorRecover: (request: TwoFactorRecoveryRequest) => Promise;\r\n postTwoFactorEmailSetup: (request: TwoFactorEmailRequest) => Promise;\r\n postTwoFactorEmail: (request: TwoFactorEmailRequest) => Promise;\r\n\r\n getOrganization: (id: string) => Promise;\r\n getOrganizationBilling: (id: string) => Promise;\r\n getOrganizationLicense: (id: string, installationId: string) => Promise;\r\n postOrganization: (request: OrganizationCreateRequest) => Promise;\r\n putOrganization: (id: string, request: OrganizationUpdateRequest) => Promise;\r\n postLeaveOrganization: (id: string) => Promise;\r\n postOrganizationLicense: (data: FormData) => Promise;\r\n postOrganizationLicenseUpdate: (id: string, data: FormData) => Promise;\r\n postOrganizationSeat: (id: string, request: SeatRequest) => Promise;\r\n postOrganizationStorage: (id: string, request: StorageRequest) => Promise;\r\n postOrganizationPayment: (id: string, request: PaymentRequest) => Promise;\r\n postOrganizationVerifyBank: (id: string, request: VerifyBankRequest) => Promise;\r\n postOrganizationCancel: (id: string) => Promise;\r\n postOrganizationReinstate: (id: string) => Promise;\r\n deleteOrganization: (id: string, request: PasswordVerificationRequest) => Promise;\r\n\r\n getEvents: (start: string, end: string, token: string) => Promise>;\r\n getEventsCipher: (id: string, start: string, end: string, token: string) => Promise>;\r\n getEventsOrganization: (id: string, start: string, end: string,\r\n token: string) => Promise>;\r\n getEventsOrganizationUser: (organizationId: string, id: string,\r\n start: string, end: string, token: string) => Promise>;\r\n\r\n getUserPublicKey: (id: string) => Promise;\r\n\r\n getActiveBearerToken: () => Promise;\r\n fetch: (request: Request) => Promise;\r\n}\r\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\r\n\nimport { I18nService } from '../../abstractions/i18n.service';\n\r\n@Pipe({\n name: 'i18n',\n})\r\nexport class I18nPipe implements PipeTransform {\n constructor(private i18nService: I18nService) { }\n\r\n transform(id: string, p1?: string, p2?: string, p3?: string): string {\r\n return this.i18nService.t(id, p1, p2, p3);\r\n }\r\n}\n","import { OrganizationData } from '../models/data/organizationData';\nimport { Organization } from '../models/domain/organization';\n\nimport { KdfType } from '../enums/kdfType';\n\nexport abstract class UserService {\n setInformation: (userId: string, email: string, kdf: KdfType, kdfIterations: number) => Promise;\n setSecurityStamp: (stamp: string) => Promise;\n getUserId: () => Promise;\n getEmail: () => Promise;\n getSecurityStamp: () => Promise;\n getKdf: () => Promise;\n getKdfIterations: () => Promise;\n clear: () => Promise;\n isAuthenticated: () => Promise;\n canAccessPremium: () => Promise;\n getOrganization: (id: string) => Promise;\n getAllOrganizations: () => Promise;\n replaceOrganizations: (organizations: { [id: string]: OrganizationData; }) => Promise;\n clearOrganizations: (userId: string) => Promise;\n}\n","import { DeviceType } from '../enums/deviceType';\r\n\r\nexport abstract class PlatformUtilsService {\r\n identityClientId: string;\r\n getDevice: () => DeviceType;\r\n getDeviceString: () => string;\r\n isFirefox: () => boolean;\r\n isChrome: () => boolean;\r\n isEdge: () => boolean;\r\n isOpera: () => boolean;\r\n isVivaldi: () => boolean;\r\n isSafari: () => boolean;\r\n isIE: () => boolean;\r\n isMacAppStore: () => boolean;\r\n analyticsId: () => string;\r\n isViewOpen: () => boolean;\r\n lockTimeout: () => number;\r\n launchUri: (uri: string, options?: any) => void;\r\n saveFile: (win: Window, blobData: any, blobOptions: any, fileName: string) => void;\r\n getApplicationVersion: () => string;\r\n supportsU2f: (win: Window) => boolean;\r\n supportsDuo: () => boolean;\r\n showToast: (type: 'error' | 'success' | 'warning' | 'info', title: string, text: string | string[],\r\n options?: any) => void;\r\n showDialog: (text: string, title?: string, confirmText?: string, cancelText?: string,\r\n type?: string) => Promise;\r\n eventTrack: (action: string, label?: string, options?: any) => void;\r\n isDev: () => boolean;\r\n isSelfHost: () => boolean;\r\n copyToClipboard: (text: string, options?: any) => void;\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\n@Injectable()\r\nexport class ValidationService {\r\n constructor(private i18nService: I18nService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n showError(data: any): string[] {\r\n const defaultErrorMessage = this.i18nService.t('unexpectedError');\r\n const errors: string[] = [];\r\n\r\n if (data != null && typeof data === 'string') {\r\n errors.push(data);\r\n } else if (data == null || typeof data !== 'object') {\r\n errors.push(defaultErrorMessage);\r\n } else if (data.validationErrors == null) {\r\n errors.push(data.message ? data.message : defaultErrorMessage);\r\n } else {\r\n for (const key in data.validationErrors) {\r\n if (!data.validationErrors.hasOwnProperty(key)) {\r\n continue;\r\n }\r\n\r\n data.validationErrors[key].forEach((item: string) => {\r\n let prefix = '';\r\n if (key.indexOf('[') > -1 && key.indexOf(']') > -1) {\r\n const lastSep = key.lastIndexOf('.');\r\n prefix = key.substr(0, lastSep > -1 ? lastSep : key.length) + ': ';\r\n }\r\n errors.push(prefix + item);\r\n });\r\n }\r\n }\r\n\r\n if (errors.length === 1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors[0]);\r\n } else if (errors.length > 1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors, {\r\n timeout: 5000 * errors.length,\r\n });\r\n }\r\n\r\n return errors;\r\n }\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { ValidationService } from '../services/validation.service';\r\n\r\n@Directive({\r\n selector: '[appApiAction]',\r\n})\r\nexport class ApiActionDirective implements OnChanges {\r\n @Input() appApiAction: Promise;\n\n constructor(private el: ElementRef, private validationService: ValidationService) { }\n\n ngOnChanges(changes: any) {\n if (this.appApiAction == null || this.appApiAction.then == null) {\r\n return;\r\n }\n\n this.el.nativeElement.loading = true;\n\r\n this.appApiAction.then((response: any) => {\n this.el.nativeElement.loading = false;\n }, (e: any) => {\n this.el.nativeElement.loading = false;\n this.validationService.showError(e);\n });\r\n }\r\n}\n","export abstract class MessagingService {\r\n send: (subscriber: string, arg?: any) => void;\r\n}\r\n","import { CipherString } from '../models/domain/cipherString';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\n\nimport { KdfType } from '../enums/kdfType';\n\nexport abstract class CryptoService {\n setKey: (key: SymmetricCryptoKey) => Promise;\n setKeyHash: (keyHash: string) => Promise<{}>;\n setEncKey: (encKey: string) => Promise<{}>;\n setEncPrivateKey: (encPrivateKey: string) => Promise<{}>;\n setOrgKeys: (orgs: ProfileOrganizationResponse[]) => Promise<{}>;\n getKey: () => Promise;\n getKeyHash: () => Promise;\n getEncKey: () => Promise;\n getPublicKey: () => Promise;\n getPrivateKey: () => Promise;\n getFingerprint: (userId: string, publicKey?: ArrayBuffer) => Promise;\n getOrgKeys: () => Promise>;\n getOrgKey: (orgId: string) => Promise;\n hasKey: () => Promise;\n hasEncKey: () => Promise;\n clearKey: () => Promise;\n clearKeyHash: () => Promise;\n clearEncKey: (memoryOnly?: boolean) => Promise;\n clearKeyPair: (memoryOnly?: boolean) => Promise;\n clearOrgKeys: (memoryOnly?: boolean) => Promise;\n clearKeys: () => Promise;\n toggleKey: () => Promise;\n makeKey: (password: string, salt: string, kdf: KdfType, kdfIterations: number) => Promise;\n makeShareKey: () => Promise<[CipherString, SymmetricCryptoKey]>;\n makeKeyPair: (key?: SymmetricCryptoKey) => Promise<[string, CipherString]>;\n hashPassword: (password: string, key: SymmetricCryptoKey) => Promise;\n makeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\n remakeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\n encrypt: (plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\n encryptToBytes: (plainValue: ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\n rsaEncrypt: (data: ArrayBuffer, publicKey?: ArrayBuffer) => Promise;\n decryptToBytes: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\n decryptToUtf8: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\n decryptFromBytes: (encBuf: ArrayBuffer, key: SymmetricCryptoKey) => Promise;\n randomNumber: (min: number, max: number) => Promise;\n}\n","import { CipherType } from '../enums/cipherType';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Field } from '../models/domain/field';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { AttachmentView } from '../models/view/attachmentView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FieldView } from '../models/view/fieldView';\r\n\r\nexport abstract class CipherService {\r\n decryptedCipherCache: CipherView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CipherView, key?: SymmetricCryptoKey, originalCipher?: Cipher) => Promise;\r\n encryptFields: (fieldsModel: FieldView[], key: SymmetricCryptoKey) => Promise;\r\n encryptField: (fieldModel: FieldView, key: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllDecryptedForGrouping: (groupingId: string, folder?: boolean) => Promise;\r\n getAllDecryptedForUrl: (url: string, includeOtherTypes?: CipherType[]) => Promise;\r\n getAllFromApiForOrganization: (organizationId: string) => Promise;\r\n getLastUsedForUrl: (url: string) => Promise;\r\n updateLastUsedDate: (id: string) => Promise;\r\n saveNeverDomain: (domain: string) => Promise;\r\n saveWithServer: (cipher: Cipher) => Promise;\r\n shareWithServer: (cipher: CipherView, organizationId: string, collectionIds: string[]) => Promise;\r\n shareManyWithServer: (ciphers: CipherView[], organizationId: string, collectionIds: string[]) => Promise;\r\n saveAttachmentWithServer: (cipher: Cipher, unencryptedFile: any, admin?: boolean) => Promise;\r\n saveAttachmentRawWithServer: (cipher: Cipher, filename: string, data: ArrayBuffer,\r\n admin?: boolean) => Promise;\r\n saveCollectionsWithServer: (cipher: Cipher) => Promise;\r\n upsert: (cipher: CipherData | CipherData[]) => Promise;\r\n replace: (ciphers: { [id: string]: CipherData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n moveManyWithServer: (ids: string[], folderId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n deleteManyWithServer: (ids: string[]) => Promise;\r\n deleteAttachment: (id: string, attachmentId: string) => Promise;\r\n deleteAttachmentWithServer: (id: string, attachmentId: string) => Promise;\r\n sortCiphersByLastUsed: (a: any, b: any) => number;\r\n sortCiphersByLastUsedThenName: (a: any, b: any) => number;\r\n getLocaleSortingFunction: () => (a: CipherView, b: CipherView) => number;\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\n@Component({\r\n selector: 'app-callout',\r\n templateUrl: 'callout.component.html',\r\n})\r\nexport class CalloutComponent implements OnInit {\r\n @Input() type = 'info';\r\n @Input() icon: string;\r\n @Input() title: string;\r\n\r\n calloutStyle: string;\r\n\r\n constructor(private i18nService: I18nService) { }\r\n\r\n ngOnInit() {\r\n this.calloutStyle = this.type;\r\n\r\n if (this.type === 'warning' || this.type === 'danger') {\r\n if (this.type === 'danger') {\r\n this.calloutStyle = 'danger';\r\n }\r\n if (this.title === undefined) {\r\n this.title = this.i18nService.t('warning');\r\n }\r\n if (this.icon === undefined) {\r\n this.icon = 'fa-warning';\r\n }\r\n } else if (this.type === 'error') {\r\n this.calloutStyle = 'danger';\r\n if (this.title === undefined) {\r\n this.title = this.i18nService.t('error');\r\n }\r\n if (this.icon === undefined) {\r\n this.icon = 'fa-bolt';\r\n }\r\n } else if (this.type === 'tip') {\r\n this.calloutStyle = 'success';\r\n if (this.title === undefined) {\r\n this.title = this.i18nService.t('tip');\r\n }\r\n if (this.icon === undefined) {\r\n this.icon = 'fa-lightbulb-o';\r\n }\r\n }\r\n }\r\n}\r\n","export abstract class StateService {\r\n get: (key: string) => Promise;\r\n save: (key: string, obj: any) => Promise;\r\n remove: (key: string) => Promise;\r\n purge: () => Promise;\r\n}\r\n","
\r\n

\r\n \r\n {{title}}\r\n

\r\n \r\n
\r\n","import * as papa from 'papaparse';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { LoginUriView } from '../models/view/loginUriView';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport abstract class BaseImporter {\r\n organization = false;\r\n\r\n protected newLineRegex = /(?:\\r\\n|\\r|\\n)/;\r\n\r\n protected passwordFieldNames = [\r\n 'password', 'pass word', 'passphrase', 'pass phrase',\r\n 'pass', 'code', 'code word', 'codeword',\r\n 'secret', 'secret word', 'personpwd',\r\n 'key', 'keyword', 'key word', 'keyphrase', 'key phrase',\r\n 'form_pw', 'wppassword', 'pin', 'pwd', 'pw', 'pword', 'passwd',\r\n 'p', 'serial', 'serial#', 'license key', 'reg #',\r\n\r\n // Non-English names\r\n 'passwort',\r\n ];\r\n\r\n protected usernameFieldNames = [\r\n 'user', 'name', 'user name', 'username', 'login name',\r\n 'email', 'e-mail', 'id', 'userid', 'user id',\r\n 'login', 'form_loginname', 'wpname', 'mail',\r\n 'loginid', 'login id', 'log', 'personlogin',\r\n 'first name', 'last name', 'card#', 'account #',\r\n 'member', 'member #',\r\n\r\n // Non-English names\r\n 'nom', 'benutzername',\r\n ];\r\n\r\n protected notesFieldNames = [\r\n 'note', 'notes', 'comment', 'comments', 'memo',\r\n 'description', 'free form', 'freeform',\r\n 'free text', 'freetext', 'free',\r\n\r\n // Non-English names\r\n 'kommentar',\r\n ];\r\n\r\n protected uriFieldNames: string[] = [\r\n 'url', 'hyper link', 'hyperlink', 'link',\r\n 'host', 'hostname', 'host name', 'server', 'address',\r\n 'hyper ref', 'href', 'web', 'website', 'web site', 'site',\r\n 'web-site', 'uri',\r\n\r\n // Non-English names\r\n 'ort', 'adresse',\r\n ];\r\n\r\n protected parseXml(data: string): Document {\r\n const parser = new DOMParser();\r\n const doc = parser.parseFromString(data, 'application/xml');\r\n return doc != null && doc.querySelector('parsererror') == null ? doc : null;\r\n }\r\n\r\n protected parseCsv(data: string, header: boolean): any[] {\r\n data = this.splitNewLine(data).join('\\n').trim();\r\n const result = papa.parse(data, {\r\n header: header,\r\n encoding: 'UTF-8',\r\n skipEmptyLines: false,\r\n });\r\n if (result.errors != null && result.errors.length > 0) {\r\n result.errors.forEach((e) => {\r\n if (e.row != null) {\r\n // tslint:disable-next-line\r\n console.warn('Error parsing row ' + e.row + ': ' + e.message);\r\n }\r\n });\r\n }\r\n return result.data && result.data.length > 0 ? result.data : null;\r\n }\r\n\r\n protected parseSingleRowCsv(rowData: string) {\r\n if (this.isNullOrWhitespace(rowData)) {\r\n return null;\r\n }\r\n const parsedRow = this.parseCsv(rowData, false);\r\n if (parsedRow != null && parsedRow.length > 0 && parsedRow[0].length > 0) {\r\n return parsedRow[0];\r\n }\r\n return null;\r\n }\r\n\r\n protected makeUriArray(uri: string | string[]): LoginUriView[] {\r\n if (uri == null) {\r\n return null;\r\n }\r\n\r\n if (typeof uri === 'string') {\r\n const loginUri = new LoginUriView();\r\n loginUri.uri = this.fixUri(uri);\r\n if (this.isNullOrWhitespace(loginUri.uri)) {\r\n return null;\r\n }\r\n loginUri.match = null;\r\n return [loginUri];\r\n }\r\n\r\n if (uri.length > 0) {\r\n const returnArr: LoginUriView[] = [];\r\n uri.forEach((u) => {\r\n const loginUri = new LoginUriView();\r\n loginUri.uri = this.fixUri(u);\r\n if (this.isNullOrWhitespace(loginUri.uri)) {\r\n return;\r\n }\r\n loginUri.match = null;\r\n returnArr.push(loginUri);\r\n });\r\n return returnArr.length === 0 ? null : returnArr;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n protected fixUri(uri: string) {\r\n if (uri == null) {\r\n return null;\r\n }\r\n uri = uri.toLowerCase().trim();\r\n if (uri.indexOf('://') === -1 && uri.indexOf('.') >= 0) {\r\n uri = 'http://' + uri;\r\n }\r\n if (uri.length > 1000) {\r\n return uri.substring(0, 1000);\r\n }\r\n return uri;\r\n }\r\n\r\n protected nameFromUrl(url: string) {\r\n const hostname = Utils.getHostname(url);\r\n if (this.isNullOrWhitespace(hostname)) {\r\n return null;\r\n }\r\n return hostname.startsWith('www.') ? hostname.replace('www.', '') : hostname;\r\n }\r\n\r\n protected isNullOrWhitespace(str: string): boolean {\r\n return str == null || typeof str !== 'string' || str.trim() === '';\r\n }\r\n\r\n protected getValueOrDefault(str: string, defaultValue: string = null): string {\r\n if (this.isNullOrWhitespace(str)) {\r\n return defaultValue;\r\n }\r\n return str;\r\n }\r\n\r\n protected splitNewLine(str: string): string[] {\r\n return str.split(this.newLineRegex);\r\n }\r\n\r\n // ref https://stackoverflow.com/a/5911300\r\n protected getCardBrand(cardNum: string) {\r\n if (this.isNullOrWhitespace(cardNum)) {\r\n return null;\r\n }\r\n\r\n // Visa\r\n let re = new RegExp('^4');\r\n if (cardNum.match(re) != null) {\r\n return 'Visa';\r\n }\r\n\r\n // Mastercard\r\n // Updated for Mastercard 2017 BINs expansion\r\n if (/^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$/\r\n .test(cardNum)) {\r\n return 'Mastercard';\r\n }\r\n\r\n // AMEX\r\n re = new RegExp('^3[47]');\r\n if (cardNum.match(re) != null) {\r\n return 'Amex';\r\n }\r\n\r\n // Discover\r\n re = new RegExp('^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)');\r\n if (cardNum.match(re) != null) {\r\n return 'Discover';\r\n }\r\n\r\n // Diners\r\n re = new RegExp('^36');\r\n if (cardNum.match(re) != null) {\r\n return 'Diners Club';\r\n }\r\n\r\n // Diners - Carte Blanche\r\n re = new RegExp('^30[0-5]');\r\n if (cardNum.match(re) != null) {\r\n return 'Diners Club';\r\n }\r\n\r\n // JCB\r\n re = new RegExp('^35(2[89]|[3-8][0-9])');\r\n if (cardNum.match(re) != null) {\r\n return 'JCB';\r\n }\r\n\r\n // Visa Electron\r\n re = new RegExp('^(4026|417500|4508|4844|491(3|7))');\r\n if (cardNum.match(re) != null) {\r\n return 'Visa';\r\n }\r\n\r\n return null;\r\n }\r\n\r\n protected moveFoldersToCollections(result: ImportResult) {\r\n result.folderRelationships.forEach((r) => result.collectionRelationships.push(r));\r\n result.collections = result.folders.map((f) => {\r\n const collection = new CollectionView();\r\n collection.name = f.name;\r\n return collection;\r\n });\r\n result.folderRelationships = [];\r\n result.folders = [];\r\n }\r\n\r\n protected querySelectorDirectChild(parentEl: Element, query: string) {\r\n const els = this.querySelectorAllDirectChild(parentEl, query);\r\n return els.length === 0 ? null : els[0];\r\n }\r\n\r\n protected querySelectorAllDirectChild(parentEl: Element, query: string) {\r\n return Array.from(parentEl.querySelectorAll(query)).filter((el) => el.parentNode === parentEl);\r\n }\r\n\r\n protected initLoginCipher() {\r\n const cipher = new CipherView();\r\n cipher.favorite = false;\r\n cipher.notes = '';\r\n cipher.fields = [];\r\n cipher.login = new LoginView();\r\n cipher.type = CipherType.Login;\r\n return cipher;\r\n }\r\n\r\n protected cleanupCipher(cipher: CipherView) {\r\n if (cipher == null) {\r\n return;\r\n }\r\n if (cipher.type !== CipherType.Login) {\r\n cipher.login = null;\r\n }\r\n if (this.isNullOrWhitespace(cipher.name)) {\r\n cipher.name = '--';\r\n }\r\n if (this.isNullOrWhitespace(cipher.notes)) {\r\n cipher.notes = null;\r\n } else {\r\n cipher.notes = cipher.notes.trim();\r\n }\r\n if (cipher.fields != null && cipher.fields.length === 0) {\r\n cipher.fields = null;\r\n }\r\n }\r\n\r\n protected processKvp(cipher: CipherView, key: string, value: string) {\r\n if (this.isNullOrWhitespace(value)) {\r\n return;\r\n }\r\n if (this.isNullOrWhitespace(key)) {\r\n key = '';\r\n }\r\n if (value.length > 200 || value.trim().search(this.newLineRegex) > -1) {\r\n if (cipher.notes == null) {\r\n cipher.notes = '';\r\n }\r\n cipher.notes += (key + ': ' + this.splitNewLine(value).join('\\n') + '\\n');\r\n } else {\r\n if (cipher.fields == null) {\r\n cipher.fields = [];\r\n }\r\n const field = new FieldView();\r\n field.type = FieldType.Text;\r\n field.name = key;\r\n field.value = value;\r\n cipher.fields.push(field);\r\n }\r\n }\r\n\r\n protected processFolder(result: ImportResult, folderName: string) {\r\n let folderIndex = result.folders.length;\r\n const hasFolder = !this.isNullOrWhitespace(folderName);\r\n let addFolder = hasFolder;\r\n\r\n if (hasFolder) {\r\n for (let i = 0; i < result.folders.length; i++) {\r\n if (result.folders[i].name === folderName) {\r\n addFolder = false;\r\n folderIndex = i;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (addFolder) {\r\n const f = new FolderView();\r\n f.name = folderName;\r\n result.folders.push(f);\r\n }\r\n if (hasFolder) {\r\n result.folderRelationships.push([result.ciphers.length, folderIndex]);\r\n }\r\n }\r\n\r\n protected convertToNoteIfNeeded(cipher: CipherView) {\r\n if (cipher.type === CipherType.Login && this.isNullOrWhitespace(cipher.login.username) &&\r\n this.isNullOrWhitespace(cipher.login.password) &&\r\n (cipher.login.uris == null || cipher.login.uris.length === 0)) {\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n }\r\n }\r\n}\r\n","import { CipherView } from '../view/cipherView';\nimport { CollectionView } from '../view/collectionView';\nimport { FolderView } from '../view/folderView';\n\nexport class ImportResult {\n success = false;\n errorMessage: string;\n ciphers: CipherView[] = [];\n folders: FolderView[] = [];\n folderRelationships: Array<[number, number]> = [];\n collections: CollectionView[] = [];\n collectionRelationships: Array<[number, number]> = [];\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopClick]',\r\n})\r\nexport class StopClickDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.preventDefault();\r\n }\r\n}\n","import * as tldjs from 'tldjs';\r\n\r\nimport { I18nService } from '../abstractions/i18n.service';\r\n\r\n// tslint:disable-next-line\r\nconst nodeURL = typeof window === 'undefined' ? require('url') : null;\r\n\r\nexport class Utils {\r\n static inited = false;\r\n static isNativeScript = false;\r\n static isNode = false;\r\n static isBrowser = true;\r\n static isMobileBrowser = false;\r\n static global: any = null;\r\n\r\n static init() {\r\n if (Utils.inited) {\r\n return;\r\n }\r\n\r\n Utils.inited = true;\r\n Utils.isNode = typeof process !== 'undefined' && (process as any).release != null &&\r\n (process as any).release.name === 'node';\r\n Utils.isBrowser = typeof window !== 'undefined';\r\n Utils.isNativeScript = !Utils.isNode && !Utils.isBrowser;\r\n Utils.isMobileBrowser = Utils.isBrowser && this.isMobile(window);\r\n Utils.global = Utils.isNativeScript ? global : (Utils.isNode && !Utils.isBrowser ? global : window);\r\n }\r\n\r\n static fromB64ToArray(str: string): Uint8Array {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return new Uint8Array(Buffer.from(str, 'base64'));\r\n } else {\r\n const binaryString = window.atob(str);\r\n const bytes = new Uint8Array(binaryString.length);\r\n for (let i = 0; i < binaryString.length; i++) {\r\n bytes[i] = binaryString.charCodeAt(i);\r\n }\r\n return bytes;\r\n }\r\n }\r\n\r\n static fromHexToArray(str: string): Uint8Array {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return new Uint8Array(Buffer.from(str, 'hex'));\r\n } else {\r\n const bytes = new Uint8Array(str.length / 2);\r\n for (let i = 0; i < str.length; i += 2) {\r\n bytes[i / 2] = parseInt(str.substr(i, 2), 16);\r\n }\r\n return bytes;\r\n }\r\n }\r\n\r\n static fromUtf8ToArray(str: string): Uint8Array {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return new Uint8Array(Buffer.from(str, 'utf8'));\r\n } else {\r\n const strUtf8 = unescape(encodeURIComponent(str));\r\n const arr = new Uint8Array(strUtf8.length);\r\n for (let i = 0; i < strUtf8.length; i++) {\r\n arr[i] = strUtf8.charCodeAt(i);\r\n }\r\n return arr;\r\n }\r\n }\r\n\r\n static fromByteStringToArray(str: string): Uint8Array {\r\n const arr = new Uint8Array(str.length);\r\n for (let i = 0; i < str.length; i++) {\r\n arr[i] = str.charCodeAt(i);\r\n }\r\n return arr;\r\n }\r\n\r\n static fromBufferToB64(buffer: ArrayBuffer): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(buffer).toString('base64');\r\n } else {\r\n let binary = '';\r\n const bytes = new Uint8Array(buffer);\r\n for (let i = 0; i < bytes.byteLength; i++) {\r\n binary += String.fromCharCode(bytes[i]);\r\n }\r\n return window.btoa(binary);\r\n }\r\n }\r\n\r\n static fromBufferToUtf8(buffer: ArrayBuffer): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(buffer).toString('utf8');\r\n } else {\r\n const bytes = new Uint8Array(buffer);\r\n const encodedString = String.fromCharCode.apply(null, bytes);\r\n return decodeURIComponent(escape(encodedString));\r\n }\r\n }\r\n\r\n static fromBufferToByteString(buffer: ArrayBuffer): string {\r\n return String.fromCharCode.apply(null, new Uint8Array(buffer));\r\n }\r\n\r\n // ref: https://stackoverflow.com/a/40031979/1090359\r\n static fromBufferToHex(buffer: ArrayBuffer): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(buffer).toString('hex');\r\n } else {\r\n const bytes = new Uint8Array(buffer);\r\n return Array.prototype.map.call(bytes, (x: number) => ('00' + x.toString(16)).slice(-2)).join('');\r\n }\r\n }\r\n\r\n static fromUrlB64ToUtf8(b64Str: string): string {\r\n let output = b64Str.replace(/-/g, '+').replace(/_/g, '/');\r\n switch (output.length % 4) {\r\n case 0:\r\n break;\r\n case 2:\r\n output += '==';\r\n break;\r\n case 3:\r\n output += '=';\r\n break;\r\n default:\r\n throw new Error('Illegal base64url string!');\r\n }\r\n\r\n return Utils.fromB64ToUtf8(output);\r\n }\r\n\r\n static fromB64ToUtf8(b64Str: string): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(b64Str, 'base64').toString('utf8');\r\n } else {\r\n return decodeURIComponent(escape(window.atob(b64Str)));\r\n }\r\n }\r\n\r\n // ref: http://stackoverflow.com/a/2117523/1090359\r\n static newGuid(): string {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\r\n // tslint:disable-next-line\r\n const r = Math.random() * 16 | 0;\r\n // tslint:disable-next-line\r\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n\r\n static getHostname(uriString: string): string {\r\n const url = Utils.getUrl(uriString);\r\n try {\r\n return url != null ? url.hostname : null;\r\n } catch {\r\n return null;\r\n }\r\n }\r\n\r\n static getHost(uriString: string): string {\r\n const url = Utils.getUrl(uriString);\r\n try {\r\n return url != null ? url.host : null;\r\n } catch {\r\n return null;\r\n }\r\n }\r\n\r\n static getDomain(uriString: string): string {\r\n if (uriString == null) {\r\n return null;\r\n }\r\n\r\n uriString = uriString.trim();\r\n if (uriString === '') {\r\n return null;\r\n }\r\n\r\n if (uriString.startsWith('http://') || uriString.startsWith('https://')) {\r\n try {\r\n const url = Utils.getUrlObject(uriString);\r\n if (url.hostname === 'localhost' || Utils.validIpAddress(url.hostname)) {\r\n return url.hostname;\r\n }\r\n\r\n const urlDomain = tldjs != null && tldjs.getDomain != null ? tldjs.getDomain(url.hostname) : null;\r\n return urlDomain != null ? urlDomain : url.hostname;\r\n } catch (e) { }\r\n }\r\n\r\n const domain = tldjs != null && tldjs.getDomain != null ? tldjs.getDomain(uriString) : null;\r\n if (domain != null) {\r\n return domain;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n static getQueryParams(uriString: string): Map {\r\n const url = Utils.getUrl(uriString);\r\n if (url == null || url.search == null || url.search === '') {\r\n return null;\r\n }\r\n const map = new Map();\r\n const pairs = (url.search[0] === '?' ? url.search.substr(1) : url.search).split('&');\r\n pairs.forEach((pair) => {\r\n const parts = pair.split('=');\r\n if (parts.length < 1) {\r\n return;\r\n }\r\n map.set(decodeURIComponent(parts[0]).toLowerCase(), parts[1] == null ? '' : decodeURIComponent(parts[1]));\r\n });\r\n return map;\r\n }\r\n\r\n static getSortFunction(i18nService: I18nService, prop: string) {\r\n return (a: any, b: any) => {\r\n if (a[prop] == null && b[prop] != null) {\r\n return -1;\r\n }\r\n if (a[prop] != null && b[prop] == null) {\r\n return 1;\r\n }\r\n if (a[prop] == null && b[prop] == null) {\r\n return 0;\r\n }\r\n\r\n return i18nService.collator ? i18nService.collator.compare(a[prop], b[prop]) :\r\n a[prop].localeCompare(b[prop]);\r\n };\r\n }\r\n\r\n private static validIpAddress(ipString: string): boolean {\r\n // tslint:disable-next-line\r\n const ipRegex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;\r\n return ipRegex.test(ipString);\r\n }\r\n\r\n private static isMobile(win: Window) {\r\n let mobile = false;\r\n ((a) => {\r\n // tslint:disable-next-line\r\n if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0, 4))) {\r\n mobile = true;\r\n }\r\n })(win.navigator.userAgent || win.navigator.vendor || (win as any).opera);\r\n return mobile || win.navigator.userAgent.match(/iPad/i) != null;\r\n }\r\n\r\n private static getUrl(uriString: string): URL {\r\n if (uriString == null) {\r\n return null;\r\n }\r\n\r\n uriString = uriString.trim();\r\n if (uriString === '') {\r\n return null;\r\n }\r\n\r\n const hasProtocol = uriString.indexOf('://') > -1;\r\n if (!hasProtocol && uriString.indexOf('.') > -1) {\r\n uriString = 'http://' + uriString;\r\n } else if (!hasProtocol) {\r\n return null;\r\n }\r\n\r\n return Utils.getUrlObject(uriString);\r\n }\r\n\r\n private static getUrlObject(uriString: string): URL {\r\n try {\r\n if (nodeURL != null) {\r\n return nodeURL.URL ? new nodeURL.URL(uriString) : nodeURL.parse(uriString);\r\n } else if (typeof URL === 'function') {\r\n return new URL(uriString);\r\n } else if (window != null) {\r\n const anchor = window.document.createElement('a');\r\n anchor.href = uriString;\r\n return anchor as any;\r\n }\r\n } catch (e) { }\r\n\r\n return null;\r\n }\r\n}\r\n\r\nUtils.init();\r\n","export enum CipherType {\r\n Login = 1,\r\n SecureNote = 2,\r\n Card = 3,\r\n Identity = 4,\r\n}\n","import { CollectionData } from '../models/data/collectionData';\r\n\r\nimport { Collection } from '../models/domain/collection';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { CollectionView } from '../models/view/collectionView';\r\n\r\nexport abstract class CollectionService {\r\n decryptedCollectionCache: CollectionView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CollectionView) => Promise;\r\n decryptMany: (collections: Collection[]) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: (collections?: CollectionView[]) => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n upsert: (collection: CollectionData | CollectionData[]) => Promise;\r\n replace: (collections: { [id: string]: CollectionData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\n@Directive({\n selector: '[appInputVerbatim]',\n})\nexport class InputVerbatimDirective {\n @Input() set appInputVerbatim(condition: boolean | string) {\n this.disableComplete = condition === '' || condition === true;\n }\n\n private disableComplete: boolean;\n\n constructor(private el: ElementRef, private renderer: Renderer2) { }\n\n ngOnInit() {\n if (this.disableComplete && !this.el.nativeElement.hasAttribute('autocomplete')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocomplete', 'off');\n }\n if (!this.el.nativeElement.hasAttribute('autocapitalize')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocapitalize', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('autocorrect')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocorrect', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('spellcheck')) {\n this.renderer.setAttribute(this.el.nativeElement, 'spellcheck', 'false');\n }\n if (!this.el.nativeElement.hasAttribute('inputmode')) {\n this.renderer.setAttribute(this.el.nativeElement, 'inputmode', 'verbatim');\n }\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nexport abstract class FolderService {\r\n decryptedFolderCache: FolderView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: FolderView, key?: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: () => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n saveWithServer: (folder: Folder) => Promise;\r\n upsert: (folder: FolderData | FolderData[]) => Promise;\r\n replace: (folders: { [id: string]: FolderData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n}\r\n","import { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nexport abstract class PasswordGenerationService {\r\n generatePassword: (options: any) => Promise;\r\n generatePassphrase: (options: any) => Promise;\r\n getOptions: () => any;\r\n saveOptions: (options: any) => Promise;\r\n getHistory: () => Promise;\r\n addHistory: (password: string) => Promise;\r\n clear: () => Promise;\r\n passwordStrength: (password: string, userInputs?: string[]) => zxcvbn.ZXCVBNResult;\r\n}\r\n","import {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\n\r\nexport abstract class SyncService {\r\n syncInProgress: boolean;\r\n\r\n getLastSync: () => Promise;\r\n setLastSync: (date: Date) => Promise;\r\n fullSync: (forceSync: boolean) => Promise;\r\n syncUpsertFolder: (notification: SyncFolderNotification, isEdit: boolean) => Promise;\r\n syncDeleteFolder: (notification: SyncFolderNotification) => Promise;\r\n syncUpsertCipher: (notification: SyncCipherNotification, isEdit: boolean) => Promise;\r\n syncDeleteCipher: (notification: SyncFolderNotification) => Promise;\r\n}\r\n","export abstract class StorageService {\r\n get: (key: string) => Promise;\r\n save: (key: string, obj: any) => Promise;\r\n remove: (key: string) => Promise;\r\n}\r\n","export abstract class TokenService {\n token: string;\n decodedToken: any;\n refreshToken: string;\n setTokens: (accessToken: string, refreshToken: string) => Promise;\n setToken: (token: string) => Promise;\n getToken: () => Promise;\n setRefreshToken: (refreshToken: string) => Promise;\n getRefreshToken: () => Promise;\n setTwoFactorToken: (token: string, email: string) => Promise;\n getTwoFactorToken: (email: string) => Promise;\n clearTwoFactorToken: (email: string) => Promise;\n clearToken: () => Promise;\n decodeToken: () => any;\n getTokenExpirationDate: () => Date;\n tokenSecondsRemaining: (offsetSeconds?: number) => number;\n tokenNeedsRefresh: (minutes?: number) => boolean;\n getUserId: () => string;\n getEmail: () => string;\n getEmailVerified: () => boolean;\n getName: () => string;\n getPremium: () => boolean;\n getIssuer: () => string;\n}\n","export abstract class EnvironmentService {\r\n baseUrl: string;\r\n webVaultUrl: string;\r\n apiUrl: string;\r\n identityUrl: string;\r\n iconsUrl: string;\r\n notificationsUrl: string;\r\n\r\n getWebVaultUrl: () => string;\r\n setUrlsFromStorage: () => Promise;\r\n setUrls: (urls: any) => Promise;\r\n}\r\n","export class PasswordVerificationRequest {\n masterPasswordHash: string;\n}\n","import { TwoFactorProviderType } from '../enums/twoFactorProviderType';\n\nimport { AuthResult } from '../models/domain/authResult';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nexport abstract class AuthService {\n email: string;\n masterPasswordHash: string;\n twoFactorProviders: Map;\n selectedTwoFactorProviderType: TwoFactorProviderType;\n\n logIn: (email: string, masterPassword: string) => Promise;\n logInTwoFactor: (twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,\n remember?: boolean) => Promise;\n logInComplete: (email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,\n twoFactorToken: string, remember?: boolean) => Promise;\n logOut: (callback: Function) => void;\n getSupportedTwoFactorProviders: (win: Window) => any[];\n getDefaultTwoFactorProvider: (u2fSupported: boolean) => TwoFactorProviderType;\n makePreloginKey: (masterPassword: string, email: string) => Promise;\n}\n","export class ConstantsService {\r\n static readonly environmentUrlsKey: string = 'environmentUrls';\r\n static readonly disableGaKey: string = 'disableGa';\r\n static readonly disableAddLoginNotificationKey: string = 'disableAddLoginNotification';\r\n static readonly disableChangedPasswordNotificationKey: string = 'disableChangedPasswordNotification';\r\n static readonly disableContextMenuItemKey: string = 'disableContextMenuItem';\r\n static readonly disableFaviconKey: string = 'disableFavicon';\r\n static readonly disableAutoTotpCopyKey: string = 'disableAutoTotpCopy';\r\n static readonly enableAutoFillOnPageLoadKey: string = 'enableAutoFillOnPageLoad';\r\n static readonly lockOptionKey: string = 'lockOption';\r\n static readonly lastActiveKey: string = 'lastActive';\r\n static readonly neverDomainsKey: string = 'neverDomains';\r\n static readonly installedVersionKey: string = 'installedVersion';\r\n static readonly localeKey: string = 'locale';\r\n static readonly themeKey: string = 'theme';\r\n static readonly collapsedGroupingsKey: string = 'collapsedGroupings';\r\n static readonly autoConfirmFingerprints: string = 'autoConfirmFingerprints';\r\n static readonly dontShowCardsCurrentTab: string = 'dontShowCardsCurrentTab';\r\n static readonly dontShowIdentitiesCurrentTab: string = 'dontShowIdentitiesCurrentTab';\r\n\r\n readonly environmentUrlsKey: string = ConstantsService.environmentUrlsKey;\r\n readonly disableGaKey: string = ConstantsService.disableGaKey;\r\n readonly disableAddLoginNotificationKey: string = ConstantsService.disableAddLoginNotificationKey;\r\n readonly disableContextMenuItemKey: string = ConstantsService.disableContextMenuItemKey;\r\n readonly disableFaviconKey: string = ConstantsService.disableFaviconKey;\r\n readonly disableAutoTotpCopyKey: string = ConstantsService.disableAutoTotpCopyKey;\r\n readonly enableAutoFillOnPageLoadKey: string = ConstantsService.enableAutoFillOnPageLoadKey;\r\n readonly lockOptionKey: string = ConstantsService.lockOptionKey;\r\n readonly lastActiveKey: string = ConstantsService.lastActiveKey;\r\n readonly neverDomainsKey: string = ConstantsService.neverDomainsKey;\r\n readonly installedVersionKey: string = ConstantsService.installedVersionKey;\r\n readonly localeKey: string = ConstantsService.localeKey;\r\n readonly themeKey: string = ConstantsService.themeKey;\r\n readonly collapsedGroupingsKey: string = ConstantsService.collapsedGroupingsKey;\r\n readonly autoConfirmFingerprints: string = ConstantsService.autoConfirmFingerprints;\r\n readonly dontShowCardsCurrentTab: string = ConstantsService.dontShowCardsCurrentTab;\r\n readonly dontShowIdentitiesCurrentTab: string = ConstantsService.dontShowIdentitiesCurrentTab;\r\n}\r\n","import {\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { CipherType } from '../../enums/cipherType';\n\nimport { CipherView } from '../../models/view/cipherView';\n\nimport { EnvironmentService } from '../../abstractions/environment.service';\nimport { StateService } from '../../abstractions/state.service';\n\nimport { ConstantsService } from '../../services/constants.service';\n\nimport { Utils } from '../../misc/utils';\n\nconst IconMap: any = {\n 'fa-globe': String.fromCharCode(0xf0ac),\n 'fa-sticky-note-o': String.fromCharCode(0xf24a),\n 'fa-id-card-o': String.fromCharCode(0xf2c3),\n 'fa-credit-card': String.fromCharCode(0xf09d),\n 'fa-android': String.fromCharCode(0xf17b),\n 'fa-apple': String.fromCharCode(0xf179),\n};\n\n@Component({\n selector: 'app-vault-icon',\n templateUrl: 'icon.component.html',\n})\nexport class IconComponent implements OnChanges {\n @Input() cipher: CipherView;\n icon: string;\n image: string;\n fallbackImage: string;\n imageEnabled: boolean;\n\n private iconsUrl: string;\n\n constructor(environmentService: EnvironmentService, protected stateService: StateService) {\n this.iconsUrl = environmentService.iconsUrl;\n if (!this.iconsUrl) {\n if (environmentService.baseUrl) {\n this.iconsUrl = environmentService.baseUrl + '/icons';\n } else {\n this.iconsUrl = 'https://icons.bitwarden.net';\n }\n }\n }\n\n async ngOnChanges() {\n this.imageEnabled = !(await this.stateService.get(ConstantsService.disableFaviconKey));\n this.load();\n }\n\n get iconCode(): string {\n return IconMap[this.icon];\n }\n\n protected load() {\n switch (this.cipher.type) {\n case CipherType.Login:\n this.icon = 'fa-globe';\n this.setLoginIcon();\n break;\n case CipherType.SecureNote:\n this.icon = 'fa-sticky-note-o';\n break;\n case CipherType.Card:\n this.icon = 'fa-credit-card';\n break;\n case CipherType.Identity:\n this.icon = 'fa-id-card-o';\n break;\n default:\n break;\n }\n }\n\n private setLoginIcon() {\n if (this.cipher.login.uri) {\n let hostnameUri = this.cipher.login.uri;\n let isWebsite = false;\n\n if (hostnameUri.indexOf('androidapp://') === 0) {\n this.icon = 'fa-android';\n this.image = null;\n } else if (hostnameUri.indexOf('iosapp://') === 0) {\n this.icon = 'fa-apple';\n this.image = null;\n } else if (this.imageEnabled && hostnameUri.indexOf('://') === -1 && hostnameUri.indexOf('.') > -1) {\n hostnameUri = 'http://' + hostnameUri;\n isWebsite = true;\n } else if (this.imageEnabled) {\n isWebsite = hostnameUri.indexOf('http') === 0 && hostnameUri.indexOf('.') > -1;\n }\n\n if (this.imageEnabled && isWebsite) {\n try {\n this.image = this.iconsUrl + '/' + Utils.getHostname(hostnameUri) + '/icon.png';\n this.fallbackImage = 'images/fa-globe.png';\n } catch (e) { }\n }\n } else {\n this.image = null;\n }\n }\n}\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { SecureNote } from '../domain/secureNote';\r\n\r\nexport class SecureNoteView implements View {\r\n type: SecureNoteType;\r\n\r\n constructor(n?: SecureNote) {\r\n if (!n) {\r\n return;\r\n }\r\n\r\n this.type = n.type;\r\n }\r\n\r\n get subTitle(): string {\r\n return null;\r\n }\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n} from '@angular/core';\n\nimport { Utils } from '../../misc/utils';\n\n@Directive({\n selector: '[appAutofocus]',\n})\nexport class AutofocusDirective {\n @Input() set appAutofocus(condition: boolean | string) {\n this.autofocus = condition === '' || condition === true;\n }\n\n private autofocus: boolean;\n\n constructor(private el: ElementRef) { }\n\n ngOnInit() {\n if (!Utils.isMobileBrowser && this.autofocus) {\n this.el.nativeElement.focus();\n }\n }\n}\n","import * as jq from 'jquery';\n\nimport {\n Component,\n ComponentFactoryResolver,\n Type,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ModalComponent as BaseModalComponent } from 'jslib/angular/components/modal.component';\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-modal',\n template: ``,\n})\nexport class ModalComponent extends BaseModalComponent {\n el: any = null;\n\n constructor(componentFactoryResolver: ComponentFactoryResolver) {\n super(componentFactoryResolver);\n }\n\n ngOnDestroy() { /* Nothing */ }\n\n show(type: Type, parentContainer: ViewContainerRef, fade: boolean = true): T {\n this.parentContainer = parentContainer;\n this.fade = fade;\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(type);\n const componentRef = this.container.createComponent(factory);\n\n const modals = Array.from(document.querySelectorAll('.modal'));\n if (modals.length > 0) {\n this.el = jq(modals[0]);\n this.el.modal('show');\n\n this.el.on('show.bs.modal', () => {\n this.onShow.emit();\n });\n this.el.on('shown.bs.modal', () => {\n this.onShown.emit();\n if (!Utils.isMobileBrowser) {\n this.el.find('*[appAutoFocus]').focus();\n }\n });\n this.el.on('hide.bs.modal', () => {\n this.onClose.emit();\n });\n this.el.on('hidden.bs.modal', () => {\n this.onClosed.emit();\n if (this.parentContainer != null) {\n this.parentContainer.clear();\n }\n });\n }\n\n return componentRef.instance;\n }\n\n close() {\n if (this.el != null) {\n this.el.modal('hide');\n }\n }\n}\n","export enum TwoFactorProviderType {\r\n Authenticator = 0,\r\n Email = 1,\r\n Duo = 2,\r\n Yubikey = 3,\n U2f = 4,\r\n Remember = 5,\r\n OrganizationDuo = 6,\r\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopProp]',\r\n})\r\nexport class StopPropDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.stopPropagation();\r\n }\r\n}\n","
\r\n \"\"\r\n \r\n
\r\n","import { DecryptParameters } from '../models/domain/decryptParameters';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nexport abstract class CryptoFunctionService {\n pbkdf2: (password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\n iterations: number) => Promise;\n hash: (value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5') => Promise;\n hmac: (value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512') => Promise;\n compare: (a: ArrayBuffer, b: ArrayBuffer) => Promise;\n hmacFast: (value: ArrayBuffer | string, key: ArrayBuffer | string, algorithm: 'sha1' | 'sha256' | 'sha512') =>\n Promise;\n compareFast: (a: ArrayBuffer | string, b: ArrayBuffer | string) => Promise;\n aesEncrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n aesDecryptFastParameters: (data: string, iv: string, mac: string, key: SymmetricCryptoKey) =>\n DecryptParameters;\n aesDecryptFast: (parameters: DecryptParameters) => Promise;\n aesDecrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n rsaEncrypt: (data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaDecrypt: (data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaExtractPublicKey: (privateKey: ArrayBuffer) => Promise;\n rsaGenerateKeyPair: (length: 1024 | 2048 | 4096) => Promise<[ArrayBuffer, ArrayBuffer]>;\n randomBytes: (length: number) => Promise;\n}\n","import { BreachAccountResponse } from '../models/response/breachAccountResponse';\n\nexport abstract class AuditService {\n passwordLeaked: (password: string) => Promise;\n breachedAccounts: (username: string) => Promise;\n}\n","import { View } from './view';\r\n\r\nimport { Card } from '../domain/card';\r\n\r\nexport class CardView implements View {\r\n cardholderName: string;\r\n expMonth: string = null;\r\n expYear: string;\r\n code: string;\r\n\r\n // tslint:disable\r\n private _brand: string = null;\r\n private _number: string;\r\n private _subTitle: string;\r\n // tslint:enable\r\n\r\n constructor(c?: Card) {\r\n // ctor\r\n }\r\n\r\n get maskedCode(): string {\r\n return this.code != null ? '•'.repeat(this.code.length) : null;\r\n }\r\n\r\n get brand(): string {\r\n return this._brand;\r\n }\r\n set brand(value: string) {\r\n this._brand = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get number(): string {\r\n return this._number;\r\n }\r\n set number(value: string) {\r\n this._number = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get subTitle(): string {\r\n if (this._subTitle == null) {\r\n this._subTitle = this.brand;\r\n if (this.number != null && this.number.length >= 4) {\r\n if (this._subTitle != null && this._subTitle !== '') {\r\n this._subTitle += ', ';\r\n } else {\r\n this._subTitle = '';\r\n }\r\n this._subTitle += ('*' + this.number.substr(this.number.length - 4));\r\n }\r\n }\r\n return this._subTitle;\r\n }\r\n\r\n get expiration(): string {\r\n if (!this.expMonth && !this.expYear) {\r\n return null;\r\n }\r\n\r\n let exp = this.expMonth != null ? ('0' + this.expMonth).slice(-2) : '__';\r\n exp += (' / ' + (this.expYear != null ? this.formatYear(this.expYear) : '____'));\r\n return exp;\r\n }\r\n\r\n private formatYear(year: string): string {\r\n return year.length === 2 ? '20' + year : year;\r\n }\r\n}\r\n","import { CipherString } from './cipherString';\n\nimport { View } from '../view/view';\n\nexport default class Domain {\n protected buildDomainModel(domain: D, dataObj: any, map: any,\n alreadyEncrypted: boolean, notEncList: any[] = []) {\n for (const prop in map) {\n if (!map.hasOwnProperty(prop)) {\n continue;\n }\n\n const objProp = dataObj[(map[prop] || prop)];\n if (alreadyEncrypted === true || notEncList.indexOf(prop) > -1) {\n (domain as any)[prop] = objProp ? objProp : null;\n } else {\n (domain as any)[prop] = objProp ? new CipherString(objProp) : null;\n }\n }\n }\n protected buildDataModel(domain: D, dataObj: any, map: any, notCipherStringList: any[] = []) {\n for (const prop in map) {\n if (!map.hasOwnProperty(prop)) {\n continue;\n }\n\n const objProp = (domain as any)[(map[prop] || prop)];\n if (notCipherStringList.indexOf(prop) > -1) {\n (dataObj as any)[prop] = objProp != null ? objProp : null;\n } else {\n (dataObj as any)[prop] = objProp != null ? (objProp as CipherString).encryptedString : null;\n }\n }\n }\n\n protected async decryptObj(viewModel: T, map: any, orgId: string): Promise {\n const promises = [];\n const self: any = this;\n\n for (const prop in map) {\n if (!map.hasOwnProperty(prop)) {\n continue;\n }\n\n // tslint:disable-next-line\n (function (theProp) {\n const p = Promise.resolve().then(() => {\n const mapProp = map[theProp] || theProp;\n if (self[mapProp]) {\n return self[mapProp].decrypt(orgId);\n }\n return null;\n }).then((val: any) => {\n (viewModel as any)[theProp] = val;\n });\n promises.push(p);\n })(prop);\n }\n\n await Promise.all(promises);\n return viewModel;\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class BroadcasterService {\n subscribers: Map any> = new Map any>();\n\n send(message: any, id?: string) {\n if (id != null) {\n if (this.subscribers.has(id)) {\n this.subscribers.get(id)(message);\r\n }\n return;\r\n }\n\n this.subscribers.forEach((value) => {\n value(message);\n });\r\n }\n\n subscribe(id: string, messageCallback: (message: any) => any) {\n if (this.subscribers.has(id)) {\n return;\r\n }\n\n this.subscribers.set(id, messageCallback);\r\n }\n\n unsubscribe(id: string) {\n if (this.subscribers.has(id)) {\n this.subscribers.delete(id);\r\n }\r\n }\n}\r\n","export enum SecureNoteType {\r\n Generic = 0,\r\n}\r\n","import { CipherView } from '../models/view/cipherView';\n\nexport abstract class SearchService {\n clearIndex: () => void;\n isSearchable: (query: string) => boolean;\n indexCiphers: () => Promise;\n searchCiphers: (query: string, filter?: (cipher: CipherView) => boolean,\n ciphers?: CipherView[]) => Promise;\n searchCiphersBasic: (ciphers: CipherView[], query: string) => CipherView[];\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { AttachmentView } from './attachmentView';\r\nimport { CardView } from './cardView';\r\nimport { FieldView } from './fieldView';\r\nimport { IdentityView } from './identityView';\r\nimport { LoginView } from './loginView';\r\nimport { PasswordHistoryView } from './passwordHistoryView';\r\nimport { SecureNoteView } from './secureNoteView';\r\nimport { View } from './view';\r\n\r\nexport class CipherView implements View {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n name: string;\r\n notes: string;\r\n type: CipherType;\r\n favorite = false;\r\n organizationUseTotp = false;\r\n edit = false;\r\n localData: any;\r\n login: LoginView;\r\n identity: IdentityView;\r\n card: CardView;\r\n secureNote: SecureNoteView;\r\n attachments: AttachmentView[];\r\n fields: FieldView[];\r\n passwordHistory: PasswordHistoryView[];\r\n collectionIds: string[];\r\n revisionDate: Date;\r\n\r\n constructor(c?: Cipher) {\r\n if (!c) {\r\n return;\r\n }\r\n\r\n this.id = c.id;\r\n this.organizationId = c.organizationId;\r\n this.folderId = c.folderId;\r\n this.favorite = c.favorite;\r\n this.organizationUseTotp = c.organizationUseTotp;\r\n this.edit = c.edit;\r\n this.type = c.type;\r\n this.localData = c.localData;\r\n this.collectionIds = c.collectionIds;\r\n this.revisionDate = c.revisionDate;\r\n }\r\n\r\n get subTitle(): string {\r\n switch (this.type) {\r\n case CipherType.Login:\r\n return this.login.subTitle;\r\n case CipherType.SecureNote:\r\n return this.secureNote.subTitle;\r\n case CipherType.Card:\r\n return this.card.subTitle;\r\n case CipherType.Identity:\r\n return this.identity.subTitle;\r\n default:\r\n break;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n get hasPasswordHistory(): boolean {\r\n return this.passwordHistory && this.passwordHistory.length > 0;\r\n }\r\n\r\n get hasAttachments(): boolean {\r\n return this.attachments && this.attachments.length > 0;\r\n }\r\n\r\n get hasOldAttachments(): boolean {\r\n if (this.hasAttachments) {\r\n for (let i = 0; i < this.attachments.length; i++) {\r\n if (this.attachments[i].key == null) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n get hasFields(): boolean {\r\n return this.fields && this.fields.length > 0;\r\n }\r\n\r\n get passwordRevisionDisplayDate(): Date {\r\n if (this.login == null) {\r\n return null;\r\n } else if (this.login.password == null || this.login.password === '') {\r\n return null;\r\n }\r\n return this.login.passwordRevisionDate;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnChanges,\n OnInit,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { CryptoFunctionService } from 'jslib/abstractions/cryptoFunction.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-avatar',\n template: '',\n})\nexport class AvatarComponent implements OnChanges, OnInit {\n @Input() data: string;\n @Input() email: string;\n @Input() size = 45;\n @Input() charCount = 2;\n @Input() textColor = '#ffffff';\n @Input() fontSize = 20;\n @Input() fontWeight = 300;\n @Input() dynamic = false;\n @Input() circle = false;\n\n src: string;\n\n constructor(public sanitizer: DomSanitizer, private cryptoFunctionService: CryptoFunctionService,\n private stateService: StateService) { }\n\n ngOnInit() {\n if (!this.dynamic) {\n this.generate();\n }\n }\n\n ngOnChanges() {\n if (this.dynamic) {\n this.generate();\n }\n }\n\n private async generate() {\n const enableGravatars = await this.stateService.get('enableGravatars');\n if (enableGravatars && this.email != null) {\n const hashBytes = await this.cryptoFunctionService.hash(this.email.toLowerCase().trim(), 'md5');\n const hash = Utils.fromBufferToHex(hashBytes).toLowerCase();\n this.src = 'https://www.gravatar.com/avatar/' + hash + '?s=' + this.size + '&r=pg&d=retro';\n } else {\n let chars: string = null;\n const upperData = this.data.toUpperCase();\n\n if (this.charCount > 1) {\n chars = this.getFirstLetters(upperData, this.charCount);\n }\n if (chars == null) {\n chars = upperData.substr(0, this.charCount);\n }\n\n const charObj = this.getCharText(chars);\n const color = this.stringToColor(upperData);\n const svg = this.getSvg(this.size, color);\n svg.appendChild(charObj);\n const html = window.document.createElement('div').appendChild(svg).outerHTML;\n const svgHtml = window.btoa(unescape(encodeURIComponent(html)));\n this.src = 'data:image/svg+xml;base64,' + svgHtml;\n }\n }\n\n private stringToColor(str: string): string {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n // tslint:disable-next-line\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\n }\n let color = '#';\n for (let i = 0; i < 3; i++) {\n // tslint:disable-next-line\n const value = (hash >> (i * 8)) & 0xFF;\n color += ('00' + value.toString(16)).substr(-2);\n }\n return color;\n }\n\n private getFirstLetters(data: string, count: number): string {\n const parts = data.split(' ');\n if (parts.length > 1) {\n let text = '';\n for (let i = 0; i < count; i++) {\n text += parts[i].substr(0, 1);\n }\n return text;\n }\n return null;\n }\n\n private getSvg(size: number, color: string): HTMLElement {\n const svgTag = window.document.createElement('svg');\n svgTag.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgTag.setAttribute('pointer-events', 'none');\n svgTag.setAttribute('width', size.toString());\n svgTag.setAttribute('height', size.toString());\n svgTag.style.backgroundColor = color;\n svgTag.style.width = size + 'px';\n svgTag.style.height = size + 'px';\n return svgTag;\n }\n\n private getCharText(character: string): HTMLElement {\n const textTag = window.document.createElement('text');\n textTag.setAttribute('text-anchor', 'middle');\n textTag.setAttribute('y', '50%');\n textTag.setAttribute('x', '50%');\n textTag.setAttribute('dy', '0.35em');\n textTag.setAttribute('pointer-events', 'auto');\n textTag.setAttribute('fill', this.textColor);\n textTag.setAttribute('font-family', '\"Open Sans\",\"Helvetica Neue\",Helvetica,Arial,' +\n 'sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\"');\n textTag.textContent = character;\n textTag.style.fontWeight = this.fontWeight.toString();\n textTag.style.fontSize = this.fontSize + 'px';\n return textTag;\n }\n}\n","import { View } from './view';\r\n\r\nimport { Folder } from '../domain/folder';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class FolderView implements View, ITreeNodeObject {\r\n id: string = null;\r\n name: string;\r\n revisionDate: Date;\r\n\r\n constructor(f?: Folder) {\r\n if (!f) {\r\n return;\r\n }\r\n\r\n this.id = f.id;\r\n this.revisionDate = f.revisionDate;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Collection } from '../domain/collection';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class CollectionView implements View, ITreeNodeObject {\r\n id: string;\r\n organizationId: string;\r\n name: string;\r\n readOnly: boolean;\r\n\r\n constructor(c?: Collection) {\r\n if (!c) {\r\n return;\r\n }\r\n\r\n this.id = c.id;\r\n this.organizationId = c.organizationId;\r\n this.readOnly = c.readOnly;\r\n }\r\n}\r\n","","import { LoginUriView } from './loginUriView';\r\nimport { View } from './view';\r\n\r\nimport { Login } from '../domain/login';\r\n\r\nexport class LoginView implements View {\r\n username: string;\r\n password: string;\r\n passwordRevisionDate?: Date;\r\n totp: string;\r\n uris: LoginUriView[];\r\n\r\n constructor(l?: Login) {\r\n if (!l) {\r\n return;\r\n }\r\n\r\n this.passwordRevisionDate = l.passwordRevisionDate;\r\n }\r\n\r\n get uri(): string {\r\n return this.hasUris ? this.uris[0].uri : null;\r\n }\r\n\r\n get maskedPassword(): string {\r\n return this.password != null ? '••••••••' : null;\r\n }\r\n\r\n get subTitle(): string {\r\n return this.username;\r\n }\r\n\r\n get canLaunch(): boolean {\r\n return this.hasUris && this.uris[0].canLaunch;\r\n }\r\n\r\n get hasUris(): boolean {\r\n return this.uris != null && this.uris.length > 0;\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nconst Keys = {\r\n stripeTest: 'pk_test_KPoCfZXu7mznb9uSCPZ2JpTD',\r\n stripeLive: 'pk_live_bpN0P37nMxrMQkcaHXtAybJk',\r\n btSandbox: 'sandbox_r72q8jq6_9pnxkwm75f87sdc2',\r\n btProduction: 'production_qfbsv8kc_njj2zjtyngtjmbjd',\r\n};\r\n\r\n@Component({\r\n selector: 'app-payment',\r\n templateUrl: 'payment.component.html',\r\n})\r\nexport class PaymentComponent implements OnInit {\r\n @Input() showOptions = true;\r\n @Input() method: 'card' | 'paypal' | 'bank' = 'card';\r\n @Input() hideBank = false;\r\n @Input() hidePaypal = false;\r\n\r\n card: any = {\r\n number: null,\r\n exp_month: null,\r\n exp_year: null,\r\n address_country: '',\r\n address_zip: null,\r\n };\r\n bank: any = {\r\n routing_number: null,\r\n account_number: null,\r\n account_holder_name: null,\r\n account_holder_type: '',\r\n currency: 'USD',\r\n country: 'US',\r\n };\r\n cardExpMonthOptions: any[];\r\n cardExpYearOptions: any[];\r\n\r\n private stripeScript: HTMLScriptElement;\r\n private btScript: HTMLScriptElement;\r\n private btInstance: any = null;\r\n\r\n constructor(i18nService: I18nService, private platformUtilsService: PlatformUtilsService) {\r\n this.stripeScript = window.document.createElement('script');\r\n this.stripeScript.src = 'https://js.stripe.com/v2/';\r\n this.stripeScript.async = true;\r\n this.stripeScript.onload = () => {\r\n (window as any).Stripe.setPublishableKey(\r\n this.platformUtilsService.isDev() ? Keys.stripeTest : Keys.stripeLive);\r\n };\r\n this.btScript = window.document.createElement('script');\r\n this.btScript.src = 'scripts/dropin.js';\r\n this.btScript.async = true;\r\n\r\n this.cardExpMonthOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: '01 - ' + i18nService.t('january'), value: '01' },\r\n { name: '02 - ' + i18nService.t('february'), value: '02' },\r\n { name: '03 - ' + i18nService.t('march'), value: '03' },\r\n { name: '04 - ' + i18nService.t('april'), value: '04' },\r\n { name: '05 - ' + i18nService.t('may'), value: '05' },\r\n { name: '06 - ' + i18nService.t('june'), value: '06' },\r\n { name: '07 - ' + i18nService.t('july'), value: '07' },\r\n { name: '08 - ' + i18nService.t('august'), value: '08' },\r\n { name: '09 - ' + i18nService.t('september'), value: '09' },\r\n { name: '10 - ' + i18nService.t('october'), value: '10' },\r\n { name: '11 - ' + i18nService.t('november'), value: '11' },\r\n { name: '12 - ' + i18nService.t('december'), value: '12' },\r\n ];\r\n\r\n this.cardExpYearOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n ];\r\n const year = (new Date()).getFullYear();\r\n for (let i = year; i < (year + 15); i++) {\r\n this.cardExpYearOptions.push({ name: i.toString(), value: i.toString().slice(-2) });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.showOptions) {\r\n this.hidePaypal = this.method !== 'paypal';\r\n this.hideBank = this.method !== 'bank';\r\n }\r\n window.document.head.appendChild(this.stripeScript);\r\n if (!this.hidePaypal) {\r\n window.document.head.appendChild(this.btScript);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n window.document.head.removeChild(this.stripeScript);\r\n Array.from(window.document.querySelectorAll('iframe')).forEach((el) => {\r\n if (el.src != null && el.src.indexOf('stripe') > -1) {\r\n window.document.body.removeChild(el);\r\n }\r\n });\r\n if (!this.hidePaypal) {\r\n window.document.head.removeChild(this.btScript);\r\n const btStylesheet = window.document.head.querySelector('#braintree-dropin-stylesheet');\r\n if (btStylesheet != null) {\r\n window.document.head.removeChild(btStylesheet);\r\n }\r\n }\r\n }\r\n\r\n changeMethod() {\r\n if (this.method !== 'paypal') {\r\n this.btInstance = null;\r\n return;\r\n }\r\n\r\n window.setTimeout(() => {\r\n (window as any).braintree.dropin.create({\r\n authorization: this.platformUtilsService.isDev() ? Keys.btSandbox : Keys.btProduction,\r\n container: '#bt-dropin-container',\r\n paymentOptionPriority: ['paypal'],\r\n paypal: {\r\n flow: 'vault',\r\n buttonStyle: {\r\n label: 'pay',\r\n size: 'medium',\r\n shape: 'pill',\r\n color: 'blue',\r\n },\r\n },\r\n }, (createErr: any, instance: any) => {\r\n if (createErr != null) {\r\n // tslint:disable-next-line\r\n console.error(createErr);\r\n return;\r\n }\r\n this.btInstance = instance;\r\n });\r\n }, 250);\r\n }\r\n\r\n createPaymentToken(): Promise {\r\n return new Promise((resolve, reject) => {\r\n if (this.method === 'paypal') {\r\n this.btInstance.requestPaymentMethod().then((payload: any) => {\r\n resolve(payload.nonce);\r\n }).catch((err: any) => {\r\n reject(err.message);\r\n });\r\n } else if (this.method === 'card' || this.method === 'bank') {\r\n const createObj: any = this.method === 'card' ? (window as any).Stripe.card :\r\n (window as any).Stripe.bankAccount;\r\n const sourceObj = this.method === 'card' ? this.card : this.bank;\r\n createObj.createToken(sourceObj, (status: number, response: any) => {\r\n if (status === 200 && response.id != null) {\r\n resolve(response.id);\r\n } else if (response.error != null) {\r\n reject(response.error.message);\r\n } else {\r\n reject();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n getCountry(): string {\r\n return this.card.address_country;\r\n }\r\n}\r\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { AttachmentData } from './attachmentData';\r\nimport { CardData } from './cardData';\r\nimport { FieldData } from './fieldData';\r\nimport { IdentityData } from './identityData';\r\nimport { LoginData } from './loginData';\r\nimport { PasswordHistoryData } from './passwordHistoryData';\r\nimport { SecureNoteData } from './secureNoteData';\r\n\r\nimport { CipherResponse } from '../response/cipherResponse';\r\n\r\nexport class CipherData {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n userId: string;\r\n edit: boolean;\r\n organizationUseTotp: boolean;\r\n favorite: boolean;\r\n revisionDate: string;\r\n type: CipherType;\r\n sizeName: string;\r\n name: string;\r\n notes: string;\r\n login?: LoginData;\r\n secureNote?: SecureNoteData;\r\n card?: CardData;\r\n identity?: IdentityData;\r\n fields?: FieldData[];\r\n attachments?: AttachmentData[];\r\n passwordHistory?: PasswordHistoryData[];\r\n collectionIds?: string[];\r\n\r\n constructor(response?: CipherResponse, userId?: string, collectionIds?: string[]) {\r\n if (response == null) {\r\n return;\r\n }\r\n\r\n this.id = response.id;\r\n this.organizationId = response.organizationId;\r\n this.folderId = response.folderId;\r\n this.userId = userId;\r\n this.edit = response.edit;\r\n this.organizationUseTotp = response.organizationUseTotp;\r\n this.favorite = response.favorite;\r\n this.revisionDate = response.revisionDate;\r\n this.type = response.type;\r\n this.name = response.name;\r\n this.notes = response.notes;\r\n\r\n if (collectionIds != null) {\r\n this.collectionIds = collectionIds;\r\n } else {\r\n this.collectionIds = response.collectionIds;\r\n }\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = new LoginData(response.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNoteData(response.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new CardData(response.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new IdentityData(response.identity);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (response.fields != null) {\r\n this.fields = [];\r\n response.fields.forEach((field) => {\r\n this.fields.push(new FieldData(field));\r\n });\r\n }\r\n\r\n if (response.attachments != null) {\r\n this.attachments = [];\r\n response.attachments.forEach((attachment) => {\r\n this.attachments.push(new AttachmentData(attachment));\r\n });\r\n }\r\n\r\n if (response.passwordHistory != null) {\r\n this.passwordHistory = [];\r\n response.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push(new PasswordHistoryData(ph));\r\n });\r\n }\r\n }\r\n}\r\n","import { CollectionDetailsResponse } from '../response/collectionResponse';\n\nexport class CollectionData {\n id: string;\n organizationId: string;\n name: string;\n readOnly: boolean;\n\n constructor(response: CollectionDetailsResponse) {\n this.id = response.id;\n this.organizationId = response.organizationId;\n this.name = response.name;\n this.readOnly = response.readOnly;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-two-factor-verify',\n templateUrl: 'two-factor-verify.component.html',\n})\nexport class TwoFactorVerifyComponent {\n @Input() type: TwoFactorProviderType;\n @Input() organizationId: string;\n @Output() onAuthed = new EventEmitter();\n\n masterPassword: string;\n formPromise: Promise;\n\n private masterPasswordHash: string;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private toasterService: ToasterService, private cryptoService: CryptoService) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = this.masterPasswordHash =\n await this.cryptoService.hashPassword(this.masterPassword, null);\n\n try {\n switch (this.type) {\n case -1:\n this.formPromise = this.apiService.getTwoFactorRecover(request);\n break;\n case TwoFactorProviderType.Duo:\n case TwoFactorProviderType.OrganizationDuo:\n if (this.organizationId != null) {\n this.formPromise = this.apiService.getTwoFactorOrganizationDuo(this.organizationId, request);\n } else {\n this.formPromise = this.apiService.getTwoFactorDuo(request);\n }\n break;\n case TwoFactorProviderType.Email:\n this.formPromise = this.apiService.getTwoFactorEmail(request);\n break;\n case TwoFactorProviderType.U2f:\n this.formPromise = this.apiService.getTwoFactorU2f(request);\n break;\n case TwoFactorProviderType.Authenticator:\n this.formPromise = this.apiService.getTwoFactorAuthenticator(request);\n break;\n case TwoFactorProviderType.Yubikey:\n this.formPromise = this.apiService.getTwoFactorYubiKey(request);\n break;\n }\n\n const response = await this.formPromise;\n this.onAuthed.emit({\n response: response,\n masterPasswordHash: this.masterPasswordHash,\n });\n } catch { }\n }\n}\n","export enum DeviceType {\n Android = 0,\n iOS = 1,\n ChromeExtension = 2,\n FirefoxExtension = 3,\n OperaExtension = 4,\n EdgeExtension = 5,\n WindowsDesktop = 6,\n MacOsDesktop = 7,\n LinuxDesktop = 8,\n ChromeBrowser = 9,\n FirefoxBrowser = 10,\n OperaBrowser = 11,\n EdgeBrowser = 12,\n IEBrowser = 13,\n UnknownBrowser = 14,\n AndroidAmazon = 15,\n UWP = 16,\n SafariBrowser = 17,\n VivaldiBrowser = 18,\n VivaldiExtension = 19,\n SafariExtension = 20,\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { CardApi } from '../api/cardApi';\r\nimport { FieldApi } from '../api/fieldApi';\r\nimport { IdentityApi } from '../api/identityApi';\r\nimport { LoginApi } from '../api/loginApi';\r\nimport { SecureNoteApi } from '../api/secureNoteApi';\r\n\r\nimport { AttachmentRequest } from './attachmentRequest';\r\nimport { PasswordHistoryRequest } from './passwordHistoryRequest';\r\n\r\nexport class CipherRequest {\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n login: LoginApi;\r\n secureNote: SecureNoteApi;\r\n card: CardApi;\r\n identity: IdentityApi;\r\n fields: FieldApi[];\r\n passwordHistory: PasswordHistoryRequest[];\r\n // Deprecated, remove at some point and rename attachments2 to attachments\r\n attachments: { [id: string]: string; };\r\n attachments2: { [id: string]: AttachmentRequest; };\r\n\r\n constructor(cipher: Cipher) {\r\n this.type = cipher.type;\r\n this.folderId = cipher.folderId;\r\n this.organizationId = cipher.organizationId;\r\n this.name = cipher.name ? cipher.name.encryptedString : null;\r\n this.notes = cipher.notes ? cipher.notes.encryptedString : null;\r\n this.favorite = cipher.favorite;\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = {\r\n uris: null,\r\n username: cipher.login.username ? cipher.login.username.encryptedString : null,\r\n password: cipher.login.password ? cipher.login.password.encryptedString : null,\r\n passwordRevisionDate: cipher.login.passwordRevisionDate != null ?\r\n cipher.login.passwordRevisionDate.toISOString() : null,\r\n totp: cipher.login.totp ? cipher.login.totp.encryptedString : null,\r\n };\r\n\r\n if (cipher.login.uris) {\r\n this.login.uris = [];\r\n cipher.login.uris.forEach((u) => {\r\n this.login.uris.push({\r\n uri: u.uri ? u.uri.encryptedString : null,\r\n match: u.match != null ? u.match : null,\r\n });\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = {\r\n type: cipher.secureNote.type,\r\n };\r\n break;\r\n case CipherType.Card:\r\n this.card = {\r\n cardholderName: cipher.card.cardholderName ? cipher.card.cardholderName.encryptedString : null,\r\n brand: cipher.card.brand ? cipher.card.brand.encryptedString : null,\r\n number: cipher.card.number ? cipher.card.number.encryptedString : null,\r\n expMonth: cipher.card.expMonth ? cipher.card.expMonth.encryptedString : null,\r\n expYear: cipher.card.expYear ? cipher.card.expYear.encryptedString : null,\r\n code: cipher.card.code ? cipher.card.code.encryptedString : null,\r\n };\r\n break;\r\n case CipherType.Identity:\r\n this.identity = {\r\n title: cipher.identity.title ? cipher.identity.title.encryptedString : null,\r\n firstName: cipher.identity.firstName ? cipher.identity.firstName.encryptedString : null,\r\n middleName: cipher.identity.middleName ? cipher.identity.middleName.encryptedString : null,\r\n lastName: cipher.identity.lastName ? cipher.identity.lastName.encryptedString : null,\r\n address1: cipher.identity.address1 ? cipher.identity.address1.encryptedString : null,\r\n address2: cipher.identity.address2 ? cipher.identity.address2.encryptedString : null,\r\n address3: cipher.identity.address3 ? cipher.identity.address3.encryptedString : null,\r\n city: cipher.identity.city ? cipher.identity.city.encryptedString : null,\r\n state: cipher.identity.state ? cipher.identity.state.encryptedString : null,\r\n postalCode: cipher.identity.postalCode ? cipher.identity.postalCode.encryptedString : null,\r\n country: cipher.identity.country ? cipher.identity.country.encryptedString : null,\r\n company: cipher.identity.company ? cipher.identity.company.encryptedString : null,\r\n email: cipher.identity.email ? cipher.identity.email.encryptedString : null,\r\n phone: cipher.identity.phone ? cipher.identity.phone.encryptedString : null,\r\n ssn: cipher.identity.ssn ? cipher.identity.ssn.encryptedString : null,\r\n username: cipher.identity.username ? cipher.identity.username.encryptedString : null,\r\n passportNumber: cipher.identity.passportNumber ?\r\n cipher.identity.passportNumber.encryptedString : null,\r\n licenseNumber: cipher.identity.licenseNumber ? cipher.identity.licenseNumber.encryptedString : null,\r\n };\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (cipher.fields) {\r\n this.fields = [];\r\n cipher.fields.forEach((field) => {\r\n this.fields.push({\r\n type: field.type,\r\n name: field.name ? field.name.encryptedString : null,\r\n value: field.value ? field.value.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.passwordHistory) {\r\n this.passwordHistory = [];\r\n cipher.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push({\r\n lastUsedDate: ph.lastUsedDate,\r\n password: ph.password ? ph.password.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.attachments) {\r\n this.attachments = {};\r\n this.attachments2 = {};\r\n cipher.attachments.forEach((attachment) => {\r\n const fileName = attachment.fileName ? attachment.fileName.encryptedString : null;\r\n this.attachments[attachment.id] = fileName;\r\n const attachmentRequest = new AttachmentRequest();\r\n attachmentRequest.fileName = fileName;\r\n if (attachment.key != null) {\r\n attachmentRequest.key = attachment.key.encryptedString;\r\n }\r\n this.attachments2[attachment.id] = attachmentRequest;\r\n });\r\n }\r\n }\r\n}\r\n","export enum FieldType {\r\n Text = 0,\r\n Hidden = 1,\r\n Boolean = 2,\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { Field } from '../domain/field';\r\n\r\nexport class FieldView implements View {\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(f?: Field) {\r\n if (!f) {\r\n return;\r\n }\r\n\r\n this.type = f.type;\r\n }\r\n\r\n get maskedValue(): string {\r\n return this.value != null ? '••••••••' : null;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Identity } from '../domain/identity';\r\n\r\nexport class IdentityView implements View {\r\n title: string = null;\r\n middleName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n // tslint:disable\r\n private _firstName: string;\r\n private _lastName: string;\r\n private _subTitle: string;\r\n // tslint:enable\r\n\r\n constructor(i?: Identity) {\r\n // ctor\r\n }\r\n\r\n get firstName(): string {\r\n return this._firstName;\r\n }\r\n set firstName(value: string) {\r\n this._firstName = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get lastName(): string {\r\n return this._lastName;\r\n }\r\n set lastName(value: string) {\r\n this._lastName = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get subTitle(): string {\r\n if (this._subTitle == null && (this.firstName != null || this.lastName != null)) {\r\n this._subTitle = '';\r\n if (this.firstName != null) {\r\n this._subTitle = this.firstName;\r\n }\r\n if (this.lastName != null) {\r\n if (this._subTitle !== '') {\r\n this._subTitle += ' ';\r\n }\r\n this._subTitle += this.lastName;\r\n }\r\n }\r\n\r\n return this._subTitle;\r\n }\r\n\r\n get fullName(): string {\r\n if (this.title != null || this.firstName != null || this.middleName != null || this.lastName != null) {\r\n let name = '';\r\n if (this.title != null) {\r\n name += (this.title + ' ');\r\n }\r\n if (this.firstName != null) {\r\n name += (this.firstName + ' ');\r\n }\r\n if (this.middleName != null) {\r\n name += (this.middleName + ' ');\r\n }\r\n if (this.lastName != null) {\r\n name += this.lastName;\r\n }\r\n return name.trim();\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { CollectionData } from '../data/collectionData';\n\nimport { CollectionView } from '../view/collectionView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Collection extends Domain {\n id: string;\n organizationId: string;\n name: CipherString;\n readOnly: boolean;\n\n constructor(obj?: CollectionData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n organizationId: null,\n name: null,\n readOnly: null,\n }, alreadyEncrypted, ['id', 'organizationId', 'readOnly']);\n }\n\n decrypt(): Promise {\n return this.decryptObj(new CollectionView(this), {\n name: null,\n }, this.organizationId);\n }\n}\n","
\n
\n

{{'twoStepLoginAuthDesc' | i18n}}

\n \n \n
\n
\n \n \n
\n
\n","export abstract class LockService {\r\n checkLock: () => Promise;\r\n lock: () => Promise;\r\n setLockOption: (lockOption: number) => Promise;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport {\r\n ActivatedRoute,\r\n NavigationEnd,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\n@Injectable()\r\nexport class RouterService {\r\n private previousUrl: string = undefined;\r\n private currentUrl: string = undefined;\r\n\r\n constructor(private router: Router, private activatedRoute: ActivatedRoute,\r\n private titleService: Title, private i18nService: I18nService) {\r\n this.currentUrl = this.router.url;\r\n router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.previousUrl = this.currentUrl;\r\n this.currentUrl = event.url;\r\n\r\n let title = i18nService.t('pageTitle', 'Bitwarden');\r\n let titleId: string = null;\r\n let rawTitle: string = null;\r\n let child = this.activatedRoute.firstChild;\r\n while (child != null) {\r\n if (child.firstChild != null) {\r\n child = child.firstChild;\r\n } else if (child.snapshot.data != null && child.snapshot.data.title != null) {\r\n rawTitle = child.snapshot.data.title;\r\n break;\r\n } else if (child.snapshot.data != null && child.snapshot.data.titleId != null) {\r\n titleId = child.snapshot.data.titleId;\r\n break;\r\n } else {\r\n titleId = null;\r\n rawTitle = null;\r\n break;\r\n }\r\n }\r\n\r\n if (titleId != null || rawTitle != null) {\r\n const newTitle = rawTitle != null ? rawTitle : i18nService.t(titleId);\r\n if (newTitle != null && newTitle !== '') {\r\n title = (newTitle + ' | ' + title);\r\n }\r\n }\r\n this.titleService.setTitle(title);\r\n }\r\n });\r\n }\r\n\r\n getPreviousUrl() {\r\n return this.previousUrl;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-organizations',\n templateUrl: 'organizations.component.html',\n})\nexport class OrganizationsComponent implements OnInit {\n @Input() vault = false;\n\n organizations: Organization[];\n loaded: boolean = false;\n actionPromise: Promise;\n\n constructor(private userService: UserService, private platformUtilsService: PlatformUtilsService,\n private i18nService: I18nService, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private syncService: SyncService) { }\n\n async ngOnInit() {\n if (!this.vault) {\n await this.load();\n }\n }\n\n async load() {\n const orgs = await this.userService.getAllOrganizations();\n orgs.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.organizations = orgs;\n this.loaded = true;\n }\n\n async leave(org: Organization) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('leaveOrganizationConfirmation'), org.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.apiService.postLeaveOrganization(org.id).then(() => {\n return this.syncService.fullSync(true);\n });\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Left Organization' });\n this.toasterService.popAsync('success', null, this.i18nService.t('leftOrganization'));\n await this.load();\n } catch { }\n }\n}\n","export abstract class TotpService {\n getCode: (key: string) => Promise;\n getTimeInterval: (key: string) => number;\n isAutoCopyEnabled: () => Promise;\n}\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { LoginUri } from '../domain/loginUri';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nconst CanLaunchWhitelist = [\r\n 'https://',\r\n 'http://',\r\n 'ssh://',\r\n 'ftp://',\r\n 'sftp://',\r\n 'irc://',\r\n 'chrome://',\r\n];\r\n\r\nexport class LoginUriView implements View {\r\n match: UriMatchType = null;\r\n\r\n // tslint:disable\r\n private _uri: string;\r\n private _domain: string;\r\n private _hostname: string;\r\n private _canLaunch: boolean;\r\n // tslint:enable\r\n\r\n constructor(u?: LoginUri) {\r\n if (!u) {\r\n return;\r\n }\r\n\r\n this.match = u.match;\r\n }\r\n\r\n get uri(): string {\r\n return this._uri;\r\n }\r\n set uri(value: string) {\r\n this._uri = value;\r\n this._domain = null;\r\n this._canLaunch = null;\r\n }\r\n\r\n get domain(): string {\r\n if (this._domain == null && this.uri != null) {\r\n this._domain = Utils.getDomain(this.uri);\r\n if (this._domain === '') {\r\n this._domain = null;\r\n }\r\n }\r\n\r\n return this._domain;\r\n }\r\n\r\n get hostname(): string {\r\n if (this._hostname == null && this.uri != null) {\r\n this._hostname = Utils.getHostname(this.uri);\r\n if (this._hostname === '') {\r\n this._hostname = null;\r\n }\r\n }\r\n\r\n return this._hostname;\r\n }\r\n\r\n get hostnameOrUri(): string {\r\n return this.hostname != null ? this.hostname : this.uri;\r\n }\r\n\r\n get isWebsite(): boolean {\r\n return this.uri != null && (this.uri.indexOf('http://') === 0 || this.uri.indexOf('https://') === 0);\r\n }\r\n\r\n get canLaunch(): boolean {\r\n if (this._canLaunch != null) {\r\n return this._canLaunch;\r\n }\r\n if (this.uri != null) {\r\n for (let i = 0; i < CanLaunchWhitelist.length; i++) {\r\n if (this.uri.indexOf(CanLaunchWhitelist[i]) === 0) {\r\n this._canLaunch = true;\r\n return this._canLaunch;\r\n }\r\n }\r\n }\r\n this._canLaunch = false;\r\n return this._canLaunch;\r\n }\r\n}\r\n","import {\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { TwoFactorProviderRequest } from 'jslib/models/request/twoFactorProviderRequest';\n\nexport abstract class TwoFactorBaseComponent {\n @Output() onUpdated = new EventEmitter();\n\n type: TwoFactorProviderType;\n organizationId: string;\n twoFactorProviderType = TwoFactorProviderType;\n enabled = false;\n authed = false;\n\n protected masterPasswordHash: string;\n\n constructor(protected apiService: ApiService, protected i18nService: I18nService,\n protected analytics: Angulartics2, protected toasterService: ToasterService,\n protected platformUtilsService: PlatformUtilsService) { }\n\n protected auth(authResponse: any) {\n this.masterPasswordHash = authResponse.masterPasswordHash;\n this.authed = true;\n }\n\n protected async enable(enableFunction: () => Promise) {\n try {\n await enableFunction();\n this.analytics.eventTrack.next({\n action: 'Enabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.onUpdated.emit(true);\n } catch { }\n }\n\n protected async disable(promise: Promise) {\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('twoStepDisableDesc'),\n this.i18nService.t('disable'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n const request = new TwoFactorProviderRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.type = this.type;\n if (this.organizationId != null) {\n promise = this.apiService.putTwoFactorOrganizationDisable(this.organizationId, request);\n } else {\n promise = this.apiService.putTwoFactorDisable(request);\n }\n await promise;\n this.enabled = false;\n this.analytics.eventTrack.next({\n action: 'Disabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepDisabled'));\n this.onUpdated.emit(false);\n } catch { }\n }\n}\n","import { Importer } from '../importers/importer';\r\n\r\nexport interface ImportOption {\r\n id: string;\r\n name: string;\r\n}\r\nexport abstract class ImportService {\r\n featuredImportOptions: ImportOption[];\r\n regularImportOptions: ImportOption[];\r\n getImportOptions: () => ImportOption[];\r\n import: (importer: Importer, fileContents: string, organizationId?: string) => Promise;\r\n getImporter: (format: string, organization?: boolean) => Importer;\r\n}\r\n","export abstract class ExportService {\r\n getExport: (format?: 'csv' | 'json') => Promise;\r\n getOrganizationExport: (organizationId: string, format?: 'csv' | 'json') => Promise;\r\n getFileName: (prefix?: string, extension?: string) => string;\r\n}\r\n","import {\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { ModalComponent } from '../modal.component';\nimport { AddEditComponent as OrgAddEditComponent } from '../organizations/vault/add-edit.component';\nimport { AddEditComponent } from '../vault/add-edit.component';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nexport class CipherReportComponent {\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n\n loading = false;\n hasLoaded = false;\n ciphers: CipherView[] = [];\n organization: Organization;\n\n private modal: ModalComponent = null;\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, protected userService: UserService,\n protected messagingService: MessagingService, public requiresPaid: boolean) { }\n\n async load() {\n this.loading = true;\n await this.setCiphers();\n this.loading = false;\n this.hasLoaded = true;\n }\n\n selectCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n let childComponent: OrgAddEditComponent | AddEditComponent;\n if (this.organization != null) {\n childComponent = this.modal.show(OrgAddEditComponent, this.cipherAddEditModalRef);\n (childComponent as OrgAddEditComponent).organization = this.organization;\n } else {\n childComponent = this.modal.show(AddEditComponent, this.cipherAddEditModalRef);\n }\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n if (this.organization != null) {\n childComponent.organizationId = this.organization.id;\n }\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n protected async checkAccess(): Promise {\n if (this.organization != null) {\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n if (this.requiresPaid && !this.organization.useTotp) {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n return false;\n }\n } else {\n const accessPremium = await this.userService.canAccessPremium();\n if (this.requiresPaid && !accessPremium) {\n this.messagingService.send('premiumRequired');\n this.loading = false;\n return false;\n }\n }\n return true;\n }\n\n protected async setCiphers() {\n this.ciphers = [];\n }\n}\n","import { CipherType } from '../../enums/cipherType';\n\nimport { CipherData } from '../data/cipherData';\n\nimport { CipherView } from '../view/cipherView';\n\nimport { Attachment } from './attachment';\nimport { Card } from './card';\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\nimport { Field } from './field';\nimport { Identity } from './identity';\nimport { Login } from './login';\nimport { Password } from './password';\nimport { SecureNote } from './secureNote';\n\nexport class Cipher extends Domain {\n id: string;\n organizationId: string;\n folderId: string;\n name: CipherString;\n notes: CipherString;\n type: CipherType;\n favorite: boolean;\n organizationUseTotp: boolean;\n edit: boolean;\n revisionDate: Date;\n localData: any;\n login: Login;\n identity: Identity;\n card: Card;\n secureNote: SecureNote;\n attachments: Attachment[];\n fields: Field[];\n passwordHistory: Password[];\n collectionIds: string[];\n\n constructor(obj?: CipherData, alreadyEncrypted: boolean = false, localData: any = null) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n userId: null,\n organizationId: null,\n folderId: null,\n name: null,\n notes: null,\n }, alreadyEncrypted, ['id', 'userId', 'organizationId', 'folderId']);\n\n this.type = obj.type;\n this.favorite = obj.favorite;\n this.organizationUseTotp = obj.organizationUseTotp;\n this.edit = obj.edit;\n this.revisionDate = obj.revisionDate != null ? new Date(obj.revisionDate) : null;\n this.collectionIds = obj.collectionIds;\n this.localData = localData;\n\n switch (this.type) {\n case CipherType.Login:\n this.login = new Login(obj.login, alreadyEncrypted);\n break;\n case CipherType.SecureNote:\n this.secureNote = new SecureNote(obj.secureNote, alreadyEncrypted);\n break;\n case CipherType.Card:\n this.card = new Card(obj.card, alreadyEncrypted);\n break;\n case CipherType.Identity:\n this.identity = new Identity(obj.identity, alreadyEncrypted);\n break;\n default:\n break;\n }\n\n if (obj.attachments != null) {\n this.attachments = [];\n obj.attachments.forEach((attachment) => {\n this.attachments.push(new Attachment(attachment, alreadyEncrypted));\n });\n } else {\n this.attachments = null;\n }\n\n if (obj.fields != null) {\n this.fields = [];\n obj.fields.forEach((field) => {\n this.fields.push(new Field(field, alreadyEncrypted));\n });\n } else {\n this.fields = null;\n }\n\n if (obj.passwordHistory != null) {\n this.passwordHistory = [];\n obj.passwordHistory.forEach((ph) => {\n this.passwordHistory.push(new Password(ph, alreadyEncrypted));\n });\n } else {\n this.passwordHistory = null;\n }\n }\n\n async decrypt(): Promise {\n const model = new CipherView(this);\n\n await this.decryptObj(model, {\n name: null,\n notes: null,\n }, this.organizationId);\n\n switch (this.type) {\n case CipherType.Login:\n model.login = await this.login.decrypt(this.organizationId);\n break;\n case CipherType.SecureNote:\n model.secureNote = await this.secureNote.decrypt(this.organizationId);\n break;\n case CipherType.Card:\n model.card = await this.card.decrypt(this.organizationId);\n break;\n case CipherType.Identity:\n model.identity = await this.identity.decrypt(this.organizationId);\n break;\n default:\n break;\n }\n\n const orgId = this.organizationId;\n\n if (this.attachments != null && this.attachments.length > 0) {\n const attachments: any[] = [];\n await this.attachments.reduce((promise, attachment) => {\n return promise.then(() => {\n return attachment.decrypt(orgId);\n }).then((decAttachment) => {\n attachments.push(decAttachment);\n });\n }, Promise.resolve());\n model.attachments = attachments;\n }\n\n if (this.fields != null && this.fields.length > 0) {\n const fields: any[] = [];\n await this.fields.reduce((promise, field) => {\n return promise.then(() => {\n return field.decrypt(orgId);\n }).then((decField) => {\n fields.push(decField);\n });\n }, Promise.resolve());\n model.fields = fields;\n }\n\n if (this.passwordHistory != null && this.passwordHistory.length > 0) {\n const passwordHistory: any[] = [];\n await this.passwordHistory.reduce((promise, ph) => {\n return promise.then(() => {\n return ph.decrypt(orgId);\n }).then((decPh) => {\n passwordHistory.push(decPh);\n });\n }, Promise.resolve());\n model.passwordHistory = passwordHistory;\n }\n\n return model;\n }\n\n toCipherData(userId: string): CipherData {\n const c = new CipherData();\n c.id = this.id;\n c.organizationId = this.organizationId;\n c.folderId = this.folderId;\n c.userId = this.organizationId != null ? userId : null;\n c.edit = this.edit;\n c.organizationUseTotp = this.organizationUseTotp;\n c.favorite = this.favorite;\n c.revisionDate = this.revisionDate != null ? this.revisionDate.toISOString() : null;\n c.type = this.type;\n c.collectionIds = this.collectionIds;\n\n this.buildDataModel(this, c, {\n name: null,\n notes: null,\n });\n\n switch (c.type) {\n case CipherType.Login:\n c.login = this.login.toLoginData();\n break;\n case CipherType.SecureNote:\n c.secureNote = this.secureNote.toSecureNoteData();\n break;\n case CipherType.Card:\n c.card = this.card.toCardData();\n break;\n case CipherType.Identity:\n c.identity = this.identity.toIdentityData();\n break;\n default:\n break;\n }\n\n if (this.fields != null) {\n c.fields = [];\n this.fields.forEach((field) => {\n c.fields.push(field.toFieldData());\n });\n }\n\n if (this.attachments != null) {\n c.attachments = [];\n this.attachments.forEach((attachment) => {\n c.attachments.push(attachment.toAttachmentData());\n });\n }\n\n if (this.passwordHistory != null) {\n c.passwordHistory = [];\n this.passwordHistory.forEach((ph) => {\n c.passwordHistory.push(ph.toPasswordHistoryData());\n });\n }\n return c;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\nimport { EventType } from 'jslib/enums/eventType';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\n\n@Injectable()\nexport class EventService {\n constructor(private i18nService: I18nService) { }\n\n getDefaultDateFilters() {\n const d = new Date();\n const end = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59);\n d.setDate(d.getDate() - 30);\n const start = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0);\n return [this.toDateTimeLocalString(start), this.toDateTimeLocalString(end)];\n }\n\n formatDateFilters(filterStart: string, filterEnd: string) {\n const start: Date = new Date(filterStart);\n const end: Date = new Date(filterEnd + ':59.999');\n if (isNaN(start.getTime()) || isNaN(end.getTime()) || end < start) {\n throw new Error('Invalid date range.');\n }\n return [start.toISOString(), end.toISOString()];\n }\n\n getEventInfo(ev: EventResponse, options = new EventOptions()): EventInfo {\n const appInfo = this.getAppInfo(ev.deviceType);\n return {\n message: this.getEventMessage(ev, options),\n appIcon: appInfo[0],\n appName: appInfo[1],\n };\n }\n\n private getEventMessage(ev: EventResponse, options: EventOptions) {\n let msg = '';\n switch (ev.type) {\n // User\n case EventType.User_LoggedIn:\n msg = this.i18nService.t('loggedIn');\n break;\n case EventType.User_ChangedPassword:\n msg = this.i18nService.t('changedPassword');\n break;\n case EventType.User_Updated2fa:\n msg = this.i18nService.t('enabledUpdated2fa');\n break;\n case EventType.User_Disabled2fa:\n msg = this.i18nService.t('disabled2fa');\n break;\n case EventType.User_Recovered2fa:\n msg = this.i18nService.t('recovered2fa');\n break;\n case EventType.User_FailedLogIn:\n msg = this.i18nService.t('failedLogin');\n break;\n case EventType.User_FailedLogIn2fa:\n msg = this.i18nService.t('failedLogin2fa');\n break;\n // Cipher\n case EventType.Cipher_Created:\n msg = this.i18nService.t('createdItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Updated:\n msg = this.i18nService.t('editedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Deleted:\n msg = this.i18nService.t('deletedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentCreated:\n msg = this.i18nService.t('createdAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentDeleted:\n msg = this.i18nService.t('deletedAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Shared:\n msg = this.i18nService.t('sharedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_UpdatedCollections:\n msg = this.i18nService.t('editedCollectionsForItem', this.formatCipherId(ev, options));\n break;\n // Collection\n case EventType.Collection_Created:\n msg = this.i18nService.t('createdCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Updated:\n msg = this.i18nService.t('editedCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Deleted:\n msg = this.i18nService.t('deletedCollectionId', this.formatCollectionId(ev));\n break;\n // Group\n case EventType.Group_Created:\n msg = this.i18nService.t('createdGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Updated:\n msg = this.i18nService.t('editedGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Deleted:\n msg = this.i18nService.t('deletedGroupId', this.formatGroupId(ev));\n break;\n // Org user\n case EventType.OrganizationUser_Invited:\n msg = this.i18nService.t('invitedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Confirmed:\n msg = this.i18nService.t('confirmedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Updated:\n msg = this.i18nService.t('editedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Removed:\n msg = this.i18nService.t('removedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_UpdatedGroups:\n msg = this.i18nService.t('editedGroupsForUser', this.formatOrgUserId(ev));\n break;\n // Org\n case EventType.Organization_Updated:\n msg = this.i18nService.t('editedOrgSettings');\n break;\n case EventType.Organization_PurgedVault:\n msg = this.i18nService.t('purgedOrganizationVault');\n break;\n default:\n break;\n }\n return msg === '' ? null : msg;\n }\n\n private getAppInfo(deviceType: DeviceType): [string, string] {\n switch (deviceType) {\n case DeviceType.Android:\n return ['fa-android', this.i18nService.t('mobile') + ' - Android'];\n case DeviceType.iOS:\n return ['fa-apple', this.i18nService.t('mobile') + ' - iOS'];\n case DeviceType.UWP:\n return ['fa-windows', this.i18nService.t('mobile') + ' - Windows'];\n case DeviceType.ChromeExtension:\n return ['fa-chrome', this.i18nService.t('extension') + ' - Chrome'];\n case DeviceType.FirefoxExtension:\n return ['fa-firefox', this.i18nService.t('extension') + ' - Firefox'];\n case DeviceType.OperaExtension:\n return ['fa-opera', this.i18nService.t('extension') + ' - Opera'];\n case DeviceType.EdgeExtension:\n return ['fa-edge', this.i18nService.t('extension') + ' - Edge'];\n case DeviceType.VivaldiExtension:\n return ['fa-puzzle-piece', this.i18nService.t('extension') + ' - Vivaldi'];\n case DeviceType.SafariExtension:\n return ['fa-safari', this.i18nService.t('extension') + ' - Safari'];\n case DeviceType.WindowsDesktop:\n return ['fa-windows', this.i18nService.t('desktop') + ' - Windows'];\n case DeviceType.MacOsDesktop:\n return ['fa-apple', this.i18nService.t('desktop') + ' - macOS'];\n case DeviceType.LinuxDesktop:\n return ['fa-linux', this.i18nService.t('desktop') + ' - Linux'];\n case DeviceType.ChromeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Chrome'];\n case DeviceType.FirefoxBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Firefox'];\n case DeviceType.OperaBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Opera'];\n case DeviceType.SafariBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Safari'];\n case DeviceType.VivaldiBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Vivaldi'];\n case DeviceType.EdgeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Edge'];\n case DeviceType.IEBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - IE'];\n case DeviceType.UnknownBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - ' + this.i18nService.t('unknown')];\n default:\n return ['fa-globe', this.i18nService.t('unknown')];\n }\n }\n\n private formatCipherId(ev: EventResponse, options: EventOptions) {\n const shortId = this.getShortId(ev.cipherId);\n if (ev.organizationId == null || !options.cipherInfo) {\n return '' + shortId + '';\n }\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/vault?search=' + shortId +\n '&viewEvents=' + ev.cipherId);\n return a.outerHTML;\n }\n\n private formatGroupId(ev: EventResponse) {\n const shortId = this.getShortId(ev.groupId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/groups?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatCollectionId(ev: EventResponse) {\n const shortId = this.getShortId(ev.collectionId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/collections?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatOrgUserId(ev: EventResponse) {\n const shortId = this.getShortId(ev.organizationUserId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/people?search=' + shortId +\n '&viewEvents=' + ev.organizationUserId);\n return a.outerHTML;\n }\n\n private makeAnchor(shortId: string) {\n const a = document.createElement('a');\n a.title = this.i18nService.t('view');\n a.innerHTML = '' + shortId + '';\n return a;\n }\n\n private getShortId(id: string) {\n return id.substring(0, 8);\n }\n\n private toDateTimeLocalString(date: Date) {\n return date.getFullYear() +\n '-' + this.pad(date.getMonth() + 1) +\n '-' + this.pad(date.getDate()) +\n 'T' + this.pad(date.getHours()) +\n ':' + this.pad(date.getMinutes());\n }\n\n private pad(num: number) {\n const norm = Math.floor(Math.abs(num));\n return (norm < 10 ? '0' : '') + norm;\n }\n}\n\nexport class EventInfo {\n message: string;\n appIcon: string;\n appName: string;\n}\n\nexport class EventOptions {\n cipherInfo = true;\n}\n","export enum OrganizationUserType {\r\n Owner = 0,\r\n Admin = 1,\r\n User = 2,\r\n Manager = 3,\r\n}\r\n","import { KdfType } from '../enums/kdfType';\nimport { TwoFactorProviderType } from '../enums/twoFactorProviderType';\n\nimport { AuthResult } from '../models/domain/authResult';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { DeviceRequest } from '../models/request/deviceRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\n\nimport { ErrorResponse } from '../models/response/errorResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { AppIdService } from '../abstractions/appId.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { MessagingService } from '../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService } from '../abstractions/user.service';\n\nexport const TwoFactorProviders = {\n [TwoFactorProviderType.Authenticator]: {\n type: TwoFactorProviderType.Authenticator,\n name: null as string,\n description: null as string,\n priority: 1,\n sort: 1,\n premium: false,\n },\n [TwoFactorProviderType.Yubikey]: {\n type: TwoFactorProviderType.Yubikey,\n name: null as string,\n description: null as string,\n priority: 3,\n sort: 2,\n premium: true,\n },\n [TwoFactorProviderType.Duo]: {\n type: TwoFactorProviderType.Duo,\n name: 'Duo',\n description: null as string,\n priority: 2,\n sort: 3,\n premium: true,\n },\n [TwoFactorProviderType.OrganizationDuo]: {\n type: TwoFactorProviderType.OrganizationDuo,\n name: 'Duo (Organization)',\n description: null as string,\n priority: 10,\n sort: 4,\n premium: false,\n },\n [TwoFactorProviderType.U2f]: {\n type: TwoFactorProviderType.U2f,\n name: null as string,\n description: null as string,\n priority: 4,\n sort: 5,\n premium: true,\n },\n [TwoFactorProviderType.Email]: {\n type: TwoFactorProviderType.Email,\n name: null as string,\n description: null as string,\n priority: 0,\n sort: 6,\n premium: false,\n },\n};\n\nexport class AuthService {\n email: string;\n masterPasswordHash: string;\n twoFactorProviders: Map;\n selectedTwoFactorProviderType: TwoFactorProviderType = null;\n\n private key: SymmetricCryptoKey;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private cryptoService: CryptoService, private apiService: ApiService,\n private userService: UserService, private tokenService: TokenService,\n private appIdService: AppIdService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private messagingService: MessagingService,\n private setCryptoKeys = true) { }\n\n init() {\n TwoFactorProviders[TwoFactorProviderType.Email].name = this.i18nService.t('emailTitle');\n TwoFactorProviders[TwoFactorProviderType.Email].description = this.i18nService.t('emailDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Authenticator].name = this.i18nService.t('authenticatorAppTitle');\n TwoFactorProviders[TwoFactorProviderType.Authenticator].description =\n this.i18nService.t('authenticatorAppDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Duo].description = this.i18nService.t('duoDesc');\n\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].name =\n 'Duo (' + this.i18nService.t('organization') + ')';\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].description =\n this.i18nService.t('duoOrganizationDesc');\n\n TwoFactorProviders[TwoFactorProviderType.U2f].name = this.i18nService.t('u2fTitle');\n TwoFactorProviders[TwoFactorProviderType.U2f].description = this.i18nService.t('u2fDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Yubikey].name = this.i18nService.t('yubiKeyTitle');\n TwoFactorProviders[TwoFactorProviderType.Yubikey].description = this.i18nService.t('yubiKeyDesc');\n }\n\n async logIn(email: string, masterPassword: string): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key);\n }\n\n async logInTwoFactor(twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,\n remember?: boolean): Promise {\n return await this.logInHelper(this.email, this.masterPasswordHash, this.key, twoFactorProvider,\n twoFactorToken, remember);\n }\n\n async logInComplete(email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,\n twoFactorToken: string, remember?: boolean): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key, twoFactorProvider, twoFactorToken, remember);\n }\n\n logOut(callback: Function) {\n callback();\n this.messagingService.send('loggedOut');\n }\n\n getSupportedTwoFactorProviders(win: Window): any[] {\n const providers: any[] = [];\n if (this.twoFactorProviders == null) {\n return providers;\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.OrganizationDuo) &&\n this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.OrganizationDuo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Authenticator)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Authenticator]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Yubikey)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Yubikey]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Duo) && this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Duo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.U2f) && this.platformUtilsService.supportsU2f(win)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.U2f]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Email)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Email]);\n }\n\n return providers;\n }\n\n getDefaultTwoFactorProvider(u2fSupported: boolean): TwoFactorProviderType {\n if (this.twoFactorProviders == null) {\n return null;\n }\n\n if (this.selectedTwoFactorProviderType != null &&\n this.twoFactorProviders.has(this.selectedTwoFactorProviderType)) {\n return this.selectedTwoFactorProviderType;\n }\n\n let providerType: TwoFactorProviderType = null;\n let providerPriority = -1;\n this.twoFactorProviders.forEach((value, type) => {\n const provider = (TwoFactorProviders as any)[type];\n if (provider != null && provider.priority > providerPriority) {\n if (type === TwoFactorProviderType.U2f && !u2fSupported) {\n return;\n }\n\n providerType = type;\n providerPriority = provider.priority;\n }\n });\n\n return providerType;\n }\n\n async makePreloginKey(masterPassword: string, email: string): Promise {\n email = email.trim().toLowerCase();\n this.kdf = null;\n this.kdfIterations = null;\n try {\n const preloginResponse = await this.apiService.postPrelogin(new PreloginRequest(email));\n if (preloginResponse != null) {\n this.kdf = preloginResponse.kdf;\n this.kdfIterations = preloginResponse.kdfIterations;\n }\n } catch (e) {\n if (e == null || e.statusCode !== 404) {\n throw e;\n }\n }\n return this.cryptoService.makeKey(masterPassword, email, this.kdf, this.kdfIterations);\n }\n\n private async logInHelper(email: string, hashedPassword: string, key: SymmetricCryptoKey,\n twoFactorProvider?: TwoFactorProviderType, twoFactorToken?: string, remember?: boolean): Promise {\n const storedTwoFactorToken = await this.tokenService.getTwoFactorToken(email);\n const appId = await this.appIdService.getAppId();\n const deviceRequest = new DeviceRequest(appId, this.platformUtilsService);\n\n let request: TokenRequest;\n if (twoFactorToken != null && twoFactorProvider != null) {\n request = new TokenRequest(email, hashedPassword, twoFactorProvider, twoFactorToken, remember,\n deviceRequest);\n } else if (storedTwoFactorToken != null) {\n request = new TokenRequest(email, hashedPassword, TwoFactorProviderType.Remember,\n storedTwoFactorToken, false, deviceRequest);\n } else {\n request = new TokenRequest(email, hashedPassword, null, null, false, deviceRequest);\n }\n\n const response = await this.apiService.postIdentityToken(request);\n\n this.clearState();\n const result = new AuthResult();\n result.twoFactor = !(response as any).accessToken;\n\n if (result.twoFactor) {\n // two factor required\n const twoFactorResponse = response as IdentityTwoFactorResponse;\n this.email = email;\n this.masterPasswordHash = hashedPassword;\n this.key = this.setCryptoKeys ? key : null;\n this.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n result.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n return result;\n }\n\n const tokenResponse = response as IdentityTokenResponse;\n if (tokenResponse.twoFactorToken != null) {\n this.tokenService.setTwoFactorToken(tokenResponse.twoFactorToken, email);\n }\n\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\n await this.userService.setInformation(this.tokenService.getUserId(), this.tokenService.getEmail(),\n this.kdf, this.kdfIterations);\n if (this.setCryptoKeys) {\n await this.cryptoService.setKey(key);\n await this.cryptoService.setKeyHash(hashedPassword);\n await this.cryptoService.setEncKey(tokenResponse.key);\n\n // User doesn't have a key pair yet (old account), let's generate one for them\n if (tokenResponse.privateKey == null) {\n try {\n const keyPair = await this.cryptoService.makeKeyPair();\n await this.apiService.postAccountKeys(new KeysRequest(keyPair[0], keyPair[1].encryptedString));\n tokenResponse.privateKey = keyPair[1].encryptedString;\n } catch (e) {\n // tslint:disable-next-line\n console.error(e);\n }\n }\n\n await this.cryptoService.setEncPrivateKey(tokenResponse.privateKey);\n }\n\n this.messagingService.send('loggedIn');\n return result;\n }\n\n private clearState(): void {\n this.email = null;\n this.masterPasswordHash = null;\n this.twoFactorProviders = null;\n this.selectedTwoFactorProviderType = null;\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from 'jslib/angular/components/groupings.component';\n\n@Component({\n selector: 'app-vault-groupings',\n templateUrl: 'groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n @Output() onSearchTextChanged = new EventEmitter();\n\n searchText: string = '';\n searchPlaceholder: string = null;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n searchTextChanged() {\n this.onSearchTextChanged.emit(this.searchText);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CiphersComponent as BaseCiphersComponent } from 'jslib/angular/components/ciphers.component';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nconst MaxCheckedCount = 500;\n\n@Component({\n selector: 'app-vault-ciphers',\n templateUrl: 'ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent implements OnDestroy {\n @Input() showAddNew = true;\n @Output() onAttachmentsClicked = new EventEmitter();\n @Output() onShareClicked = new EventEmitter();\n @Output() onCollectionsClicked = new EventEmitter();\n\n cipherType = CipherType;\n actionPromise: Promise;\n\n constructor(searchService: SearchService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected i18nService: I18nService,\n protected platformUtilsService: PlatformUtilsService, protected cipherService: CipherService) {\n super(searchService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n checkCipher(c: CipherView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n if (select) {\n this.selectAll(false);\n }\n const selectCount = select && this.ciphers.length > MaxCheckedCount ? MaxCheckedCount : this.ciphers.length;\n for (let i = 0; i < selectCount; i++) {\n this.checkCipher(this.ciphers[i], select);\n }\n }\n\n getSelected(): CipherView[] {\n if (this.ciphers == null) {\n return [];\n }\n return this.ciphers.filter((c) => !!(c as any).checked);\n }\n\n getSelectedIds(): string[] {\n return this.getSelected().map((c) => c.id);\n }\n\n attachments(c: CipherView) {\n this.onAttachmentsClicked.emit(c);\n }\n\n share(c: CipherView) {\n this.onShareClicked.emit(c);\n }\n\n collections(c: CipherView) {\n this.onCollectionsClicked.emit(c);\n }\n\n async delete(c: CipherView): Promise {\n if (this.actionPromise != null) {\n return;\n }\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteItemConfirmation'), this.i18nService.t('deleteItem'),\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.deleteCipher(c.id);\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Cipher' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedItem'));\n this.refresh();\n } catch { }\n this.actionPromise = null;\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.analytics.eventTrack.next({ action: 'Copied ' + aType.toLowerCase() + ' from listing.' });\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.toasterService.popAsync('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n protected deleteCipher(id: string) {\n return this.cipherService.deleteWithServer(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return c.hasOldAttachments && c.organizationId == null;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { AddEditComponent as BaseAddEditComponent } from 'jslib/angular/components/add-edit.component';\nimport { LoginUriView } from 'jslib/models/view/loginUriView';\n\n@Component({\n selector: 'app-vault-add-edit',\n templateUrl: 'add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n canAccessPremium: boolean;\n totpCode: string;\n totpCodeFormatted: string;\n totpDash: number;\n totpSec: number;\n totpLow: boolean;\n showRevisionDate = false;\n hasPasswordHistory = false;\n viewingPasswordHistory = false;\n\n protected totpInterval: number;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n protected totpService: TotpService, protected passwordGenerationService: PasswordGenerationService,\n protected messagingService: MessagingService) {\n super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,\n userService, collectionService);\n }\n\n async ngOnInit() {\n await super.ngOnInit();\n await this.load();\n this.showRevisionDate = this.cipher.passwordRevisionDisplayDate != null;\n this.hasPasswordHistory = this.cipher.hasPasswordHistory;\n this.cleanUp();\n\n this.canAccessPremium = await this.userService.canAccessPremium();\n if (this.cipher.type === CipherType.Login && this.cipher.login.totp &&\n (this.cipher.organizationUseTotp || this.canAccessPremium)) {\n await this.totpUpdateCode();\n const interval = this.totpService.getTimeInterval(this.cipher.login.totp);\n await this.totpTick(interval);\n\n this.totpInterval = window.setInterval(async () => {\n await this.totpTick(interval);\n }, 1000);\n }\n }\n\n toggleFavorite() {\n this.cipher.favorite = !this.cipher.favorite;\n }\n\n launch(uri: LoginUriView) {\n if (!uri.canLaunch) {\n return;\n }\n\n this.platformUtilsService.eventTrack('Launched Login URI');\n this.platformUtilsService.launchUri(uri.uri);\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.platformUtilsService.eventTrack('Copied ' + aType);\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.platformUtilsService.showToast('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n async generatePassword(): Promise {\n const confirmed = await super.generatePassword();\n if (confirmed) {\n const options = await this.passwordGenerationService.getOptions();\n this.cipher.login.password = await this.passwordGenerationService.generatePassword(options);\n }\n return confirmed;\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.cipher.organizationId });\n }\n\n viewHistory() {\n this.viewingPasswordHistory = !this.viewingPasswordHistory;\n }\n\n protected cleanUp() {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n\n protected async totpUpdateCode() {\n if (this.cipher == null || this.cipher.type !== CipherType.Login || this.cipher.login.totp == null) {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n return;\n }\n\n this.totpCode = await this.totpService.getCode(this.cipher.login.totp);\n if (this.totpCode != null) {\n if (this.totpCode.length > 4) {\n const half = Math.floor(this.totpCode.length / 2);\n this.totpCodeFormatted = this.totpCode.substring(0, half) + ' ' + this.totpCode.substring(half);\n } else {\n this.totpCodeFormatted = this.totpCode;\n }\n } else {\n this.totpCodeFormatted = null;\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n }\n\n private async totpTick(intervalSeconds: number) {\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const mod = epoch % intervalSeconds;\n\n this.totpSec = intervalSeconds - mod;\n this.totpDash = +(Math.round((((78.6 / intervalSeconds) * mod) + 'e+2') as any) + 'e-2');\n this.totpLow = this.totpSec <= 7;\n if (mod === 0) {\n await this.totpUpdateCode();\n }\n }\n}\n","export enum OrganizationUserStatusType {\n Invited = 0,\n Accepted = 1,\n Confirmed = 2,\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n Type,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorProviders } from 'jslib/services/auth.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorAuthenticatorComponent } from './two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './two-factor-recovery.component';\nimport { TwoFactorU2fComponent } from './two-factor-u2f.component';\nimport { TwoFactorYubiKeyComponent } from './two-factor-yubikey.component';\n\n@Component({\n selector: 'app-two-factor-setup',\n templateUrl: 'two-factor-setup.component.html',\n})\nexport class TwoFactorSetupComponent implements OnInit {\n @ViewChild('recoveryTemplate', { read: ViewContainerRef }) recoveryModalRef: ViewContainerRef;\n @ViewChild('authenticatorTemplate', { read: ViewContainerRef }) authenticatorModalRef: ViewContainerRef;\n @ViewChild('yubikeyTemplate', { read: ViewContainerRef }) yubikeyModalRef: ViewContainerRef;\n @ViewChild('u2fTemplate', { read: ViewContainerRef }) u2fModalRef: ViewContainerRef;\n @ViewChild('duoTemplate', { read: ViewContainerRef }) duoModalRef: ViewContainerRef;\n @ViewChild('emailTemplate', { read: ViewContainerRef }) emailModalRef: ViewContainerRef;\n\n organizationId: string;\n providers: any[] = [];\n canAccessPremium: boolean;\n loading = true;\n\n private modal: ModalComponent = null;\n\n constructor(protected apiService: ApiService, protected userService: UserService,\n protected componentFactoryResolver: ComponentFactoryResolver, protected messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n\n for (const key in TwoFactorProviders) {\n if (!TwoFactorProviders.hasOwnProperty(key)) {\n continue;\n }\n\n const p = (TwoFactorProviders as any)[key];\n if (this.filterProvider(p.type)) {\n continue;\n }\n\n this.providers.push({\n type: p.type,\n name: p.name,\n description: p.description,\n enabled: false,\n premium: p.premium,\n sort: p.sort,\n });\n }\n\n this.providers.sort((a: any, b: any) => a.sort - b.sort);\n await this.load();\n }\n\n async load() {\n this.loading = true;\n const providerList = await this.getTwoFactorProviders();\n providerList.data.forEach((p) => {\n this.providers.forEach((p2) => {\n if (p.type === p2.type) {\n p2.enabled = p.enabled;\n }\n });\n });\n this.loading = false;\n }\n\n manage(type: TwoFactorProviderType) {\n switch (type) {\n case TwoFactorProviderType.Authenticator:\n const authComp = this.openModal(this.authenticatorModalRef, TwoFactorAuthenticatorComponent);\n authComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Authenticator);\n });\n break;\n case TwoFactorProviderType.Yubikey:\n const yubiComp = this.openModal(this.yubikeyModalRef, TwoFactorYubiKeyComponent);\n yubiComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Yubikey);\n });\n break;\n case TwoFactorProviderType.Duo:\n const duoComp = this.openModal(this.duoModalRef, TwoFactorDuoComponent);\n duoComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Duo);\n });\n break;\n case TwoFactorProviderType.Email:\n const emailComp = this.openModal(this.emailModalRef, TwoFactorEmailComponent);\n emailComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Email);\n });\n break;\n case TwoFactorProviderType.U2f:\n const u2fComp = this.openModal(this.u2fModalRef, TwoFactorU2fComponent);\n u2fComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.U2f);\n });\n break;\n default:\n break;\n }\n }\n\n recoveryCode() {\n this.openModal(this.recoveryModalRef, TwoFactorRecoveryComponent);\n }\n\n async premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n protected getTwoFactorProviders() {\n return this.apiService.getTwoFactorProviders();\n }\n\n protected filterProvider(type: TwoFactorProviderType) {\n return type === TwoFactorProviderType.OrganizationDuo;\n }\n\n protected openModal(ref: ViewContainerRef, type: Type): T {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = ref.createComponent(factory).instance;\n const childComponent = this.modal.show(type, ref);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n return childComponent;\n }\n\n protected updateStatus(enabled: boolean, type: TwoFactorProviderType) {\n if (!enabled && this.modal != null) {\n this.modal.close();\n }\n this.providers.forEach((p) => {\n if (p.type === type) {\n p.enabled = enabled;\n }\n });\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { ImportOption, ImportService } from 'jslib/abstractions/import.service';\n\n@Component({\n selector: 'app-import',\n templateUrl: 'import.component.html',\n})\nexport class ImportComponent implements OnInit {\n featuredImportOptions: ImportOption[];\n importOptions: ImportOption[];\n format: string = null;\n fileContents: string;\n formPromise: Promise;\n\n protected organizationId: string = null;\n protected successNavigate: any[] = ['vault'];\n\n constructor(protected i18nService: I18nService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected importService: ImportService,\n protected router: Router) { }\n\n ngOnInit() {\n this.setImportOptions();\n this.importOptions.sort((a, b) => {\n if (a.name == null && b.name != null) {\n return -1;\n }\n if (a.name != null && b.name == null) {\n return 1;\n }\n if (a.name == null && b.name == null) {\n return 0;\n }\n\n return this.i18nService.collator ? this.i18nService.collator.compare(a.name, b.name) :\n a.name.localeCompare(b.name);\n });\n }\n\n async submit() {\n const importer = this.importService.getImporter(this.format, this.organizationId != null);\n if (importer === null) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFormat'));\n return;\n }\n\n const fileEl = document.getElementById('file') as HTMLInputElement;\n const files = fileEl.files;\n if ((files == null || files.length === 0) && (this.fileContents == null || this.fileContents === '')) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n let fileContents = this.fileContents;\n if (files != null && files.length > 0) {\n try {\n const content = await this.getFileContents(files[0]);\n if (content != null) {\n fileContents = content;\n }\n } catch { }\n }\n\n if (fileContents == null || fileContents === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n try {\n this.formPromise = this.importService.import(importer, fileContents, this.organizationId);\n const error = await this.formPromise;\n if (error != null) {\n this.error(error);\n return;\n }\n this.analytics.eventTrack.next({\n action: 'Imported Data',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('importSuccess'));\n this.router.navigate(this.successNavigate);\n } catch { }\n }\n\n getFormatInstructionTitle() {\n if (this.format == null) {\n return null;\n }\n\n const results = this.featuredImportOptions.concat(this.importOptions).filter((o) => o.id === this.format);\n if (results.length > 0) {\n return this.i18nService.t('instructionsFor', results[0].name);\n }\n return null;\n }\n\n protected setImportOptions() {\n this.featuredImportOptions = [{\n id: null,\n name: '-- ' + this.i18nService.t('select') + ' --',\n }, ...this.importService.featuredImportOptions];\n this.importOptions = this.importService.regularImportOptions;\n }\n\n private error(error: Error) {\n this.analytics.eventTrack.next({\n action: 'Import Data Failed',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'), error.message);\n }\n\n private getFileContents(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsText(file, 'utf-8');\n reader.onload = (evt) => {\n if (this.format === 'lastpasscsv' && file.type === 'text/html') {\n const parser = new DOMParser();\n const doc = parser.parseFromString((evt.target as any).result, 'text/html');\n const pre = doc.querySelector('pre');\n if (pre != null) {\n resolve(pre.textContent);\n return;\n }\n reject();\n return;\n }\n\n resolve((evt.target as any).result);\n };\n reader.onerror = () => {\n reject();\n };\n });\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from 'jslib/angular/components/export.component';\n\n@Component({\n selector: 'app-export',\n templateUrl: 'export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService) {\n super(cryptoService, i18nService, platformUtilsService, exportService, window);\n }\n\n protected saved() {\n super.saved();\n this.masterPassword = null;\n this.platformUtilsService.showToast('success', null, this.i18nService.t('exportSuccess'));\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: 'reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordUseMap: Map;\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const ciphersWithPasswords: CipherView[] = [];\n this.passwordUseMap = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n ciphersWithPasswords.push(c);\n if (this.passwordUseMap.has(c.login.password)) {\n this.passwordUseMap.set(c.login.password, this.passwordUseMap.get(c.login.password) + 1);\n } else {\n this.passwordUseMap.set(c.login.password, 1);\n }\n });\n const reusedPasswordCiphers = ciphersWithPasswords.filter((c) =>\n this.passwordUseMap.has(c.login.password) && this.passwordUseMap.get(c.login.password) > 1);\n this.ciphers = reusedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import { EncryptionType } from '../../enums/encryptionType';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class CipherString {\r\n encryptedString?: string;\r\n encryptionType?: EncryptionType;\r\n decryptedValue?: string;\r\n data?: string;\r\n iv?: string;\r\n mac?: string;\r\n\r\n constructor(encryptedStringOrType: string | EncryptionType, data?: string, iv?: string, mac?: string) {\r\n if (data != null) {\r\n // data and header\r\n const encType = encryptedStringOrType as EncryptionType;\r\n this.encryptedString = encType + '.' + data;\r\n\r\n // iv\r\n if (iv != null) {\r\n this.encryptedString += ('|' + iv);\r\n }\r\n\r\n // mac\r\n if (mac != null) {\r\n this.encryptedString += ('|' + mac);\r\n }\r\n\r\n this.encryptionType = encType;\r\n this.data = data;\r\n this.iv = iv;\r\n this.mac = mac;\r\n\r\n return;\r\n }\r\n\r\n this.encryptedString = encryptedStringOrType as string;\r\n if (!this.encryptedString) {\r\n return;\r\n }\r\n\r\n const headerPieces = this.encryptedString.split('.');\r\n let encPieces: string[] = null;\r\n\r\n if (headerPieces.length === 2) {\r\n try {\r\n this.encryptionType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) {\r\n return;\r\n }\r\n } else {\r\n encPieces = this.encryptedString.split('|');\r\n this.encryptionType = encPieces.length === 3 ? EncryptionType.AesCbc128_HmacSha256_B64 :\r\n EncryptionType.AesCbc256_B64;\r\n }\r\n\r\n switch (this.encryptionType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encPieces.length !== 3) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n this.mac = encPieces[2];\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encPieces.length !== 2) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n if (encPieces.length !== 1) {\r\n return;\r\n }\r\n\r\n this.data = encPieces[0];\r\n break;\r\n default:\r\n return;\r\n }\r\n }\r\n\r\n async decrypt(orgId: string): Promise {\r\n if (this.decryptedValue) {\r\n return Promise.resolve(this.decryptedValue);\r\n }\r\n\r\n let cryptoService: CryptoService;\r\n const containerService = (Utils.global as any).bitwardenContainerService;\r\n if (containerService) {\r\n cryptoService = containerService.getCryptoService();\r\n } else {\r\n throw new Error('global bitwardenContainerService not initialized.');\r\n }\r\n\r\n try {\r\n const orgKey = await cryptoService.getOrgKey(orgId);\r\n this.decryptedValue = await cryptoService.decryptToUtf8(this, orgKey);\r\n } catch (e) {\r\n this.decryptedValue = '[error: cannot decrypt]';\r\n }\r\n return this.decryptedValue;\r\n }\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: 'unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends CipherReportComponent implements OnInit {\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const unsecuredCiphers = allCiphers.filter((c) => {\n if (c.type !== CipherType.Login || !c.login.hasUris) {\n return false;\n }\n return c.login.uris.find((u) => u.uri != null && u.uri.indexOf('http://') === 0) != null;\n });\n this.ciphers = unsecuredCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: 'weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordStrengthMap = new Map();\n\n private passwordStrengthCache = new Map();\n\n constructor(protected cipherService: CipherService, protected passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const weakPasswordCiphers: CipherView[] = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const hasUsername = c.login.username != null && c.login.username.trim() !== '';\n const cacheKey = c.login.password + '_____' + (hasUsername ? c.login.username : '');\n if (!this.passwordStrengthCache.has(cacheKey)) {\n let userInput: string[] = [];\n if (hasUsername) {\n const atPosition = c.login.username.indexOf('@');\n if (atPosition > -1) {\n userInput = userInput.concat(\n c.login.username.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/))\n .filter((i) => i.length >= 3);\n } else {\n userInput = c.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/)\n .filter((i) => i.length >= 3);\n }\n }\n const result = this.passwordGenerationService.passwordStrength(c.login.password,\n userInput.length > 0 ? userInput : null);\n this.passwordStrengthCache.set(cacheKey, result.score);\n }\n const score = this.passwordStrengthCache.get(cacheKey);\n if (score != null && score <= 3) {\n this.passwordStrengthMap.set(c.id, this.scoreKey(score));\n weakPasswordCiphers.push(c);\n }\n });\n this.ciphers = weakPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private scoreKey(score: number): [string, string] {\n switch (score) {\n case 4:\n return ['strong', 'success'];\n case 3:\n return ['good', 'primary'];\n case 2:\n return ['weak', 'warning'];\n default:\n return ['veryWeak', 'danger'];\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: 'exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n exposedPasswordMap = new Map();\n\n constructor(protected cipherService: CipherService, protected auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n ngOnInit() {\n this.checkAccess();\n }\n\n async load() {\n if (await this.checkAccess()) {\n super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const exposedPasswordCiphers: CipherView[] = [];\n const promises: Array> = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const promise = this.auditService.passwordLeaked(c.login.password).then((exposedCount) => {\n if (exposedCount > 0) {\n exposedPasswordCiphers.push(c);\n this.exposedPasswordMap.set(c.id, exposedCount);\n }\n });\n promises.push(promise);\n });\n await Promise.all(promises);\n this.ciphers = exposedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: 'inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends CipherReportComponent implements OnInit {\n services = new Map();\n cipherDocs = new Map();\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n try {\n await this.load2fa();\n } catch { }\n if (this.services.size > 0) {\n const allCiphers = await this.getAllCiphers();\n const inactive2faCiphers: CipherView[] = [];\n const promises: Array> = [];\n const docs = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || (c.login.totp != null && c.login.totp !== '') || !c.login.hasUris) {\n return;\n }\n for (let i = 0; i < c.login.uris.length; i++) {\n const u = c.login.uris[i];\n if (u.uri != null && u.uri !== '') {\n const hostname = Utils.getHostname(u.uri);\n if (hostname != null && this.services.has(hostname)) {\n if (this.services.get(hostname) != null) {\n docs.set(c.id, this.services.get(hostname));\n }\n inactive2faCiphers.push(c);\n break;\n }\n }\n }\n });\n await Promise.all(promises);\n this.ciphers = inactive2faCiphers;\n this.cipherDocs = docs;\n }\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private async load2fa() {\n if (this.services.size > 0) {\n return;\n }\n const response = await fetch(new Request('https://twofactorauth.org/data.json'));\n if (response.status !== 200) {\n throw new Error();\n }\n const responseJson = await response.json();\n for (const categoryName in responseJson) {\n if (responseJson.hasOwnProperty(categoryName)) {\n const category = responseJson[categoryName];\n for (const serviceName in category) {\n if (category.hasOwnProperty(serviceName)) {\n const service = category[serviceName];\n if (service.tfa && service.url != null) {\n const hostname = Utils.getHostname(service.url);\n if (hostname != null) {\n this.services.set(hostname, service.doc);\n }\n }\n }\n }\n }\n }\n }\n}\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\n@Pipe({\n name: 'search',\n})\nexport class SearchPipe implements PipeTransform {\n transform(items: any[], searchText: string, prop1?: string, prop2?: string, prop3?: string): any[] {\n if (items == null || items.length === 0) {\n return [];\n }\n\n if (searchText == null || searchText.length < 2) {\n return items;\n }\n\n searchText = searchText.trim().toLowerCase();\n return items.filter((i) => {\n if (prop1 != null && i[prop1] != null && i[prop1].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop2 != null && i[prop2] != null && i[prop2].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop3 != null && i[prop3] != null && i[prop3].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n return false;\n });\n }\n}\n","export class SelectionReadOnlyRequest {\n id: string;\n readOnly: boolean;\n\n constructor(id: string, readOnly: boolean) {\n this.id = id;\n this.readOnly = readOnly;\n }\n}\n","export class SelectionReadOnlyResponse {\n id: string;\n readOnly: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.readOnly = response.ReadOnly;\n }\n}\n","import { EnvironmentService } from './environment.service';\r\n\r\nexport abstract class NotificationsService {\r\n init: (environmentService: EnvironmentService) => Promise;\r\n updateConnection: (sync?: boolean) => Promise;\r\n reconnectFromActivity: () => Promise;\r\n disconnectFromInactivity: () => Promise;\r\n}\r\n","export abstract class SettingsService {\r\n clearCache: () => void;\r\n getEquivalentDomains: () => Promise;\r\n setEquivalentDomains: (equivalentDomains: string[][]) => Promise;\r\n clear: (userId: string) => Promise;\r\n}\r\n","import {\r\n Component,\r\n OnDestroy,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\n@Component({\r\n selector: 'app-frontend-layout',\r\n templateUrl: 'frontend-layout.component.html',\r\n})\r\nexport class FrontendLayoutComponent implements OnInit, OnDestroy {\r\n version: string;\r\n\r\n constructor(private platformUtilsService: PlatformUtilsService) { }\r\n\r\n ngOnInit() {\r\n this.version = this.platformUtilsService.getApplicationVersion();\r\n document.body.classList.add('layout_frontend');\r\n }\r\n\r\n ngOnDestroy() {\r\n document.body.classList.remove('layout_frontend');\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { LoginComponent as BaseLoginComponent } from 'jslib/angular/components/login.component';\n\n@Component({\n selector: 'app-login',\n templateUrl: 'login.component.html',\n})\nexport class LoginComponent extends BaseLoginComponent {\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, private route: ActivatedRoute,\n storageService: StorageService, private stateService: StateService,\n platformUtilsService: PlatformUtilsService) {\n super(authService, router, platformUtilsService, i18nService, storageService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n async ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n await super.ngOnInit();\n queryParamsSub.unsubscribe();\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { Router } from '@angular/router';\n\nimport { TwoFactorOptionsComponent } from './two-factor-options.component';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { EnvironmentService } from 'jslib/abstractions/environment.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { TwoFactorComponent as BaseTwoFactorComponent } from 'jslib/angular/components/two-factor.component';\n\n@Component({\n selector: 'app-two-factor',\n templateUrl: 'two-factor.component.html',\n})\nexport class TwoFactorComponent extends BaseTwoFactorComponent {\n @ViewChild('twoFactorOptions', { read: ViewContainerRef }) twoFactorOptionsModal: ViewContainerRef;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, apiService: ApiService,\n platformUtilsService: PlatformUtilsService, private stateService: StateService,\n environmentService: EnvironmentService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(authService, router, i18nService, apiService, platformUtilsService, window, environmentService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n anotherMethod() {\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n const modal = this.twoFactorOptionsModal.createComponent(factory).instance;\n const childComponent = modal.show(TwoFactorOptionsComponent,\n this.twoFactorOptionsModal);\n\n childComponent.onProviderSelected.subscribe(async (provider: TwoFactorProviderType) => {\n modal.close();\n this.selectedProviderType = provider;\n await this.init();\n });\n childComponent.onRecoverSelected.subscribe(() => {\n modal.close();\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-password-strength',\n templateUrl: 'password-strength.component.html',\n})\nexport class PasswordStrengthComponent implements OnChanges {\n @Input() score?: number;\n @Input() showText = false;\n\n scoreWidth = 0;\n color = 'bg-danger';\n text: string;\n\n constructor(private i18nService: I18nService) { }\n\n ngOnChanges(): void {\n this.scoreWidth = this.score == null ? 0 : (this.score + 1) * 20;\n switch (this.score) {\n case 4:\n this.color = 'bg-success';\n this.text = this.i18nService.t('strong');\n break;\n case 3:\n this.color = 'bg-primary';\n this.text = this.i18nService.t('good');\n break;\n case 2:\n this.color = 'bg-warning';\n this.text = this.i18nService.t('weak');\n break;\n default:\n this.color = 'bg-danger';\n this.text = this.score != null ? this.i18nService.t('weak') : null;\n break;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { RegisterComponent as BaseRegisterComponent } from 'jslib/angular/components/register.component';\n\n@Component({\n selector: 'app-register',\n templateUrl: 'register.component.html',\n})\nexport class RegisterComponent extends BaseRegisterComponent {\n showCreateOrgMessage = false;\n showTerms = true;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, cryptoService: CryptoService,\n apiService: ApiService, private route: ActivatedRoute,\n stateService: StateService, platformUtilsService: PlatformUtilsService,\n passwordGenerationService: PasswordGenerationService) {\n super(authService, router, i18nService, cryptoService, apiService, stateService, platformUtilsService,\n passwordGenerationService);\n this.showTerms = !platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe((qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.showCreateOrgMessage = true;\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n queryParamsSub.unsubscribe();\n });\n }\n}\n","export enum KdfType {\r\n PBKDF2_SHA256 = 0,\r\n}\r\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { HintComponent as BaseHintComponent } from 'jslib/angular/components/hint.component';\n\n@Component({\n selector: 'app-hint',\n templateUrl: 'hint.component.html',\n})\nexport class HintComponent extends BaseHintComponent {\n constructor(router: Router, i18nService: I18nService,\n apiService: ApiService, platformUtilsService: PlatformUtilsService) {\n super(router, i18nService, apiService, platformUtilsService);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { RouterService } from '../services/router.service';\n\nimport { LockComponent as BaseLockComponent } from 'jslib/angular/components/lock.component';\n\n@Component({\n selector: 'app-lock',\n templateUrl: 'lock.component.html',\n})\nexport class LockComponent extends BaseLockComponent implements OnInit {\n constructor(router: Router, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, messagingService: MessagingService,\n userService: UserService, cryptoService: CryptoService,\n private routerService: RouterService) {\n super(router, i18nService, platformUtilsService, messagingService, userService, cryptoService);\n }\n\n async ngOnInit() {\n const authed = await this.userService.isAuthenticated();\n if (!authed) {\n this.router.navigate(['/']);\n } else if (await this.cryptoService.hasKey()) {\n this.router.navigate(['vault']);\n }\n\n const previousUrl = this.routerService.getPreviousUrl();\n if (previousUrl !== '/' && previousUrl.indexOf('lock') === -1) {\n this.successRoute = previousUrl;\n }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { VerifyEmailRequest } from 'jslib/models/request/verifyEmailRequest';\n\n@Component({\n selector: 'app-verify-email-token',\n templateUrl: 'verify-email-token.component.html',\n})\nexport class VerifyEmailTokenComponent implements OnInit {\n constructor(private router: Router, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute,\n private apiService: ApiService, private userService: UserService) { }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null) {\n try {\n await this.apiService.postAccountVerifyEmailToken(\n new VerifyEmailRequest(qParams.userId, qParams.token));\n const authed = await this.userService.isAuthenticated();\n if (authed) {\n await this.apiService.refreshIdentityToken();\n }\n this.toasterService.popAsync('success', null, this.i18nService.t('emailVerified'));\n this.router.navigate(['/']);\n return;\n } catch { }\n }\n this.toasterService.popAsync('error', null, this.i18nService.t('emailVerifiedFailed'));\n this.router.navigate(['/']);\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport {\r\n Toast,\r\n ToasterService,\r\n} from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { StateService } from 'jslib/abstractions/state.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { OrganizationUserAcceptRequest } from 'jslib/models/request/organizationUserAcceptRequest';\r\n\r\n@Component({\r\n selector: 'app-accept-organization',\r\n templateUrl: 'accept-organization.component.html',\r\n})\r\nexport class AcceptOrganizationComponent implements OnInit {\r\n loading = true;\r\n authed = false;\r\n orgName: string;\r\n email: string;\r\n actionPromise: Promise;\r\n\r\n constructor(private router: Router, private toasterService: ToasterService,\r\n private i18nService: I18nService, private route: ActivatedRoute,\r\n private apiService: ApiService, private userService: UserService,\r\n private stateService: StateService) { }\r\n\r\n ngOnInit() {\r\n let fired = false;\r\n this.route.queryParams.subscribe(async (qParams) => {\r\n if (fired) {\r\n return;\r\n }\r\n fired = true;\r\n await this.stateService.remove('orgInvitation');\r\n let error = qParams.organizationId == null || qParams.organizationUserId == null || qParams.token == null;\r\n if (!error) {\r\n this.authed = await this.userService.isAuthenticated();\r\n if (this.authed) {\r\n const request = new OrganizationUserAcceptRequest();\r\n request.token = qParams.token;\r\n try {\r\n this.actionPromise = this.apiService.postOrganizationUserAccept(qParams.organizationId,\r\n qParams.organizationUserId, request);\r\n await this.actionPromise;\r\n const toast: Toast = {\r\n type: 'success',\r\n title: this.i18nService.t('inviteAccepted'),\r\n body: this.i18nService.t('inviteAcceptedDesc'),\r\n timeout: 10000,\r\n };\r\n this.toasterService.popAsync(toast);\r\n this.router.navigate(['/vault']);\r\n } catch {\r\n error = true;\r\n }\r\n } else {\r\n await this.stateService.save('orgInvitation', qParams);\r\n this.email = qParams.email;\r\n this.orgName = qParams.organizationName;\r\n if (this.orgName != null) {\r\n // Fix URL encoding of space issue with Angular\r\n this.orgName = this.orgName.replace(/\\+/g, ' ');\r\n }\r\n }\r\n }\r\n\r\n if (error) {\r\n this.toasterService.popAsync('error', null, this.i18nService.t('inviteAcceptFailed'));\r\n this.router.navigate(['/']);\r\n }\r\n\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { TwoFactorRecoveryRequest } from 'jslib/models/request/twoFactorRecoveryRequest';\n\n@Component({\n selector: 'app-recover-two-factor',\n templateUrl: 'recover-two-factor.component.html',\n})\nexport class RecoverTwoFactorComponent {\n email: string;\n masterPassword: string;\n recoveryCode: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private cryptoService: CryptoService,\n private authService: AuthService) { }\n\n async submit() {\n try {\n const request = new TwoFactorRecoveryRequest();\n request.recoveryCode = this.recoveryCode.replace(/\\s/g, '').toLowerCase();\n request.email = this.email.trim().toLowerCase();\n const key = await this.authService.makePreloginKey(this.masterPassword, request.email);\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, key);\n this.formPromise = this.apiService.postTwoFactorRecover(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered 2FA' });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepRecoverDisabled'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeleteRecoverRequest } from 'jslib/models/request/deleteRecoverRequest';\n\n@Component({\n selector: 'app-recover-delete',\n templateUrl: 'recover-delete.component.html',\n})\nexport class RecoverDeleteComponent {\n email: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService) {\n }\n\n async submit() {\n try {\n const request = new DeleteRecoverRequest();\n request.email = this.email.trim().toLowerCase();\n this.formPromise = this.apiService.postAccountRecoverDelete(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Started Delete Recovery' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deleteRecoverEmailSent'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { VerifyDeleteRecoverRequest } from 'jslib/models/request/verifyDeleteRecoverRequest';\n\n@Component({\n selector: 'app-verify-recover-delete',\n templateUrl: 'verify-recover-delete.component.html',\n})\nexport class VerifyRecoverDeleteComponent implements OnInit {\n email: string;\n formPromise: Promise;\n\n private userId: string;\n private token: string;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute) {\n }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null && qParams.email != null) {\n this.userId = qParams.userId;\n this.token = qParams.token;\n this.email = qParams.email;\n } else {\n this.router.navigate(['/']);\n }\n });\n }\n\n async submit() {\n try {\n const request = new VerifyDeleteRecoverRequest(this.userId, this.token);\n this.formPromise = this.apiService.postAccountRecoverDeleteToken(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered Delete' });\n this.toasterService.popAsync('success', this.i18nService.t('accountDeleted'),\n this.i18nService.t('accountDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\n@Component({\n selector: 'app-navbar',\n templateUrl: 'navbar.component.html',\n})\nexport class NavbarComponent implements OnInit {\n selfHosted = false;\n name: string;\n email: string;\n\n constructor(private messagingService: MessagingService, private platformUtilsService: PlatformUtilsService,\n private tokenService: TokenService) {\n this.selfHosted = this.platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.name = await this.tokenService.getName();\n this.email = await this.tokenService.getEmail();\n if (this.name == null || this.name.trim() === '') {\n this.name = this.email;\n }\n }\n\n lock() {\n this.messagingService.send('lockVault');\n }\n\n logOut() {\n this.messagingService.send('logout');\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\n@Component({\n selector: 'app-footer',\n templateUrl: 'footer.component.html',\n})\nexport class FooterComponent implements OnInit {\n version: string;\n year: string = '2015';\n\n constructor(private platformUtilsService: PlatformUtilsService) { }\n\n ngOnInit() {\n this.year = new Date().getFullYear().toString();\n this.version = this.platformUtilsService.getApplicationVersion();\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-user-layout',\r\n templateUrl: 'user-layout.component.html',\r\n})\r\nexport class UserLayoutComponent implements OnInit {\r\n ngOnInit() {\r\n document.body.classList.remove('layout_frontend');\r\n }\r\n}\r\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { OrganizationsComponent } from '../settings/organizations.component';\nimport { UpdateKeyComponent } from '../settings/update-key.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { BulkDeleteComponent } from './bulk-delete.component';\nimport { BulkMoveComponent } from './bulk-move.component';\nimport { BulkShareComponent } from './bulk-share.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { FolderAddEditComponent } from './folder-add-edit.component';\nimport { GroupingsComponent } from './groupings.component';\nimport { ShareComponent } from './share.component';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nconst BroadcasterSubscriptionId = 'VaultComponent';\n\n@Component({\n selector: 'app-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild(OrganizationsComponent) organizationsComponent: OrganizationsComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('folderAddEdit', { read: ViewContainerRef }) folderAddEditModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('share', { read: ViewContainerRef }) shareModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('bulkDeleteTemplate', { read: ViewContainerRef }) bulkDeleteModalRef: ViewContainerRef;\n @ViewChild('bulkMoveTemplate', { read: ViewContainerRef }) bulkMoveModalRef: ViewContainerRef;\n @ViewChild('bulkShareTemplate', { read: ViewContainerRef }) bulkShareModalRef: ViewContainerRef;\n @ViewChild('updateKeyTemplate', { read: ViewContainerRef }) updateKeyModalRef: ViewContainerRef;\n\n favorites: boolean = false;\n type: CipherType = null;\n folderId: string = null;\n collectionId: string = null;\n showVerifyEmail = false;\n showBrowserOutdated = false;\n showUpdateKey = false;\n showPremiumCallout = false;\n\n private modal: ModalComponent = null;\n\n constructor(private syncService: SyncService, private route: ActivatedRoute,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private tokenService: TokenService, private cryptoService: CryptoService,\n private messagingService: MessagingService, private userService: UserService,\n private platformUtilsService: PlatformUtilsService, private toasterService: ToasterService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n async ngOnInit() {\n this.showVerifyEmail = !(await this.tokenService.getEmailVerified());\n this.showBrowserOutdated = window.navigator.userAgent.indexOf('MSIE') !== -1;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (params) => {\n await this.syncService.fullSync(false);\n\n this.showUpdateKey = !(await this.cryptoService.hasEncKey());\n const canAccessPremium = await this.userService.canAccessPremium();\n this.showPremiumCallout = !this.showVerifyEmail && !canAccessPremium &&\n !this.platformUtilsService.isSelfHost();\n\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n ]);\n\n if (params == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (params.favorites) {\n this.groupingsComponent.selectedFavorites = true;\n await this.filterFavorites();\n } else if (params.type) {\n const t = parseInt(params.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t);\n } else if (params.folderId) {\n this.groupingsComponent.selectedFolder = true;\n this.groupingsComponent.selectedFolderId = params.folderId;\n await this.filterFolder(params.folderId);\n } else if (params.collectionId) {\n this.groupingsComponent.selectedCollectionId = params.collectionId;\n await this.filterCollection(params.collectionId);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n this.ciphersComponent.load(this.ciphersComponent.filter),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n\n queryParamsSub.unsubscribe();\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async clearGroupingFilters() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchVault');\n await this.ciphersComponent.load();\n this.clearFilters();\n this.go();\n }\n\n async filterFavorites() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFavorites');\n await this.ciphersComponent.load((c) => c.favorite);\n this.clearFilters();\n this.favorites = true;\n this.go();\n }\n\n async filterCipherType(type: CipherType) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchType');\n await this.ciphersComponent.load((c) => c.type === type);\n this.clearFilters();\n this.type = type;\n this.go();\n }\n\n async filterFolder(folderId: string) {\n this.ciphersComponent.showAddNew = true;\n folderId = folderId === 'none' ? null : folderId;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFolder');\n await this.ciphersComponent.load((c) => c.folderId === folderId);\n this.clearFilters();\n this.folderId = folderId == null ? 'none' : folderId;\n this.go();\n }\n\n async filterCollection(collectionId: string) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchCollection');\n await this.ciphersComponent.load((c) => c.collectionIds != null && c.collectionIds.indexOf(collectionId) > -1);\n this.clearFilters();\n this.collectionId = collectionId;\n this.go();\n }\n\n filterSearchText(searchText: string) {\n this.ciphersComponent.searchText = searchText;\n this.ciphersComponent.search(200);\n }\n\n async editCipherAttachments(cipher: CipherView) {\n const canAccessPremium = await this.userService.canAccessPremium();\n if (cipher.organizationId == null && !canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n } else if (cipher.organizationId != null) {\n const org = await this.userService.getOrganization(cipher.organizationId);\n if (org != null && (org.maxStorageGb == null || org.maxStorageGb === 0)) {\n this.messagingService.send('upgradeOrganization', { organizationId: cipher.organizationId });\n return;\n }\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.attachmentsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AttachmentsComponent, this.attachmentsModalRef);\n\n childComponent.cipherId = cipher.id;\n let madeAttachmentChanges = false;\n childComponent.onUploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onDeletedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onReuploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n if (madeAttachmentChanges) {\n await this.ciphersComponent.refresh();\n }\n madeAttachmentChanges = false;\n });\n }\n\n shareCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.shareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(ShareComponent, this.shareModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSharedCipher.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n editCipherCollections(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.collectionsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(CollectionsComponent, this.collectionsModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSavedCollections.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n async addFolder() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = null;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n async editFolder(folderId: string) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = folderId;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n childComponent.onDeletedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n await this.filterFolder('none');\n this.groupingsComponent.selectedFolderId = null;\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n addCipher() {\n const component = this.editCipher(null);\n component.type = this.type;\n component.folderId = this.folderId === 'none' ? null : this.folderId;\n if (this.collectionId != null) {\n const collection = this.groupingsComponent.collections.filter((c) => c.id === this.collectionId);\n if (collection.length > 0) {\n component.organizationId = collection[0].organizationId;\n component.collectionIds = [this.collectionId];\n }\n }\n }\n\n editCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n AddEditComponent, this.cipherAddEditModalRef);\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n bulkDelete() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkDeleteModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkDeleteComponent, this.bulkDeleteModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onDeleted.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n bulkShare() {\n const selectedCiphers = this.ciphersComponent.getSelected();\n if (selectedCiphers.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkShareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkShareComponent, this.bulkShareModalRef);\n\n childComponent.ciphers = selectedCiphers;\n childComponent.onShared.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n bulkMove() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkMoveModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkMoveComponent, this.bulkMoveModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onMoved.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n selectAll(select: boolean) {\n this.ciphersComponent.selectAll(select);\n }\n\n updateKey() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.updateKeyModalRef.createComponent(factory).instance;\n this.modal.show(UpdateKeyComponent, this.updateKeyModalRef);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private clearFilters() {\n this.folderId = null;\n this.collectionId = null;\n this.favorites = false;\n this.type = null;\n }\n\n private go(queryParams: any = null) {\n if (queryParams == null) {\n queryParams = {\n favorites: this.favorites ? true : null,\n type: this.type,\n folderId: this.folderId,\n collectionId: this.collectionId,\n };\n }\n\n this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import { CipherRequest } from './cipherRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherWithIdRequest extends CipherRequest {\n id: string;\n\n constructor(cipher: Cipher) {\n super(cipher);\n this.id = cipher.id;\n }\n}\n","import { Folder } from '../domain/folder';\r\n\r\nexport class FolderRequest {\r\n name: string;\r\n\r\n constructor(folder: Folder) {\r\n this.name = folder.name ? folder.name.encryptedString : null;\r\n }\r\n}\r\n","export enum UriMatchType {\r\n Domain = 0,\r\n Host = 1,\r\n StartsWith = 2,\r\n Exact = 3,\r\n RegularExpression = 4,\r\n Never = 5,\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { AttachmentView } from 'jslib/models/view/attachmentView';\n\nimport { AttachmentsComponent as BaseAttachmentsComponent } from 'jslib/angular/components/attachments.component';\n\n@Component({\n selector: 'app-vault-attachments',\n templateUrl: 'attachments.component.html',\n})\nexport class AttachmentsComponent extends BaseAttachmentsComponent {\n constructor(cipherService: CipherService, i18nService: I18nService,\n cryptoService: CryptoService, userService: UserService,\n platformUtilsService: PlatformUtilsService) {\n super(cipherService, i18nService, cryptoService, userService, platformUtilsService, window);\n }\n\n protected async reupload(attachment: AttachmentView) {\n if (this.showFixOldAttachments(attachment)) {\n await this.reuploadCipherAttachment(attachment, false);\n }\n }\n\n protected showFixOldAttachments(attachment: AttachmentView) {\n return attachment.key == null && this.cipher.organizationId == null;\n }\n}\n","import {\n Component,\n OnDestroy,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { CollectionsComponent as BaseCollectionsComponent } from 'jslib/angular/components/collections.component';\n\n@Component({\n selector: 'app-vault-collections',\n templateUrl: 'collections.component.html',\n})\nexport class CollectionsComponent extends BaseCollectionsComponent implements OnDestroy {\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, cipherService: CipherService) {\n super(collectionService, platformUtilsService, i18nService, cipherService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n check(c: CollectionView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n this.collections.forEach((c) => this.check(c, select));\n }\n}\n","import {\r\n Component,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { TokenService } from 'jslib/abstractions/token.service';\r\n\r\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\r\n\r\nconst BroadcasterSubscriptionId = 'SettingsComponent';\r\n\r\n@Component({\r\n selector: 'app-settings',\r\n templateUrl: 'settings.component.html',\r\n})\r\nexport class SettingsComponent implements OnInit, OnDestroy {\r\n premium: boolean;\r\n\r\n constructor(private tokenService: TokenService, private broadcasterService: BroadcasterService,\r\n private ngZone: NgZone) { }\r\n\r\n async ngOnInit() {\r\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, async (message: any) => {\r\n this.ngZone.run(async () => {\r\n switch (message.command) {\r\n case 'purchasedPremium':\r\n await this.load();\r\n break;\r\n default:\r\n }\r\n });\r\n });\r\n\r\n await this.load();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\r\n }\r\n\r\n async load() {\r\n this.premium = await this.tokenService.getPremium();\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentFactoryResolver,\r\n ViewChild,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\n\r\nimport { ModalComponent } from '../modal.component';\r\nimport { DeauthorizeSessionsComponent } from './deauthorize-sessions.component';\r\nimport { DeleteAccountComponent } from './delete-account.component';\r\nimport { PurgeVaultComponent } from './purge-vault.component';\r\n\r\n@Component({\r\n selector: 'app-account',\r\n templateUrl: 'account.component.html',\r\n})\r\nexport class AccountComponent {\r\n @ViewChild('deauthorizeSessionsTemplate', { read: ViewContainerRef }) deauthModalRef: ViewContainerRef;\r\n @ViewChild('purgeVaultTemplate', { read: ViewContainerRef }) purgeModalRef: ViewContainerRef;\r\n @ViewChild('deleteAccountTemplate', { read: ViewContainerRef }) deleteModalRef: ViewContainerRef;\r\n\r\n private modal: ModalComponent = null;\r\n\r\n constructor(private componentFactoryResolver: ComponentFactoryResolver) { }\r\n\r\n deauthorizeSessions() {\r\n if (this.modal != null) {\r\n this.modal.close();\r\n }\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\r\n this.modal = this.deauthModalRef.createComponent(factory).instance;\r\n this.modal.show(DeauthorizeSessionsComponent, this.deauthModalRef);\r\n\r\n this.modal.onClosed.subscribe(async () => {\r\n this.modal = null;\r\n });\r\n }\r\n\r\n purgeVault() {\r\n if (this.modal != null) {\r\n this.modal.close();\r\n }\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\r\n this.modal = this.purgeModalRef.createComponent(factory).instance;\r\n this.modal.show(PurgeVaultComponent, this.purgeModalRef);\r\n\r\n this.modal.onClosed.subscribe(async () => {\r\n this.modal = null;\r\n });\r\n }\r\n\r\n deleteAccount() {\r\n if (this.modal != null) {\r\n this.modal.close();\r\n }\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\r\n this.modal = this.deleteModalRef.createComponent(factory).instance;\r\n this.modal.show(DeleteAccountComponent, this.deleteModalRef);\r\n\r\n this.modal.onClosed.subscribe(async () => {\r\n this.modal = null;\r\n });\r\n }\r\n}\r\n","import {\n Component,\n Input,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-purge-vault',\n templateUrl: 'purge-vault.component.html',\n})\nexport class PurgeVaultComponent {\n @Input() organizationId?: string = null;\n\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private router: Router) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.postPurgeCiphers(request, this.organizationId);\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.organizationId != null ? 'Purged Organization Vault' : 'Purged Vault',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('vaultPurged'));\n if (this.organizationId != null) {\n this.router.navigate(['organizations', this.organizationId, 'vault']);\n } else {\n this.router.navigate(['vault']);\n }\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-options',\n templateUrl: 'options.component.html',\n})\nexport class OptionsComponent implements OnInit {\n lockOption: number = null;\n disableIcons: boolean;\n enableGravatars: boolean;\n locale: string;\n lockOptions: any[];\n localeOptions: any[];\n\n private startingLocale: string;\n\n constructor(private storageService: StorageService, private stateService: StateService,\n private analytics: Angulartics2, private i18nService: I18nService,\n private toasterService: ToasterService, private lockService: LockService,\n private platformUtilsService: PlatformUtilsService) {\n this.lockOptions = [\n { name: i18nService.t('oneMinute'), value: 1 },\n { name: i18nService.t('fiveMinutes'), value: 5 },\n { name: i18nService.t('fifteenMinutes'), value: 15 },\n { name: i18nService.t('thirtyMinutes'), value: 30 },\n { name: i18nService.t('oneHour'), value: 60 },\n { name: i18nService.t('fourHours'), value: 240 },\n { name: i18nService.t('onRefresh'), value: -1 },\n ];\n if (this.platformUtilsService.isDev()) {\n this.lockOptions.push({ name: i18nService.t('never'), value: null });\n }\n\n const localeOptions: any[] = [];\n i18nService.supportedTranslationLocales.forEach((locale) => {\n localeOptions.push({ name: locale, value: locale });\n });\n localeOptions.sort(Utils.getSortFunction(i18nService, 'name'));\n localeOptions.splice(0, 0, { name: i18nService.t('default'), value: null });\n this.localeOptions = localeOptions;\n }\n\n async ngOnInit() {\n this.lockOption = await this.storageService.get(ConstantsService.lockOptionKey);\n this.disableIcons = await this.storageService.get(ConstantsService.disableFaviconKey);\n this.enableGravatars = await this.storageService.get('enableGravatars');\n this.locale = this.startingLocale = await this.storageService.get(ConstantsService.localeKey);\n }\n\n async submit() {\n await this.lockService.setLockOption(this.lockOption != null ? this.lockOption : null);\n await this.storageService.save(ConstantsService.disableFaviconKey, this.disableIcons);\n await this.stateService.save(ConstantsService.disableFaviconKey, this.disableIcons);\n await this.storageService.save('enableGravatars', this.enableGravatars);\n await this.stateService.save('enableGravatars', this.enableGravatars);\n await this.storageService.save(ConstantsService.localeKey, this.locale);\n this.analytics.eventTrack.next({ action: 'Saved Options' });\n if (this.locale !== this.startingLocale) {\n window.location.reload();\n } else {\n this.toasterService.popAsync('success', null, this.i18nService.t('optionsUpdated'));\n }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { UpdateDomainsRequest } from 'jslib/models/request/updateDomainsRequest';\n\n@Component({\n selector: 'app-domain-rules',\n templateUrl: 'domain-rules.component.html',\n})\nexport class DomainRulesComponent implements OnInit {\n loading = true;\n custom: string[] = [];\n global: any[] = [];\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const response = await this.apiService.getSettingsDomains();\n this.loading = false;\n if (response.equivalentDomains != null) {\n this.custom = response.equivalentDomains.map((d) => d.join(', '));\n }\n if (response.globalEquivalentDomains != null) {\n this.global = response.globalEquivalentDomains.map((d) => {\n return {\n domains: d.domains.join(', '),\n excluded: d.excluded,\n key: d.type,\n };\n });\n }\n }\n\n toggleExcluded(globalDomain: any) {\n globalDomain.excluded = !globalDomain.excluded;\n }\n\n customize(globalDomain: any) {\n globalDomain.excluded = true;\n this.custom.push(globalDomain.domains);\n }\n\n remove(index: number) {\n this.custom.splice(index, 1);\n }\n\n add() {\n this.custom.push('');\n }\n\n async submit() {\n const request = new UpdateDomainsRequest();\n request.excludedGlobalEquivalentDomains = this.global.filter((d) => d.excluded)\n .map((d) => d.key);\n if (request.excludedGlobalEquivalentDomains.length === 0) {\n request.excludedGlobalEquivalentDomains = null;\n }\n request.equivalentDomains = this.custom.filter((d) => d != null && d.trim() !== '')\n .map((d) => d.split(',').map((d2) => d2.trim()));\n if (request.equivalentDomains.length === 0) {\n request.equivalentDomains = null;\n }\n\n try {\n this.formPromise = this.apiService.putSettingsDomains(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Saved Equivalent Domains' });\n this.toasterService.popAsync('success', null, this.i18nService.t('domainsUpdated'));\n } catch { }\n }\n\n indexTrackBy(index: number, obj: any): any {\n return index;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { UpdateTwoFactorDuoRequest } from 'jslib/models/request/updateTwoFactorDuoRequest';\nimport { TwoFactorDuoResponse } from 'jslib/models/response/twoFactorDuoResponse';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-duo',\n templateUrl: 'two-factor-duo.component.html',\n})\nexport class TwoFactorDuoComponent extends TwoFactorBaseComponent {\n type = TwoFactorProviderType.Duo;\n ikey: string;\n skey: string;\n host: string;\n formPromise: Promise;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.enabled) {\n return super.disable(this.formPromise);\n } else {\n return this.enable();\n }\n }\n\n protected enable() {\n const request = new UpdateTwoFactorDuoRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.integrationKey = this.ikey;\n request.secretKey = this.skey;\n request.host = this.host;\n\n return super.enable(async () => {\n if (this.organizationId != null) {\n this.formPromise = this.apiService.putTwoFactorOrganizationDuo(this.organizationId, request);\n } else {\n this.formPromise = this.apiService.putTwoFactorDuo(request);\n }\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n private processResponse(response: TwoFactorDuoResponse) {\n this.ikey = response.integrationKey;\n this.skey = response.secretKey;\n this.host = response.host;\n this.enabled = response.enabled;\n }\n}\n","
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \"Visa,\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n\n
\n
\n {{'paypalClickSubmit' | i18n}}\n
\n
\n\n \n {{'verifyBankAccountInitialDesc' | i18n}} {{'verifyBankAccountFailureWarning' | i18n}}\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n","import {\n Component,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { PaymentComponent } from './payment.component';\n\n@Component({\n selector: 'app-premium',\n templateUrl: 'premium.component.html',\n})\nexport class PremiumComponent implements OnInit {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n canAccessPremium = false;\n selfHosted = false;\n premiumPrice = 10;\n storageGbPrice = 4;\n additionalStorage = 0;\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private tokenService: TokenService,\n private router: Router, private messagingService: MessagingService,\n private syncService: SyncService, private userService: UserService) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n const premium = await this.tokenService.getPremium();\n if (premium) {\n this.router.navigate(['/settings/billing']);\n return;\n }\n }\n\n async submit() {\n let files: FileList = null;\n if (this.selfHosted) {\n const fileEl = document.getElementById('file') as HTMLInputElement;\n files = fileEl.files;\n if (files == null || files.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n }\n\n try {\n if (this.selfHosted) {\n if (!this.tokenService.getEmailVerified()) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('verifyEmailFirst'));\n return;\n }\n\n const fd = new FormData();\n fd.append('license', files[0]);\n this.formPromise = this.apiService.postAccountLicense(fd).then(() => {\n return this.finalizePremium();\n });\n } else {\n this.formPromise = this.paymentComponent.createPaymentToken().then((token) => {\n const fd = new FormData();\n fd.append('paymentToken', token);\n fd.append('additionalStorageGb', (this.additionalStorage || 0).toString());\n return this.apiService.postPremium(fd);\n }).then(() => {\n return this.finalizePremium();\n });\n }\n await this.formPromise;\n } catch { }\n }\n\n async finalizePremium() {\n await this.apiService.refreshIdentityToken();\n await this.syncService.fullSync(true);\n this.analytics.eventTrack.next({ action: 'Signed Up Premium' });\n this.toasterService.popAsync('success', null, this.i18nService.t('premiumUpdated'));\n this.messagingService.send('purchasedPremium');\n this.router.navigate(['/settings/billing']);\n }\n\n get additionalStorageTotal(): number {\n return this.storageGbPrice * this.additionalStorage;\n }\n\n get total(): number {\n return this.additionalStorageTotal + this.premiumPrice;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-update-license',\n templateUrl: 'update-license.component.html',\n})\nexport class UpdateLicenseComponent {\n @Input() organizationId: string;\n @Output() onUpdated = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n const fileEl = document.getElementById('file') as HTMLInputElement;\n const files = fileEl.files;\n if (files == null || files.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n try {\n const fd = new FormData();\n fd.append('license', files[0]);\n\n if (this.organizationId == null) {\n this.formPromise = this.apiService.postAccountLicense(fd);\n } else {\n this.formPromise = this.apiService.postOrganizationLicenseUpdate(this.organizationId, fd);\n }\n\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Updated License' });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedLicense'));\n this.onUpdated.emit();\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { StorageRequest } from 'jslib/models/request/storageRequest';\n\n@Component({\n selector: 'app-adjust-storage',\n templateUrl: 'adjust-storage.component.html',\n})\nexport class AdjustStorageComponent {\n @Input() storageGbPrice = 0;\n @Input() add = true;\n @Input() organizationId: string;\n @Input() interval = 'year';\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n storageAdjustment = 0;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new StorageRequest();\n request.storageGbAdjustment = this.storageAdjustment;\n if (!this.add) {\n request.storageGbAdjustment *= -1;\n }\n\n if (this.organizationId == null) {\n this.formPromise = this.apiService.postAccountStorage(request);\n } else {\n this.formPromise = this.apiService.postOrganizationStorage(this.organizationId, request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.add ? 'Added Storage' : 'Removed Storage' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t('adjustedStorage', request.storageGbAdjustment.toString()));\n this.onAdjusted.emit(this.storageAdjustment);\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get adjustedStorageTotal(): number {\n return this.storageGbPrice * this.storageAdjustment;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PaymentRequest } from 'jslib/models/request/paymentRequest';\n\nimport { PaymentMethodType } from 'jslib/enums/paymentMethodType';\n\nimport { PaymentComponent } from './payment.component';\n\n@Component({\n selector: 'app-adjust-payment',\n templateUrl: 'adjust-payment.component.html',\n})\nexport class AdjustPaymentComponent {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n @Input() currentType?: PaymentMethodType;\n @Input() organizationId: string;\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n paymentMethodType = PaymentMethodType;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new PaymentRequest();\n this.formPromise = this.paymentComponent.createPaymentToken().then((token) => {\n request.paymentToken = token;\n if (this.organizationId == null) {\n return this.apiService.postAccountPayment(request);\n } else {\n return this.apiService.postOrganizationPayment(this.organizationId, request);\n }\n });\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.currentType == null ? 'Added Payment Method' : 'Changed Payment Method',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedPaymentMethod'));\n this.onAdjusted.emit();\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get canChange() {\n return this.currentType == null || this.currentType === PaymentMethodType.Card || this.organizationId != null;\n }\n}\n","export enum PaymentMethodType {\n Card = 0,\n BankAccount = 1,\n PayPal = 2,\n Bitcoin = 3,\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { BillingResponse } from 'jslib/models/response/billingResponse';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\nimport { PaymentMethodType } from 'jslib/enums/paymentMethodType';\n\n@Component({\n selector: 'app-user-billing',\n templateUrl: 'user-billing.component.html',\n})\nexport class UserBillingComponent implements OnInit {\n loading = false;\n firstLoaded = false;\n adjustStorageAdd = true;\n showAdjustStorage = false;\n showAdjustPayment = false;\n showUpdateLicense = false;\n billing: BillingResponse;\n paymentMethodType = PaymentMethodType;\n selfHosted = false;\n\n cancelPromise: Promise;\n reinstatePromise: Promise;\n\n constructor(private tokenService: TokenService, private apiService: ApiService,\n private platformUtilsService: PlatformUtilsService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private router: Router) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n await this.load();\n this.firstLoaded = true;\n }\n\n async load() {\n if (this.loading) {\n return;\n }\n\n if (this.tokenService.getPremium()) {\n this.loading = true;\n this.billing = await this.apiService.getUserBilling();\n } else {\n this.router.navigate(['/settings/premium']);\n return;\n }\n\n this.loading = false;\n }\n\n async reinstate() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('reinstateConfirmation'),\n this.i18nService.t('reinstateSubscription'), this.i18nService.t('yes'), this.i18nService.t('cancel'));\n if (!confirmed) {\n return;\n }\n\n try {\n this.reinstatePromise = this.apiService.postReinstatePremium();\n await this.reinstatePromise;\n this.analytics.eventTrack.next({ action: 'Reinstated Premium' });\n this.toasterService.popAsync('success', null, this.i18nService.t('reinstated'));\n this.load();\n } catch { }\n }\n\n async cancel() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('cancelConfirmation'),\n this.i18nService.t('cancelSubscription'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n this.cancelPromise = this.apiService.postCancelPremium();\n await this.cancelPromise;\n this.analytics.eventTrack.next({ action: 'Canceled Premium' });\n this.toasterService.popAsync('success', null, this.i18nService.t('canceledSubscription'));\n this.load();\n } catch { }\n }\n\n downloadLicense() {\n if (this.loading) {\n return;\n }\n\n const licenseString = JSON.stringify(this.billing.license, null, 2);\n this.platformUtilsService.saveFile(window, licenseString, null, 'bitwarden_premium_license.json');\n }\n\n updateLicense() {\n if (this.loading) {\n return;\n }\n this.showUpdateLicense = true;\n }\n\n closeUpdateLicense(load: boolean) {\n this.showUpdateLicense = false;\n if (load) {\n this.load();\n }\n }\n\n adjustStorage(add: boolean) {\n this.adjustStorageAdd = add;\n this.showAdjustStorage = true;\n }\n\n closeStorage(load: boolean) {\n this.showAdjustStorage = false;\n if (load) {\n this.load();\n }\n }\n\n changePayment() {\n this.showAdjustPayment = true;\n }\n\n closePayment(load: boolean) {\n this.showAdjustPayment = false;\n if (load) {\n this.load();\n }\n }\n\n get subscriptionMarkedForCancel() {\n return this.subscription != null && !this.subscription.cancelled && this.subscription.cancelAtEndDate;\n }\n\n get subscription() {\n return this.billing != null ? this.billing.subscription : null;\n }\n\n get nextInvoice() {\n return this.billing != null ? this.billing.upcomingInvoice : null;\n }\n\n get paymentSource() {\n return this.billing != null ? this.billing.paymentSource : null;\n }\n\n get charges() {\n return this.billing != null ? this.billing.charges : null;\n }\n\n get storagePercentage() {\n return this.billing != null && this.billing.maxStorageGb ?\n +(100 * (this.billing.storageGb / this.billing.maxStorageGb)).toFixed(2) : 0;\n }\n\n get storageProgressWidth() {\n return this.storagePercentage < 5 ? 5 : 0;\n }\n}\n","import {\n Component,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { PaymentComponent } from './payment.component';\n\nimport { PlanType } from 'jslib/enums/planType';\nimport { OrganizationCreateRequest } from 'jslib/models/request/organizationCreateRequest';\n\n@Component({\n selector: 'app-create-organization',\n templateUrl: 'create-organization.component.html',\n})\nexport class CreateOrganizationComponent implements OnInit {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n selfHosted = false;\n ownedBusiness = false;\n premiumAccessAddon = false;\n storageGbPriceMonthly = 0.33;\n additionalStorage = 0;\n additionalSeats = 0;\n plan = 'free';\n interval = 'year';\n name: string;\n billingEmail: string;\n businessName: string;\n\n storageGb: any = {\n price: 0.33,\n monthlyPrice: 0.50,\n yearlyPrice: 4,\n };\n\n plans: any = {\n free: {\n basePrice: 0,\n noAdditionalSeats: true,\n noPayment: true,\n },\n families: {\n basePrice: 1,\n annualBasePrice: 12,\n baseSeats: 5,\n noAdditionalSeats: true,\n annualPlanType: PlanType.FamiliesAnnually,\n canBuyPremiumAccessAddon: true,\n },\n teams: {\n basePrice: 5,\n annualBasePrice: 60,\n monthlyBasePrice: 8,\n baseSeats: 5,\n seatPrice: 2,\n annualSeatPrice: 24,\n monthlySeatPrice: 2.5,\n monthPlanType: PlanType.TeamsMonthly,\n annualPlanType: PlanType.TeamsAnnually,\n },\n enterprise: {\n seatPrice: 3,\n annualSeatPrice: 36,\n monthlySeatPrice: 4,\n monthPlanType: PlanType.EnterpriseMonthly,\n annualPlanType: PlanType.EnterpriseAnnually,\n },\n };\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private router: Router, private syncService: SyncService,\n private route: ActivatedRoute) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.plan === 'families' || qParams.plan === 'teams' || qParams.plan === 'enterprise') {\n this.plan = qParams.plan;\n }\n queryParamsSub.unsubscribe();\n });\n }\n\n async submit() {\n let files: FileList = null;\n if (this.selfHosted) {\n const fileEl = document.getElementById('file') as HTMLInputElement;\n files = fileEl.files;\n if (files == null || files.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n }\n\n let key: string = null;\n let collectionCt: string = null;\n\n try {\n this.formPromise = this.cryptoService.makeShareKey().then((shareKey) => {\n key = shareKey[0].encryptedString;\n return this.cryptoService.encrypt(this.i18nService.t('defaultCollection'), shareKey[1]);\n }).then((collection) => {\n collectionCt = collection.encryptedString;\n if (this.selfHosted || this.plan === 'free') {\n return null;\n } else {\n return this.paymentComponent.createPaymentToken();\n }\n }).then((token: string) => {\n if (this.selfHosted) {\n const fd = new FormData();\n fd.append('license', files[0]);\n fd.append('key', key);\n fd.append('collectionName', collectionCt);\n return this.apiService.postOrganizationLicense(fd);\n } else {\n const request = new OrganizationCreateRequest();\n request.key = key;\n request.collectionName = collectionCt;\n request.name = this.name;\n request.billingEmail = this.billingEmail;\n\n if (this.plan === 'free') {\n request.planType = PlanType.Free;\n } else {\n request.paymentToken = token;\n request.businessName = this.ownedBusiness ? this.businessName : null;\n request.additionalSeats = this.additionalSeats;\n request.additionalStorageGb = this.additionalStorage;\n request.premiumAccessAddon = this.plans[this.plan].canBuyPremiumAccessAddon &&\n this.premiumAccessAddon;\n request.country = this.paymentComponent.getCountry();\n if (this.interval === 'month') {\n request.planType = this.plans[this.plan].monthPlanType;\n } else {\n request.planType = this.plans[this.plan].annualPlanType;\n }\n }\n return this.apiService.postOrganization(request);\n }\n }).then((response) => {\n return this.finalize(response.id);\n });\n await this.formPromise;\n } catch { }\n }\n\n async finalize(orgId: string) {\n await this.apiService.refreshIdentityToken();\n await this.syncService.fullSync(true);\n this.analytics.eventTrack.next({ action: 'Created Organization' });\n this.toasterService.popAsync('success', this.i18nService.t('organizationCreated'),\n this.i18nService.t('organizationReadyToGo'));\n this.router.navigate(['/organizations/' + orgId]);\n }\n\n changedPlan() {\n if (!this.plans[this.plan].canBuyPremiumAccessAddon) {\n this.premiumAccessAddon = false;\n }\n\n if (this.plans[this.plan].monthPlanType == null) {\n this.interval = 'year';\n }\n\n if (this.plans[this.plan].noAdditionalSeats) {\n this.additionalSeats = 0;\n } else if (!this.additionalSeats && !this.plans[this.plan].baseSeats &&\n !this.plans[this.plan].noAdditionalSeats) {\n this.additionalSeats = 1;\n }\n }\n\n changedOwnedBusiness() {\n if (!this.ownedBusiness || this.plan === 'teams' || this.plan === 'enterprise') {\n return;\n }\n this.plan = 'teams';\n }\n\n additionalStorageTotal(annual: boolean): number {\n if (annual) {\n return (this.additionalStorage || 0) * this.storageGb.yearlyPrice;\n } else {\n return (this.additionalStorage || 0) * this.storageGb.monthlyPrice;\n }\n }\n\n seatTotal(annual: boolean): number {\n if (this.plans[this.plan].noAdditionalSeats) {\n return 0;\n }\n\n if (annual) {\n return this.plans[this.plan].annualSeatPrice * (this.additionalSeats || 0);\n } else {\n return this.plans[this.plan].monthlySeatPrice * (this.additionalSeats || 0);\n }\n }\n\n baseTotal(annual: boolean): number {\n if (annual) {\n return (this.plans[this.plan].annualBasePrice || 0);\n } else {\n return (this.plans[this.plan].monthlyBasePrice || 0);\n }\n }\n\n premiumAccessTotal(annual: boolean): number {\n if (this.plans[this.plan].canBuyPremiumAccessAddon && this.premiumAccessAddon) {\n if (annual) {\n return 40;\n }\n }\n return 0;\n }\n\n get total(): number {\n const annual = this.interval === 'year';\n return this.baseTotal(annual) + this.seatTotal(annual) + this.additionalStorageTotal(annual) +\n this.premiumAccessTotal(annual);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent implements OnInit {\n canAccessPremium = false;\n\n constructor(private userService: UserService, private messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n PasswordGeneratorComponent as BasePasswordGeneratorComponent,\n} from 'jslib/angular/components/password-generator.component';\n\nimport { ModalComponent } from '../modal.component';\nimport { PasswordGeneratorHistoryComponent } from './password-generator-history.component';\n\n@Component({\n selector: 'app-password-generator',\n templateUrl: 'password-generator.component.html',\n})\nexport class PasswordGeneratorComponent extends BasePasswordGeneratorComponent {\n @ViewChild('historyTemplate', { read: ViewContainerRef }) historyModalRef: ViewContainerRef;\n\n private modal: ModalComponent = null;\n\n constructor(passwordGenerationService: PasswordGenerationService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(passwordGenerationService, platformUtilsService, i18nService, window);\n }\n\n history() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.historyModalRef.createComponent(factory).instance;\n this.modal.show(PasswordGeneratorHistoryComponent, this.historyModalRef);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { AuditService } from 'jslib/abstractions/audit.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\nimport { BreachAccountResponse } from 'jslib/models/response/breachAccountResponse';\r\n\r\n@Component({\r\n selector: 'app-breach-report',\r\n templateUrl: 'breach-report.component.html',\r\n})\r\nexport class BreachReportComponent implements OnInit {\r\n error = false;\r\n username: string;\r\n checkedUsername: string;\r\n breachedAccounts: BreachAccountResponse[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private auditService: AuditService, private userService: UserService) { }\r\n\r\n async ngOnInit() {\r\n this.username = await this.userService.getEmail();\r\n }\r\n\r\n async submit() {\r\n this.error = false;\r\n this.username = this.username.toLowerCase();\r\n try {\r\n this.formPromise = this.auditService.breachedAccounts(this.username);\r\n this.breachedAccounts = await this.formPromise;\r\n } catch {\r\n this.error = true;\r\n }\r\n this.checkedUsername = this.username;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCreateRequest } from 'jslib/models/request/cipherCreateRequest';\nimport { CipherRequest } from 'jslib/models/request/cipherRequest';\n\nimport { AddEditComponent as BaseAddEditComponent } from '../../vault/add-edit.component';\n\n@Component({\n selector: 'app-org-vault-add-edit',\n templateUrl: '../../vault/add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n organization: Organization;\n originalCipher: Cipher = null;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n totpService: TotpService, passwordGenerationService: PasswordGenerationService,\n private apiService: ApiService,\n messagingService: MessagingService) {\n super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,\n userService, collectionService, totpService, passwordGenerationService, messagingService);\n }\n\n protected loadCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCollections();\n }\n return Promise.resolve(this.collections);\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n const data = new CipherData(response);\n this.originalCipher = new Cipher(data);\n return new Cipher(data);\n }\n\n protected encryptCipher() {\n if (!this.organization.isAdmin) {\n return super.encryptCipher();\n }\n return this.cipherService.encrypt(this.cipher, null, this.originalCipher);\n }\n\n protected async saveCipher(cipher: Cipher) {\n if (!this.organization.isAdmin) {\n return super.saveCipher(cipher);\n }\n if (this.editMode) {\n const request = new CipherRequest(cipher);\n return this.apiService.putCipherAdmin(this.cipherId, request);\n } else {\n const request = new CipherCreateRequest(cipher);\n return this.apiService.postCipherAdmin(request);\n }\n }\n\n protected async deleteCipher() {\n if (!this.organization.isAdmin) {\n return super.deleteCipher();\n }\n return this.apiService.deleteCipherAdmin(this.cipherId);\n }\n}\n","export enum EncryptionType {\r\n AesCbc256_B64 = 0,\r\n AesCbc128_HmacSha256_B64 = 1,\r\n AesCbc256_HmacSha256_B64 = 2,\r\n Rsa2048_OaepSha256_B64 = 3,\r\n Rsa2048_OaepSha1_B64 = 4,\r\n Rsa2048_OaepSha256_HmacSha256_B64 = 5,\r\n Rsa2048_OaepSha1_HmacSha256_B64 = 6,\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { Organization } from 'jslib/models/domain/organization';\r\n\r\n@Component({\r\n selector: 'app-organization-layout',\r\n templateUrl: 'organization-layout.component.html',\r\n})\r\nexport class OrganizationLayoutComponent implements OnInit {\r\n organization: Organization;\r\n\r\n private organizationId: string;\r\n\r\n constructor(private route: ActivatedRoute, private userService: UserService) { }\r\n\r\n ngOnInit() {\r\n document.body.classList.remove('layout_frontend');\r\n this.route.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n await this.load();\r\n });\r\n }\r\n\r\n async load() {\r\n this.organization = await this.userService.getOrganization(this.organizationId);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from '../../vault/groupings.component';\n\n@Component({\n selector: 'app-org-vault-groupings',\n templateUrl: '../../vault/groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService,\n private apiService: ApiService, private i18nService: I18nService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n async loadCollections() {\n if (!this.organization.isAdmin) {\n await super.loadCollections(this.organization.id);\n return;\n }\n\n const collections = await this.apiService.getCollections(this.organization.id);\n if (collections != null && collections.data != null && collections.data.length) {\n const collectionDomains = collections.data.map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collectionDomains);\n } else {\n this.collections = [];\n }\n\n const unassignedCollection = new CollectionView();\n unassignedCollection.name = this.i18nService.t('unassigned');\n unassignedCollection.id = 'unassigned';\n unassignedCollection.organizationId = this.organization.id;\n unassignedCollection.readOnly = true;\n this.collections.push(unassignedCollection);\n this.nestedCollections = await this.collectionService.getAllNested(this.collections);\n }\n\n collapse(grouping: CollectionView) {\n super.collapse(grouping, 'org_');\n }\n\n isCollapsed(grouping: CollectionView) {\n return super.isCollapsed(grouping, 'org_');\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CiphersComponent as BaseCiphersComponent } from '../../vault/ciphers.component';\n\n@Component({\n selector: 'app-org-vault-ciphers',\n templateUrl: '../../vault/ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent {\n @Output() onEventsClicked = new EventEmitter();\n\n organization: Organization;\n accessEvents = false;\n\n protected allCiphers: CipherView[] = [];\n\n constructor(searchService: SearchService, analytics: Angulartics2,\n toasterService: ToasterService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, cipherService: CipherService,\n private apiService: ApiService) {\n super(searchService, analytics, toasterService, i18nService, platformUtilsService, cipherService);\n }\n\n async load(filter: (cipher: CipherView) => boolean = null) {\n if (!this.organization.isAdmin) {\n await super.load(filter);\n return;\n }\n this.accessEvents = this.organization.useEvents;\n this.allCiphers = await this.cipherService.getAllFromApiForOrganization(this.organization.id);\n this.applyFilter(filter);\n this.loaded = true;\n }\n\n async applyFilter(filter: (cipher: CipherView) => boolean = null) {\n if (this.organization.isAdmin) {\n await super.applyFilter(filter);\n } else {\n const f = (c: CipherView) => c.organizationId === this.organization.id && (filter == null || filter(c));\n await super.applyFilter(f);\n }\n }\n\n search(timeout: number = null) {\n if (!this.organization.isAdmin) {\n return super.search(timeout);\n }\n this.searchPending = false;\n let filteredCiphers = this.allCiphers;\n if (this.filter != null) {\n filteredCiphers = filteredCiphers.filter(this.filter);\n }\n if (this.searchText == null || this.searchText.trim().length < 2) {\n this.ciphers = filteredCiphers;\n } else {\n this.ciphers = this.searchService.searchCiphersBasic(filteredCiphers, this.searchText);\n }\n }\n\n checkCipher(c: CipherView) {\n // do nothing\n }\n\n events(c: CipherView) {\n this.onEventsClicked.emit(c);\n }\n\n protected deleteCipher(id: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipher(id);\n }\n return this.apiService.deleteCipherAdmin(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return this.organization.isAdmin && c.hasOldAttachments;\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { ModalComponent } from '../../modal.component';\n\nimport { EntityEventsComponent } from '../manage/entity-events.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { GroupingsComponent } from './groupings.component';\n\nconst BroadcasterSubscriptionId = 'OrgVaultComponent';\n\n@Component({\n selector: 'app-org-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n\n organization: Organization;\n collectionId: string;\n type: CipherType;\n\n private modal: ModalComponent = null;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private syncService: SyncService, private i18nService: I18nService,\n private componentFactoryResolver: ComponentFactoryResolver, private messagingService: MessagingService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.groupingsComponent.organization = this.organization;\n this.ciphersComponent.organization = this.organization;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.ciphersComponent.searchText = this.groupingsComponent.searchText = qParams.search;\n if (!this.organization.isAdmin) {\n await this.syncService.fullSync(false);\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.ciphersComponent.refresh(),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n }\n await this.groupingsComponent.load();\n\n if (qParams == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (qParams.type) {\n const t = parseInt(qParams.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t, true);\n } else if (qParams.collectionId) {\n this.groupingsComponent.selectedCollectionId = qParams.collectionId;\n await this.filterCollection(qParams.collectionId, true);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n if (qParams.viewEvents != null) {\n const cipher = this.ciphersComponent.ciphers.filter((c) => c.id === qParams.viewEvents);\n if (cipher.length > 0) {\n this.viewEvents(cipher[0]);\n }\n }\n\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async clearGroupingFilters() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchVault');\n await this.ciphersComponent.applyFilter();\n this.clearFilters();\n this.go();\n }\n\n async filterCipherType(type: CipherType, load = false) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchType');\n const filter = (c: CipherView) => c.type === type;\n if (load) {\n await this.ciphersComponent.load(filter);\n } else {\n await this.ciphersComponent.applyFilter(filter);\n }\n this.clearFilters();\n this.type = type;\n this.go();\n }\n\n async filterCollection(collectionId: string, load = false) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchCollection');\n const filter = (c: CipherView) => {\n if (collectionId === 'unassigned') {\n return c.collectionIds == null || c.collectionIds.length === 0;\n } else {\n return c.collectionIds != null && c.collectionIds.indexOf(collectionId) > -1;\n }\n };\n if (load) {\n await this.ciphersComponent.load(filter);\n } else {\n await this.ciphersComponent.applyFilter(filter);\n }\n this.clearFilters();\n this.collectionId = collectionId;\n this.go();\n }\n\n filterSearchText(searchText: string) {\n this.ciphersComponent.searchText = searchText;\n this.ciphersComponent.search(200);\n }\n\n editCipherAttachments(cipher: CipherView) {\n if (this.organization.maxStorageGb == null || this.organization.maxStorageGb === 0) {\n this.messagingService.send('upgradeOrganization', { organizationId: cipher.organizationId });\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.attachmentsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AttachmentsComponent, this.attachmentsModalRef);\n\n childComponent.organization = this.organization;\n childComponent.cipherId = cipher.id;\n let madeAttachmentChanges = false;\n childComponent.onUploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onDeletedAttachment.subscribe(() => madeAttachmentChanges = true);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n if (madeAttachmentChanges) {\n await this.ciphersComponent.refresh();\n }\n madeAttachmentChanges = false;\n });\n }\n\n editCipherCollections(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.collectionsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(CollectionsComponent, this.collectionsModalRef);\n\n if (this.organization.isAdmin) {\n childComponent.collectionIds = cipher.collectionIds;\n childComponent.collections = this.groupingsComponent.collections.filter((c) => !c.readOnly);\n }\n childComponent.organization = this.organization;\n childComponent.cipherId = cipher.id;\n childComponent.onSavedCollections.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n addCipher() {\n const component = this.editCipher(null);\n component.organizationId = this.organization.id;\n component.type = this.type;\n if (this.organization.isAdmin) {\n component.collections = this.groupingsComponent.collections.filter((c) => !c.readOnly);\n }\n if (this.collectionId != null) {\n component.collectionIds = [this.collectionId];\n }\n }\n\n editCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AddEditComponent, this.cipherAddEditModalRef);\n\n childComponent.organization = this.organization;\n childComponent.cipherId = cipher == null ? null : cipher.id;\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n async viewEvents(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.eventsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityEventsComponent, this.eventsModalRef);\n\n childComponent.name = cipher.name;\n childComponent.organizationId = this.organization.id;\n childComponent.entityId = cipher.id;\n childComponent.showUser = true;\n childComponent.entity = 'cipher';\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private clearFilters() {\n this.collectionId = null;\n this.type = null;\n }\n\n private go(queryParams: any = null) {\n if (queryParams == null) {\n queryParams = {\n type: this.type,\n collectionId: this.collectionId,\n };\n }\n\n this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { EventService } from '../../services/event.service';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\n\n@Component({\n selector: 'app-entity-events',\n templateUrl: 'entity-events.component.html',\n})\nexport class EntityEventsComponent implements OnInit {\n @Input() name: string;\n @Input() entity: 'user' | 'cipher';\n @Input() entityId: string;\n @Input() organizationId: string;\n @Input() showUser = false;\n\n loading = true;\n loaded = false;\n events: any[];\n start: string;\n end: string;\n continuationToken: string;\n refreshPromise: Promise;\n morePromise: Promise;\n\n private orgUsersUserIdMap = new Map();\n private orgUsersIdMap = new Map();\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private eventService: EventService, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const defaultDates = this.eventService.getDefaultDateFilters();\n this.start = defaultDates[0];\n this.end = defaultDates[1];\n await this.load();\n }\n\n async load() {\n if (this.showUser) {\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\n response.data.forEach((u) => {\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\n });\n }\n await this.loadEvents(true);\n this.loaded = true;\n }\n\n async loadEvents(clearExisting: boolean) {\n if (this.refreshPromise != null || this.morePromise != null) {\n return;\n }\n\n let dates: string[] = null;\n try {\n dates = this.eventService.formatDateFilters(this.start, this.end);\n } catch (e) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidDateRange'));\n return;\n }\n\n this.loading = true;\n let response: ListResponse;\n try {\n let promise: Promise;\n if (this.entity === 'user') {\n promise = this.apiService.getEventsOrganizationUser(this.organizationId, this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n } else {\n promise = this.apiService.getEventsCipher(this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n }\n if (clearExisting) {\n this.refreshPromise = promise;\n } else {\n this.morePromise = promise;\n }\n response = await promise;\n } catch { }\n\n this.continuationToken = response.continuationToken;\n const events = response.data.map((r) => {\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\n const eventInfo = this.eventService.getEventInfo(r);\n const user = this.showUser && userId != null && this.orgUsersUserIdMap.has(userId) ?\n this.orgUsersUserIdMap.get(userId) : null;\n return {\n message: eventInfo.message,\n appIcon: eventInfo.appIcon,\n appName: eventInfo.appName,\n userId: userId,\n userName: user != null ? user.name : this.showUser ? this.i18nService.t('unknown') : null,\n userEmail: user != null ? user.email : this.showUser ? '' : null,\n date: r.date,\n ip: r.ipAddress,\n type: r.type,\n };\n });\n\n if (!clearExisting && this.events != null && this.events.length > 0) {\n this.events = this.events.concat(events);\n } else {\n this.events = events;\n }\n\n this.loading = false;\n this.morePromise = null;\n this.refreshPromise = null;\n }\n}\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-org-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent {\n organization: Organization;\n accessReports = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private messagingService: MessagingService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n this.accessReports = this.organization.useTotp;\n });\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n }\n}\n","import { Component } from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { ImportService } from 'jslib/abstractions/import.service';\r\n\r\nimport { ImportComponent as BaseImportComponent } from '../../tools/import.component';\r\n\r\n@Component({\r\n selector: 'app-org-import',\r\n templateUrl: '../../tools/import.component.html',\r\n})\r\nexport class ImportComponent extends BaseImportComponent {\r\n constructor(i18nService: I18nService, analytics: Angulartics2,\r\n toasterService: ToasterService, importService: ImportService,\r\n router: Router, private route: ActivatedRoute) {\r\n super(i18nService, analytics, toasterService, importService, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n this.successNavigate = ['organizations', this.organizationId, 'vault'];\r\n super.ngOnInit();\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from '../../tools/export.component';\n\n@Component({\n selector: 'app-org-export',\n templateUrl: '../../tools/export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n organizationId: string;\n\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService,\n private route: ActivatedRoute) {\n super(cryptoService, i18nService, platformUtilsService, exportService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n });\n }\n\n getExportData() {\n return this.exportService.getOrganizationExport(this.organizationId, this.format);\n }\n\n getFileName() {\n return super.getFileName('org');\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent,\n} from '../../tools/exposed-passwords-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: '../../tools/exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends BaseExposedPasswordsReportComponent {\n constructor(cipherService: CipherService, auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, auditService, componentFactoryResolver, messagingService, userService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n InactiveTwoFactorReportComponent as BaseInactiveTwoFactorReportComponent,\n} from '../../tools/inactive-two-factor-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: '../../tools/inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends BaseInactiveTwoFactorReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n ReusedPasswordsReportComponent as BaseReusedPasswordsReportComponent,\n} from '../../tools/reused-passwords-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: '../../tools/reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends BaseReusedPasswordsReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n UnsecuredWebsitesReportComponent as BaseUnsecuredWebsitesReportComponent,\n} from '../../tools/unsecured-websites-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: '../../tools/unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends BaseUnsecuredWebsitesReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n WeakPasswordsReportComponent as BaseWeakPasswordsReportComponent,\n} from '../../tools/weak-passwords-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: '../../tools/weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends BaseWeakPasswordsReportComponent {\n constructor(cipherService: CipherService, passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, passwordGenerationService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\n@Component({\n selector: 'app-org-manage',\n templateUrl: 'manage.component.html',\n})\nexport class ManageComponent implements OnInit {\n organization: Organization;\n accessGroups = false;\n accessEvents = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.accessEvents = this.organization.useEvents;\n this.accessGroups = this.organization.useGroups;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport {\n CollectionDetailsResponse,\n CollectionResponse,\n} from 'jslib/models/response/collectionResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { ModalComponent } from '../../modal.component';\nimport { CollectionAddEditComponent } from './collection-add-edit.component';\nimport { EntityUsersComponent } from './entity-users.component';\n\n@Component({\n selector: 'app-org-manage-collections',\n templateUrl: 'collections.component.html',\n})\nexport class CollectionsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n collections: CollectionView[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private collectionService: CollectionService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private platformUtilsService: PlatformUtilsService,\n private userService: UserService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n async load() {\n const organization = await this.userService.getOrganization(this.organizationId);\n let response: ListResponse;\n if (organization.isAdmin) {\n response = await this.apiService.getCollections(this.organizationId);\n } else {\n response = await this.apiService.getUserCollections();\n }\n const collections = response.data.filter((c) => c.organizationId === this.organizationId).map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collections);\n this.loading = false;\n }\n\n edit(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n CollectionAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.collectionId = collection != null ? collection.id : null;\n childComponent.onSavedCollection.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedCollection.subscribe(() => {\n this.modal.close();\n this.removeCollection(collection);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(collection: CollectionView) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), collection.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteCollection(this.organizationId, collection.id);\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', collection.name));\n this.removeCollection(collection);\n } catch { }\n }\n\n users(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'collection';\n childComponent.entityId = collection.id;\n childComponent.entityName = collection.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.load();\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeCollection(collection: CollectionView) {\n const index = this.collections.indexOf(collection);\n if (index > -1) {\n this.collections.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-entity-users',\n templateUrl: 'entity-users.component.html',\n})\nexport class EntityUsersComponent implements OnInit {\n @Input() entity: 'group' | 'collection';\n @Input() entityId: string;\n @Input() entityName: string;\n @Input() organizationId: string;\n @Output() onEditedUsers = new EventEmitter();\n\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n\n showSelected = false;\n loading = true;\n formPromise: Promise;\n selectedCount = 0;\n searchText: string;\n\n private allUsers: OrganizationUserUserDetailsResponse[] = [];\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n await this.loadUsers();\n this.loading = false;\n }\n\n get users() {\n if (this.showSelected) {\n return this.allUsers.filter((u) => (u as any).checked);\n } else {\n return this.allUsers;\n }\n }\n\n async loadUsers() {\n const users = await this.apiService.getOrganizationUsers(this.organizationId);\n this.allUsers = users.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'email'));\n if (this.entity === 'group') {\n const response = await this.apiService.getGroupUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => u.id === s);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n }\n });\n }\n } else if (this.entity === 'collection') {\n const response = await this.apiService.getCollectionUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => !u.accessAll && u.id === s.id);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n (user[0] as any).readOnly = s.readOnly;\n }\n });\n }\n }\n\n this.allUsers.forEach((u) => {\n if (this.entity === 'collection' && u.accessAll) {\n (u as any).checked = true;\n }\n if ((u as any).checked) {\n this.selectedCount++;\n }\n });\n }\n\n check(u: OrganizationUserUserDetailsResponse) {\n if (this.entity === 'collection' && u.accessAll) {\n return;\n }\n (u as any).checked = !(u as any).checked;\n this.selectedChanged(u);\n }\n\n selectedChanged(u: OrganizationUserUserDetailsResponse) {\n if ((u as any).checked) {\n this.selectedCount++;\n } else {\n if (this.entity === 'collection') {\n (u as any).readOnly = false;\n }\n this.selectedCount--;\n }\n }\n\n filterSelected(showSelected: boolean) {\n this.showSelected = showSelected;\n }\n\n async submit() {\n try {\n if (this.entity === 'group') {\n const selections = this.users.filter((u) => (u as any).checked).map((u) => u.id);\n this.formPromise = this.apiService.putGroupUsers(this.organizationId, this.entityId, selections);\n } else {\n const selections = this.users.filter((u) => (u as any).checked && !u.accessAll)\n .map((u) => new SelectionReadOnlyRequest(u.id, !!(u as any).readOnly));\n this.formPromise = this.apiService.putCollectionUsers(this.organizationId, this.entityId, selections);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.entity === 'group' ? 'Edited Group Users' : 'Edited Collection Users',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedUsers'));\n this.onEditedUsers.emit();\n } catch { }\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { EventService } from '../../services/event.service';\r\n\r\nimport { EventResponse } from 'jslib/models/response/eventResponse';\r\nimport { ListResponse } from 'jslib/models/response/listResponse';\r\n\r\n@Component({\r\n selector: 'app-org-events',\r\n templateUrl: 'events.component.html',\r\n})\r\nexport class EventsComponent implements OnInit {\r\n loading = true;\r\n loaded = false;\r\n organizationId: string;\r\n events: any[];\r\n start: string;\r\n end: string;\r\n continuationToken: string;\r\n refreshPromise: Promise;\r\n morePromise: Promise;\r\n\r\n private orgUsersUserIdMap = new Map();\r\n private orgUsersIdMap = new Map();\r\n\r\n constructor(private apiService: ApiService, private route: ActivatedRoute,\r\n private eventService: EventService, private i18nService: I18nService,\r\n private toasterService: ToasterService, private userService: UserService,\r\n private router: Router) { }\r\n\r\n async ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n const organization = await this.userService.getOrganization(this.organizationId);\r\n if (organization == null || !organization.useEvents) {\r\n this.router.navigate(['/organizations', this.organizationId]);\r\n return;\r\n }\r\n const defaultDates = this.eventService.getDefaultDateFilters();\r\n this.start = defaultDates[0];\r\n this.end = defaultDates[1];\r\n await this.load();\r\n });\r\n }\r\n\r\n async load() {\r\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\r\n response.data.forEach((u) => {\r\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\r\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\r\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\r\n });\r\n await this.loadEvents(true);\r\n this.loaded = true;\r\n }\r\n\r\n async loadEvents(clearExisting: boolean) {\r\n if (this.refreshPromise != null || this.morePromise != null) {\r\n return;\r\n }\r\n\r\n let dates: string[] = null;\r\n try {\r\n dates = this.eventService.formatDateFilters(this.start, this.end);\r\n } catch (e) {\r\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidDateRange'));\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n let response: ListResponse;\r\n try {\r\n const promise = this.apiService.getEventsOrganization(this.organizationId, dates[0], dates[1],\r\n clearExisting ? null : this.continuationToken);\r\n if (clearExisting) {\r\n this.refreshPromise = promise;\r\n } else {\r\n this.morePromise = promise;\r\n }\r\n response = await promise;\r\n } catch { }\r\n\r\n this.continuationToken = response.continuationToken;\r\n const events = response.data.map((r) => {\r\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\r\n const eventInfo = this.eventService.getEventInfo(r);\r\n const user = userId != null && this.orgUsersUserIdMap.has(userId) ?\r\n this.orgUsersUserIdMap.get(userId) : null;\r\n return {\r\n message: eventInfo.message,\r\n appIcon: eventInfo.appIcon,\r\n appName: eventInfo.appName,\r\n userId: userId,\r\n userName: user != null ? user.name : this.i18nService.t('unknown'),\r\n userEmail: user != null ? user.email : '',\r\n date: r.date,\r\n ip: r.ipAddress,\r\n type: r.type,\r\n };\r\n });\r\n\r\n if (!clearExisting && this.events != null && this.events.length > 0) {\r\n this.events = this.events.concat(events);\r\n } else {\r\n this.events = events;\r\n }\r\n\r\n this.loading = false;\r\n this.morePromise = null;\r\n this.refreshPromise = null;\r\n }\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityUsersComponent } from './entity-users.component';\nimport { GroupAddEditComponent } from './group-add-edit.component';\n\n@Component({\n selector: 'app-org-groups',\n templateUrl: 'groups.component.html',\n})\nexport class GroupsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n groups: GroupResponse[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private userService: UserService,\n private router: Router) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (organization == null || !organization.useGroups) {\n this.router.navigate(['/organizations', this.organizationId]);\n return;\n }\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n async load() {\n const response = await this.apiService.getGroups(this.organizationId);\n const groups = response.data != null && response.data.length > 0 ? response.data : [];\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n this.loading = false;\n }\n\n edit(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n GroupAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.groupId = group != null ? group.id : null;\n childComponent.onSavedGroup.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedGroup.subscribe(() => {\n this.modal.close();\n this.removeGroup(group);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(group: GroupResponse) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteGroupConfirmation'), group.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteGroup(this.organizationId, group.id);\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', group.name));\n this.removeGroup(group);\n } catch { }\n }\n\n users(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'group';\n childComponent.entityId = group.id;\n childComponent.entityName = group.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeGroup(group: GroupResponse) {\n const index = this.groups.indexOf(group);\n if (index > -1) {\n this.groups.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityEventsComponent } from './entity-events.component';\nimport { UserAddEditComponent } from './user-add-edit.component';\nimport { UserConfirmComponent } from './user-confirm.component';\nimport { UserGroupsComponent } from './user-groups.component';\n\n@Component({\n selector: 'app-org-people',\n templateUrl: 'people.component.html',\n})\nexport class PeopleComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('groupsTemplate', { read: ViewContainerRef }) groupsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n @ViewChild('confirmTemplate', { read: ViewContainerRef }) confirmModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n users: OrganizationUserUserDetailsResponse[];\n searchText: string;\n status: OrganizationUserStatusType = null;\n statusMap = new Map();\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n actionPromise: Promise;\n accessEvents = false;\n accessGroups = false;\n\n private modal: ModalComponent = null;\n private allUsers: OrganizationUserUserDetailsResponse[];\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private platformUtilsService: PlatformUtilsService, private analytics: Angulartics2,\n private toasterService: ToasterService, private cryptoService: CryptoService,\n private userService: UserService, private router: Router,\n private storageService: StorageService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (!organization.isAdmin) {\n this.router.navigate(['../collections'], { relativeTo: this.route });\n return;\n }\n this.accessEvents = organization.useEvents;\n this.accessGroups = organization.useGroups;\n await this.load();\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (qParams.viewEvents != null) {\n const user = this.users.filter((u) => u.id === qParams.viewEvents);\n if (user.length > 0 && user[0].status === OrganizationUserStatusType.Confirmed) {\n this.events(user[0]);\n }\n }\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n async load() {\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\n this.statusMap.clear();\n this.allUsers = response.data != null && response.data.length > 0 ? response.data : [];\n this.allUsers.sort(Utils.getSortFunction(this.i18nService, 'email'));\n this.allUsers.forEach((u) => {\n if (!this.statusMap.has(u.status)) {\n this.statusMap.set(u.status, [u]);\n } else {\n this.statusMap.get(u.status).push(u);\n }\n });\n this.filter(this.status);\n this.loading = false;\n }\n\n filter(status: OrganizationUserStatusType) {\n this.status = status;\n if (this.status != null) {\n this.users = this.statusMap.get(this.status);\n } else {\n this.users = this.allUsers;\n }\n }\n\n get invitedCount() {\n return this.statusMap.has(OrganizationUserStatusType.Invited) ?\n this.statusMap.get(OrganizationUserStatusType.Invited).length : 0;\n }\n\n get acceptedCount() {\n return this.statusMap.has(OrganizationUserStatusType.Accepted) ?\n this.statusMap.get(OrganizationUserStatusType.Accepted).length : 0;\n }\n\n get confirmedCount() {\n return this.statusMap.has(OrganizationUserStatusType.Confirmed) ?\n this.statusMap.get(OrganizationUserStatusType.Confirmed).length : 0;\n }\n\n get showConfirmUsers(): boolean {\n return this.allUsers != null && this.statusMap != null && this.allUsers.length > 1 &&\n this.confirmedCount > 0 && this.confirmedCount < 3 && this.acceptedCount > 0;\n }\n\n edit(user: OrganizationUserUserDetailsResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n UserAddEditComponent, this.addEditModalRef);\n\n childComponent.name = user != null ? user.name || user.email : null;\n childComponent.organizationId = this.organizationId;\n childComponent.organizationUserId = user != null ? user.id : null;\n childComponent.onSavedUser.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedUser.subscribe(() => {\n this.modal.close();\n this.removeUser(user);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n invite() {\n this.edit(null);\n }\n\n groups(user: OrganizationUserUserDetailsResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.groupsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n UserGroupsComponent, this.groupsModalRef);\n\n childComponent.name = user != null ? user.name || user.email : null;\n childComponent.organizationId = this.organizationId;\n childComponent.organizationUserId = user != null ? user.id : null;\n childComponent.onSavedUser.subscribe(() => {\n this.modal.close();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n async remove(user: OrganizationUserUserDetailsResponse) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('removeUserConfirmation'), user.name || user.email,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteOrganizationUser(this.organizationId, user.id);\n this.analytics.eventTrack.next({ action: 'Deleted User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('removedUserId', user.name || user.email));\n this.removeUser(user);\n } catch { }\n }\n\n async reinvite(user: OrganizationUserUserDetailsResponse) {\n if (this.actionPromise != null) {\n return;\n }\n this.actionPromise = this.apiService.postOrganizationUserReinvite(this.organizationId, user.id);\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Reinvited User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenReinvited', user.name || user.email));\n this.actionPromise = null;\n }\n\n async confirm(user: OrganizationUserUserDetailsResponse) {\n function updateUser(self: PeopleComponent) {\n user.status = OrganizationUserStatusType.Confirmed;\n const mapIndex = self.statusMap.get(OrganizationUserStatusType.Accepted).indexOf(user);\n if (mapIndex > -1) {\n self.statusMap.get(OrganizationUserStatusType.Accepted).splice(mapIndex, 1);\n self.statusMap.get(OrganizationUserStatusType.Confirmed).push(user);\n }\n }\n\n if (this.actionPromise != null) {\n return;\n }\n\n const autoConfirm = await this.storageService.get(ConstantsService.autoConfirmFingerprints);\n if (autoConfirm == null || !autoConfirm) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.groupsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n UserConfirmComponent, this.confirmModalRef);\n\n childComponent.name = user != null ? user.name || user.email : null;\n childComponent.organizationId = this.organizationId;\n childComponent.organizationUserId = user != null ? user.id : null;\n childComponent.userId = user != null ? user.userId : null;\n childComponent.onConfirmedUser.subscribe(() => {\n this.modal.close();\n updateUser(this);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n return;\n }\n\n this.actionPromise = this.doConfirmation(user);\n await this.actionPromise;\n updateUser(this);\n this.analytics.eventTrack.next({ action: 'Confirmed User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenConfirmed', user.name || user.email));\n this.actionPromise = null;\n }\n\n async events(user: OrganizationUserUserDetailsResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.eventsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityEventsComponent, this.eventsModalRef);\n\n childComponent.name = user.name || user.email;\n childComponent.organizationId = this.organizationId;\n childComponent.entityId = user.id;\n childComponent.showUser = false;\n childComponent.entity = 'user';\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private async doConfirmation(user: OrganizationUserUserDetailsResponse) {\n const orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n const publicKeyResponse = await this.apiService.getUserPublicKey(user.userId);\n const publicKey = Utils.fromB64ToArray(publicKeyResponse.publicKey);\n try {\n // tslint:disable-next-line\n console.log('User\\'s fingerprint: ' +\n (await this.cryptoService.getFingerprint(user.userId, publicKey.buffer)).join('-'));\n } catch { }\n const key = await this.cryptoService.rsaEncrypt(orgKey.key, publicKey.buffer);\n const request = new OrganizationUserConfirmRequest();\n request.key = key.encryptedString;\n await this.apiService.postOrganizationUserConfirm(this.organizationId, user.id, request);\n }\n\n private removeUser(user: OrganizationUserUserDetailsResponse) {\n let index = this.users.indexOf(user);\n if (index > -1) {\n this.users.splice(index, 1);\n }\n if (this.statusMap.has(OrganizationUserStatusType.Accepted)) {\n index = this.statusMap.get(OrganizationUserStatusType.Accepted).indexOf(user);\n if (index > -1) {\n this.statusMap.get(OrganizationUserStatusType.Accepted).splice(index, 1);\n }\n }\n if (this.statusMap.has(OrganizationUserStatusType.Invited)) {\n index = this.statusMap.get(OrganizationUserStatusType.Invited).indexOf(user);\n if (index > -1) {\n this.statusMap.get(OrganizationUserStatusType.Invited).splice(index, 1);\n }\n }\n if (this.statusMap.has(OrganizationUserStatusType.Confirmed)) {\n index = this.statusMap.get(OrganizationUserStatusType.Confirmed).indexOf(user);\n if (index > -1) {\n this.statusMap.get(OrganizationUserStatusType.Confirmed).splice(index, 1);\n }\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-org-settings',\n templateUrl: 'settings.component.html',\n})\nexport class SettingsComponent {\n access2fa = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n const organization = await this.userService.getOrganization(params.organizationId);\n this.access2fa = organization.use2fa;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { OrganizationUpdateRequest } from 'jslib/models/request/organizationUpdateRequest';\nimport { OrganizationResponse } from 'jslib/models/response/organizationResponse';\n\nimport { ModalComponent } from '../../modal.component';\nimport { PurgeVaultComponent } from '../../settings/purge-vault.component';\nimport { DeleteOrganizationComponent } from './delete-organization.component';\n\n@Component({\n selector: 'app-org-account',\n templateUrl: 'account.component.html',\n})\nexport class AccountComponent {\n @ViewChild('deleteOrganizationTemplate', { read: ViewContainerRef }) deleteModalRef: ViewContainerRef;\n @ViewChild('purgeOrganizationTemplate', { read: ViewContainerRef }) purgeModalRef: ViewContainerRef;\n\n loading = true;\n org: OrganizationResponse;\n formPromise: Promise;\n\n private organizationId: string;\n private modal: ModalComponent = null;\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver,\n private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private route: ActivatedRoute, private syncService: SyncService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n try {\n this.org = await this.apiService.getOrganization(this.organizationId);\n } catch { }\n });\n this.loading = false;\n }\n\n async submit() {\n try {\n const request = new OrganizationUpdateRequest();\n request.name = this.org.name;\n request.businessName = this.org.businessName;\n request.billingEmail = this.org.billingEmail;\n this.formPromise = this.apiService.putOrganization(this.organizationId, request).then(() => {\n return this.syncService.fullSync(true);\n });\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Updated Organization Settings' });\n this.toasterService.popAsync('success', null, this.i18nService.t('organizationUpdated'));\n } catch { }\n }\n\n deleteOrganization() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.deleteModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n DeleteOrganizationComponent, this.deleteModalRef);\n childComponent.organizationId = this.organizationId;\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n purgeVault() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.purgeModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(PurgeVaultComponent, this.purgeModalRef);\n childComponent.organizationId = this.organizationId;\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { TwoFactorDuoComponent } from '../../settings/two-factor-duo.component';\nimport { TwoFactorSetupComponent as BaseTwoFactorSetupComponent } from '../../settings/two-factor-setup.component';\n\n@Component({\n selector: 'app-two-factor-setup',\n templateUrl: '../../settings/two-factor-setup.component.html',\n})\nexport class TwoFactorSetupComponent extends BaseTwoFactorSetupComponent {\n constructor(apiService: ApiService, userService: UserService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n private route: ActivatedRoute) {\n super(apiService, userService, componentFactoryResolver, messagingService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await super.ngOnInit();\n });\n }\n\n manage(type: TwoFactorProviderType) {\n switch (type) {\n case TwoFactorProviderType.OrganizationDuo:\n const duoComp = this.openModal(this.duoModalRef, TwoFactorDuoComponent);\n duoComp.type = TwoFactorProviderType.OrganizationDuo;\n duoComp.organizationId = this.organizationId;\n duoComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.OrganizationDuo);\n });\n break;\n default:\n break;\n }\n }\n\n protected getTwoFactorProviders() {\n return this.apiService.getTwoFactorOrganizationProviders(this.organizationId);\n }\n\n protected filterProvider(type: TwoFactorProviderType) {\n return type !== TwoFactorProviderType.OrganizationDuo;\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { VerifyBankRequest } from 'jslib/models/request/verifyBankRequest';\n\nimport { BillingChargeResponse } from 'jslib/models/response/billingResponse';\nimport { OrganizationBillingResponse } from 'jslib/models/response/organizationBillingResponse';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\nimport { PaymentMethodType } from 'jslib/enums/paymentMethodType';\nimport { PlanType } from 'jslib/enums/planType';\n\n@Component({\n selector: 'app-org-billing',\n templateUrl: 'organization-billing.component.html',\n})\nexport class OrganizationBillingComponent implements OnInit {\n loading = false;\n firstLoaded = false;\n organizationId: string;\n adjustSeatsAdd = true;\n showAdjustSeats = false;\n adjustStorageAdd = true;\n showAdjustStorage = false;\n showAdjustPayment = false;\n showUpdateLicense = false;\n billing: OrganizationBillingResponse;\n paymentMethodType = PaymentMethodType;\n selfHosted = false;\n verifyAmount1: number;\n verifyAmount2: number;\n\n cancelPromise: Promise;\n reinstatePromise: Promise;\n licensePromise: Promise;\n verifyBankPromise: Promise;\n\n constructor(private tokenService: TokenService, private apiService: ApiService,\n private platformUtilsService: PlatformUtilsService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private route: ActivatedRoute) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n this.firstLoaded = true;\n });\n }\n\n async load() {\n if (this.loading) {\n return;\n }\n this.loading = true;\n this.billing = await this.apiService.getOrganizationBilling(this.organizationId);\n this.loading = false;\n }\n\n async reinstate() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('reinstateConfirmation'),\n this.i18nService.t('reinstateSubscription'), this.i18nService.t('yes'), this.i18nService.t('cancel'));\n if (!confirmed) {\n return;\n }\n\n try {\n this.reinstatePromise = this.apiService.postOrganizationReinstate(this.organizationId);\n await this.reinstatePromise;\n this.analytics.eventTrack.next({ action: 'Reinstated Plan' });\n this.toasterService.popAsync('success', null, this.i18nService.t('reinstated'));\n this.load();\n } catch { }\n }\n\n async cancel() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('cancelConfirmation'),\n this.i18nService.t('cancelSubscription'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n this.cancelPromise = this.apiService.postOrganizationCancel(this.organizationId);\n await this.cancelPromise;\n this.analytics.eventTrack.next({ action: 'Canceled Plan' });\n this.toasterService.popAsync('success', null, this.i18nService.t('canceledSubscription'));\n this.load();\n } catch { }\n }\n\n async changePlan() {\n const contactSupport = await this.platformUtilsService.showDialog(this.i18nService.t('changeBillingPlanDesc'),\n this.i18nService.t('changeBillingPlan'), this.i18nService.t('contactSupport'), this.i18nService.t('close'));\n if (contactSupport) {\n this.platformUtilsService.launchUri('https://bitwarden.com/contact');\n }\n }\n\n async downloadLicense() {\n if (this.loading) {\n return;\n }\n\n const installationId = window.prompt(this.i18nService.t('enterInstallationId'));\n if (installationId == null || installationId === '') {\n return;\n }\n\n try {\n this.licensePromise = this.apiService.getOrganizationLicense(this.organizationId, installationId);\n const license = await this.licensePromise;\n const licenseString = JSON.stringify(license, null, 2);\n this.platformUtilsService.saveFile(window, licenseString, null, 'bitwarden_organization_license.json');\n } catch { }\n }\n\n updateLicense() {\n if (this.loading) {\n return;\n }\n this.showUpdateLicense = true;\n }\n\n async verifyBank() {\n if (this.loading) {\n return;\n }\n\n try {\n const request = new VerifyBankRequest();\n request.amount1 = this.verifyAmount1;\n request.amount2 = this.verifyAmount2;\n this.verifyBankPromise = this.apiService.postOrganizationVerifyBank(this.organizationId, request);\n await this.verifyBankPromise;\n this.analytics.eventTrack.next({ action: 'Verified Bank Account' });\n this.toasterService.popAsync('success', null, this.i18nService.t('verifiedBankAccount'));\n this.load();\n } catch { }\n }\n\n closeUpdateLicense(load: boolean) {\n this.showUpdateLicense = false;\n if (load) {\n this.load();\n }\n }\n\n adjustSeats(add: boolean) {\n this.adjustSeatsAdd = add;\n this.showAdjustSeats = true;\n }\n\n closeSeats(load: boolean) {\n this.showAdjustSeats = false;\n if (load) {\n this.load();\n }\n }\n\n adjustStorage(add: boolean) {\n this.adjustStorageAdd = add;\n this.showAdjustStorage = true;\n }\n\n closeStorage(load: boolean) {\n this.showAdjustStorage = false;\n if (load) {\n this.load();\n }\n }\n\n changePayment() {\n this.showAdjustPayment = true;\n }\n\n closePayment(load: boolean) {\n this.showAdjustPayment = false;\n if (load) {\n this.load();\n }\n }\n\n async viewInvoice(charge: BillingChargeResponse) {\n const token = await this.tokenService.getToken();\n const url = this.apiService.apiBaseUrl + '/organizations/' + this.organizationId +\n '/billing-invoice/' + charge.invoiceId + '?access_token=' + token;\n this.platformUtilsService.launchUri(url);\n }\n\n get isExpired() {\n return this.billing != null && this.billing.expiration != null &&\n new Date(this.billing.expiration) < new Date();\n }\n\n get subscriptionMarkedForCancel() {\n return this.subscription != null && !this.subscription.cancelled && this.subscription.cancelAtEndDate;\n }\n\n get subscription() {\n return this.billing != null ? this.billing.subscription : null;\n }\n\n get nextInvoice() {\n return this.billing != null ? this.billing.upcomingInvoice : null;\n }\n\n get paymentSource() {\n return this.billing != null ? this.billing.paymentSource : null;\n }\n\n get charges() {\n return this.billing != null ? this.billing.charges : null;\n }\n\n get storagePercentage() {\n return this.billing != null && this.billing.maxStorageGb ?\n +(100 * (this.billing.storageGb / this.billing.maxStorageGb)).toFixed(2) : 0;\n }\n\n get storageProgressWidth() {\n return this.storagePercentage < 5 ? 5 : 0;\n }\n\n get billingInterval() {\n const monthly = this.billing.planType === PlanType.EnterpriseMonthly ||\n this.billing.planType === PlanType.TeamsMonthly;\n return monthly ? 'month' : 'year';\n }\n\n get storageGbPrice() {\n return this.billingInterval === 'month' ? 0.5 : 4;\n }\n\n get seatPrice() {\n switch (this.billing.planType) {\n case PlanType.EnterpriseMonthly:\n return 4;\n case PlanType.EnterpriseAnnually:\n return 36;\n case PlanType.TeamsMonthly:\n return 2.5;\n case PlanType.TeamsAnnually:\n return 24;\n default:\n return 0;\n }\n }\n\n get canAdjustSeats() {\n return this.billing.planType === PlanType.EnterpriseMonthly ||\n this.billing.planType === PlanType.EnterpriseAnnually ||\n this.billing.planType === PlanType.TeamsMonthly || this.billing.planType === PlanType.TeamsAnnually;\n }\n\n get canDownloadLicense() {\n return (this.billing.planType !== PlanType.Free && this.subscription == null) ||\n (this.subscription != null && !this.subscription.cancelled);\n }\n}\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 513;","import * as jq from 'jquery';\nimport * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport {\n BodyOutputType,\n Toast,\n ToasterConfig,\n ToasterContainerComponent,\n ToasterService,\n} from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n SecurityContext,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport {\n NavigationEnd,\n Router,\n} from '@angular/router';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { NotificationsService } from 'jslib/abstractions/notifications.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\nimport { SettingsService } from 'jslib/abstractions/settings.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { RouterService } from './services/router.service';\n\nconst BroadcasterSubscriptionId = 'AppComponent';\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\nconst IdleTimeout = 60000 * 10; // 10 minutes\n\n@Component({\n selector: 'app-root',\n templateUrl: 'app.component.html',\n})\nexport class AppComponent implements OnDestroy, OnInit {\n toasterConfig: ToasterConfig = new ToasterConfig({\n showCloseButton: true,\n mouseoverTimerStop: true,\n animation: 'flyRight',\n limit: 5,\n });\n\n private lastActivity: number = null;\n private idleTimer: number = null;\n private isIdle = false;\n\n constructor(private angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics,\n private broadcasterService: BroadcasterService, private userService: UserService,\n private tokenService: TokenService, private folderService: FolderService,\n private settingsService: SettingsService, private syncService: SyncService,\n private passwordGenerationService: PasswordGenerationService, private cipherService: CipherService,\n private authService: AuthService, private router: Router, private analytics: Angulartics2,\n private toasterService: ToasterService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private ngZone: NgZone,\n private lockService: LockService, private storageService: StorageService,\n private cryptoService: CryptoService, private collectionService: CollectionService,\n private sanitizer: DomSanitizer, private searchService: SearchService,\n private notificationsService: NotificationsService, private routerService: RouterService) { }\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n window.onmousemove = () => this.recordActivity();\n window.onmousedown = () => this.recordActivity();\n window.ontouchstart = () => this.recordActivity();\n window.onclick = () => this.recordActivity();\n window.onscroll = () => this.recordActivity();\n window.onkeypress = () => this.recordActivity();\n });\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, async (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'loggedIn':\n case 'loggedOut':\n case 'unlocked':\n this.notificationsService.updateConnection(false);\n break;\n case 'logout':\n this.logOut(!!message.expired);\n break;\n case 'lockVault':\n await this.lockService.lock();\n break;\n case 'locked':\n this.notificationsService.updateConnection(false);\n this.router.navigate(['lock']);\n break;\n case 'syncStarted':\n break;\n case 'syncCompleted':\n break;\n case 'upgradeOrganization':\n const upgradeConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('upgradeOrganizationDesc'), this.i18nService.t('upgradeOrganization'),\n this.i18nService.t('upgradeOrganization'), this.i18nService.t('cancel'));\n if (upgradeConfirmed) {\n this.router.navigate(['organizations', message.organizationId, 'settings', 'billing']);\n }\n break;\n case 'premiumRequired':\n const premiumConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('premiumRequiredDesc'), this.i18nService.t('premiumRequired'),\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'));\n if (premiumConfirmed) {\n this.router.navigate(['settings/premium']);\n }\n break;\n case 'showToast':\n this.showToast(message);\n break;\n case 'analyticsEventTrack':\n this.analytics.eventTrack.next({\n action: message.action,\n properties: { label: message.label },\n });\n break;\n default:\n break;\n }\n });\n });\n\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n const modals = Array.from(document.querySelectorAll('.modal'));\n for (const modal of modals) {\n (jq(modal) as any).modal('hide');\n }\n\n if (document.querySelector('.swal-modal') != null) {\n swal.close(undefined);\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n private async logOut(expired: boolean) {\n const userId = await this.userService.getUserId();\n\n await Promise.all([\n this.syncService.setLastSync(new Date(0)),\n this.tokenService.clearToken(),\n this.cryptoService.clearKeys(),\n this.userService.clear(),\n this.settingsService.clear(userId),\n this.cipherService.clear(userId),\n this.folderService.clear(userId),\n this.collectionService.clear(userId),\n this.passwordGenerationService.clear(),\n ]);\n\n this.searchService.clearIndex();\n this.authService.logOut(async () => {\n this.analytics.eventTrack.next({ action: 'Logged Out' });\n if (expired) {\n this.toasterService.popAsync('warning', this.i18nService.t('loggedOut'),\n this.i18nService.t('loginExpired'));\n }\n this.router.navigate(['/']);\n });\n }\n\n private async recordActivity() {\n const now = (new Date()).getTime();\n if (this.lastActivity != null && now - this.lastActivity < 250) {\n return;\n }\n\n this.lastActivity = now;\n this.storageService.save(ConstantsService.lastActiveKey, now);\n\n // Idle states\n if (this.isIdle) {\n this.isIdle = false;\n this.idleStateChanged();\n }\n if (this.idleTimer != null) {\n window.clearTimeout(this.idleTimer);\n this.idleTimer = null;\n }\n this.idleTimer = window.setTimeout(() => {\n if (!this.isIdle) {\n this.isIdle = true;\n this.idleStateChanged();\n }\n }, IdleTimeout);\n }\n\n private showToast(msg: any) {\n const toast: Toast = {\n type: msg.type,\n title: msg.title,\n };\n if (typeof (msg.text) === 'string') {\n toast.body = msg.text;\n } else if (msg.text.length === 1) {\n toast.body = msg.text[0];\n } else {\n let message = '';\n msg.text.forEach((t: string) =>\n message += ('

' + this.sanitizer.sanitize(SecurityContext.HTML, t) + '

'));\n toast.body = message;\n toast.bodyOutputType = BodyOutputType.TrustedHtml;\n }\n if (msg.options != null) {\n if (msg.options.trustedHtml === true) {\n toast.bodyOutputType = BodyOutputType.TrustedHtml;\n }\n if (msg.options.timeout != null && msg.options.timeout > 0) {\n toast.timeout = msg.options.timeout;\n }\n }\n this.toasterService.popAsync(toast);\n }\n\n private idleStateChanged() {\n if (this.isIdle) {\n this.notificationsService.disconnectFromInactivity();\n } else {\n this.notificationsService.reconnectFromActivity();\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n TwoFactorOptionsComponent as BaseTwoFactorOptionsComponent,\n} from 'jslib/angular/components/two-factor-options.component';\n\n@Component({\n selector: 'app-two-factor-options',\n templateUrl: 'two-factor-options.component.html',\n})\nexport class TwoFactorOptionsComponent extends BaseTwoFactorOptionsComponent {\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService) {\n super(authService, router, i18nService, platformUtilsService, window);\n }\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class TwoFactorEmailRequest extends PasswordVerificationRequest {\n email: string;\n\n constructor(email: string, masterPasswordHash: string) {\n super();\n this.masterPasswordHash = masterPasswordHash;\n this.email = email;\n }\n}\n","export class KeysRequest {\n publicKey: string;\n encryptedPrivateKey: string;\n\n constructor(publicKey: string, encryptedPrivateKey: string) {\n this.publicKey = publicKey;\n this.encryptedPrivateKey = encryptedPrivateKey;\n }\n}\n","
\n
\n \n {{text}}\n \n
\n
\n","\n","
\n
\n
\n © {{year}}, 8bit Solutions LLC\n
\n
\n
\n {{'versionNumber' | i18n : version}}\n
\n
\n
\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-verify-email',\n templateUrl: 'verify-email.component.html',\n})\nexport class VerifyEmailComponent {\n actionPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async send() {\n if (this.actionPromise != null) {\n return;\n }\n try {\n this.actionPromise = this.apiService.postAccountVerifyEmail();\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Sent Verification Email' });\n this.toasterService.popAsync('success', null, this.i18nService.t('checkInboxForVerification'));\n } catch { }\n this.actionPromise = null;\n }\n}\n","\n

\n \n

\n \n \n

{{'noOrganizationsList' | i18n}}

\n
\n \n \n {{'newOrganization' | i18n}}\n \n
\n\n
\n

\n {{'organizations' | i18n}}\n \n \n \n

\n \n \n {{'newOrganization' | i18n}}\n \n
\n \n \n \n

{{'noOrganizationsList' | i18n}}

\n \n \n {{'newOrganization' | i18n}}\n \n
\n \n \n \n \n \n \n \n \n
\n \n \n {{o.name}}\n \n \n
\n \n \n
\n
\n
\n
\n","import { Component } from '@angular/core';\n\nimport {\n Toast,\n ToasterService,\n} from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\n\nimport { CipherWithIdRequest } from 'jslib/models/request/cipherWithIdRequest';\nimport { FolderWithIdRequest } from 'jslib/models/request/folderWithIdRequest';\nimport { UpdateKeyRequest } from 'jslib/models/request/updateKeyRequest';\n\n@Component({\n selector: 'app-update-key',\n templateUrl: 'update-key.component.html',\n})\nexport class UpdateKeyComponent {\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService,\n private syncService: SyncService, private folderService: FolderService,\n private cipherService: CipherService) { }\n\n async submit() {\n const hasEncKey = await this.cryptoService.hasEncKey();\n if (hasEncKey) {\n return;\n }\n\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n try {\n this.formPromise = this.makeRequest().then((request) => {\n return this.apiService.postAccountKey(request);\n });\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Key Updated' });\n const toast: Toast = {\n type: 'success',\n title: this.i18nService.t('keyUpdated'),\n body: this.i18nService.t('logBackInOthersToo'),\n timeout: 15000,\n };\n this.toasterService.popAsync(toast);\n this.messagingService.send('logout');\n } catch { }\n }\n\n private async makeRequest(): Promise {\n const key = await this.cryptoService.getKey();\n const encKey = await this.cryptoService.makeEncKey(key);\n const privateKey = await this.cryptoService.getPrivateKey();\n let encPrivateKey: CipherString = null;\n if (privateKey != null) {\n encPrivateKey = await this.cryptoService.encrypt(privateKey, encKey[0]);\n }\n const request = new UpdateKeyRequest();\n request.privateKey = encPrivateKey != null ? encPrivateKey.encryptedString : null;\n request.key = encKey[1].encryptedString;\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n\n await this.syncService.fullSync(true);\n\n const folders = await this.folderService.getAllDecrypted();\n for (let i = 0; i < folders.length; i++) {\n if (folders[i].id == null) {\n continue;\n }\n const folder = await this.folderService.encrypt(folders[i], encKey[0]);\n request.folders.push(new FolderWithIdRequest(folder));\n }\n\n const ciphers = await this.cipherService.getAllDecrypted();\n for (let i = 0; i < ciphers.length; i++) {\n if (ciphers[i].organizationId != null) {\n continue;\n }\n const cipher = await this.cipherService.encrypt(ciphers[i], encKey[0]);\n request.ciphers.push(new CipherWithIdRequest(cipher));\n }\n\n return request;\n }\n}\n","import { FolderRequest } from './folderRequest';\n\nimport { Folder } from '../domain/folder';\n\nexport class FolderWithIdRequest extends FolderRequest {\n id: string;\n\n constructor(folder: Folder) {\n super(folder);\n this.id = folder.id;\n }\n}\n","import { CipherWithIdRequest } from './cipherWithIdRequest';\nimport { FolderWithIdRequest } from './folderWithIdRequest';\n\nexport class UpdateKeyRequest {\n ciphers: CipherWithIdRequest[] = [];\n folders: FolderWithIdRequest[] = [];\n masterPasswordHash: string;\n privateKey: string;\n key: string;\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { CipherService } from 'jslib/abstractions/cipher.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\n@Component({\r\n selector: 'app-vault-bulk-delete',\r\n templateUrl: 'bulk-delete.component.html',\r\n})\r\nexport class BulkDeleteComponent {\r\n @Input() cipherIds: string[] = [];\r\n @Output() onDeleted = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n\r\n constructor(private analytics: Angulartics2, private cipherService: CipherService,\r\n private toasterService: ToasterService, private i18nService: I18nService) { }\r\n\r\n async submit() {\r\n this.formPromise = this.cipherService.deleteManyWithServer(this.cipherIds);\r\n await this.formPromise;\r\n this.onDeleted.emit();\r\n this.analytics.eventTrack.next({ action: 'Bulk Deleted Items' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedItems'));\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { CipherService } from 'jslib/abstractions/cipher.service';\r\nimport { FolderService } from 'jslib/abstractions/folder.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\nimport { FolderView } from 'jslib/models/view/folderView';\r\n\r\n@Component({\r\n selector: 'app-vault-bulk-move',\r\n templateUrl: 'bulk-move.component.html',\r\n})\r\nexport class BulkMoveComponent implements OnInit {\r\n @Input() cipherIds: string[] = [];\r\n @Output() onMoved = new EventEmitter();\r\n\r\n folderId: string = null;\r\n folders: FolderView[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private analytics: Angulartics2, private cipherService: CipherService,\r\n private toasterService: ToasterService, private i18nService: I18nService,\r\n private folderService: FolderService) { }\r\n\r\n async ngOnInit() {\r\n this.folders = await this.folderService.getAllDecrypted();\r\n this.folderId = this.folders[0].id;\r\n }\r\n\r\n async submit() {\r\n this.formPromise = this.cipherService.moveManyWithServer(this.cipherIds, this.folderId);\r\n await this.formPromise;\r\n this.onMoved.emit();\r\n this.analytics.eventTrack.next({ action: 'Bulk Moved Items' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('movedItems'));\r\n }\r\n}\r\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\n@Component({\n selector: 'app-vault-bulk-share',\n templateUrl: 'bulk-share.component.html',\n})\nexport class BulkShareComponent implements OnInit {\n @Input() ciphers: CipherView[] = [];\n @Input() organizationId: string;\n @Output() onShared = new EventEmitter();\n\n nonShareableCount = 0;\n collections: CollectionView[] = [];\n organizations: Organization[] = [];\n shareableCiphers: CipherView[] = [];\n formPromise: Promise;\n\n private writeableCollections: CollectionView[] = [];\n\n constructor(private analytics: Angulartics2, private cipherService: CipherService,\n private toasterService: ToasterService, private i18nService: I18nService,\n private collectionService: CollectionService, private userService: UserService) { }\n\n async ngOnInit() {\n this.shareableCiphers = this.ciphers.filter((c) => !c.hasOldAttachments && c.organizationId == null);\n this.nonShareableCount = this.ciphers.length - this.shareableCiphers.length;\n const allCollections = await this.collectionService.getAllDecrypted();\n this.writeableCollections = allCollections.filter((c) => !c.readOnly);\n this.organizations = await this.userService.getAllOrganizations();\n if (this.organizationId == null && this.organizations.length > 0) {\n this.organizationId = this.organizations[0].id;\n }\n this.filterCollections();\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n filterCollections() {\n this.selectAll(false);\n if (this.organizationId == null || this.writeableCollections.length === 0) {\n this.collections = [];\n } else {\n this.collections = this.writeableCollections.filter((c) => c.organizationId === this.organizationId);\n }\n }\n\n async submit() {\n const checkedCollectionIds = this.collections.filter((c) => (c as any).checked).map((c) => c.id);\n try {\n this.formPromise = this.cipherService.shareManyWithServer(this.shareableCiphers, this.organizationId,\n checkedCollectionIds);\n await this.formPromise;\n this.onShared.emit();\n this.analytics.eventTrack.next({ action: 'Bulk Shared Items' });\n this.toasterService.popAsync('success', null, this.i18nService.t('sharedItems'));\n } catch { }\n }\n\n check(c: CollectionView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n const collections = select ? this.collections : this.writeableCollections;\n collections.forEach((c) => this.check(c, select));\n }\n\n get canSave() {\n if (this.shareableCiphers != null && this.shareableCiphers.length > 0 && this.collections != null) {\n for (let i = 0; i < this.collections.length; i++) {\n if ((this.collections[i] as any).checked) {\n return true;\n }\n }\n }\n return false;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n FolderAddEditComponent as BaseFolderAddEditComponent,\n} from 'jslib/angular/components/folder-add-edit.component';\n\n@Component({\n selector: 'app-folder-add-edit',\n templateUrl: 'folder-add-edit.component.html',\n})\nexport class FolderAddEditComponent extends BaseFolderAddEditComponent {\n constructor(folderService: FolderService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService) {\n super(folderService, i18nService, platformUtilsService);\n }\n}\n","import {\n Component,\n OnDestroy,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { ShareComponent as BaseShareComponent } from 'jslib/angular/components/share.component';\n\n@Component({\n selector: 'app-vault-share',\n templateUrl: 'share.component.html',\n})\nexport class ShareComponent extends BaseShareComponent implements OnDestroy {\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, userService: UserService,\n cipherService: CipherService) {\n super(collectionService, platformUtilsService, i18nService, userService, cipherService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n check(c: CollectionView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n const collections = select ? this.collections : this.writeableCollections;\n collections.forEach((c) => this.check(c, select));\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { UpdateProfileRequest } from 'jslib/models/request/updateProfileRequest';\n\nimport { ProfileResponse } from 'jslib/models/response/profileResponse';\n\n@Component({\n selector: 'app-profile',\n templateUrl: 'profile.component.html',\n})\nexport class ProfileComponent implements OnInit {\n loading = true;\n profile: ProfileResponse;\n fingerprint: string;\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private userService: UserService, private cryptoService: CryptoService) { }\n\n async ngOnInit() {\n this.profile = await this.apiService.getProfile();\n this.loading = false;\n const fingerprint = await this.cryptoService.getFingerprint(await this.userService.getUserId());\n if (fingerprint != null) {\n this.fingerprint = fingerprint.join('-');\n }\n }\n\n async submit() {\n try {\n const request = new UpdateProfileRequest(this.profile.name, this.profile.masterPasswordHint);\n this.formPromise = this.apiService.putProfile(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Updated Profile' });\n this.toasterService.popAsync('success', null, this.i18nService.t('accountUpdated'));\n } catch { }\n }\n}\n","import {\n Component,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { EmailRequest } from 'jslib/models/request/emailRequest';\nimport { EmailTokenRequest } from 'jslib/models/request/emailTokenRequest';\n\n@Component({\n selector: 'app-change-email',\n templateUrl: 'change-email.component.html',\n})\nexport class ChangeEmailComponent {\n masterPassword: string;\n newEmail: string;\n token: string;\n tokenSent = false;\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService,\n private userService: UserService) { }\n\n async submit() {\n const hasEncKey = await this.cryptoService.hasEncKey();\n if (!hasEncKey) {\n this.toasterService.popAsync('error', null, this.i18nService.t('updateKey'));\n return;\n }\n\n this.newEmail = this.newEmail.trim().toLowerCase();\n if (!this.tokenSent) {\n const request = new EmailTokenRequest();\n request.newEmail = this.newEmail;\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.postEmailToken(request);\n await this.formPromise;\n this.tokenSent = true;\n } catch { }\n } else {\n const request = new EmailRequest();\n request.token = this.token;\n request.newEmail = this.newEmail;\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n const kdf = await this.userService.getKdf();\n const kdfIterations = await this.userService.getKdfIterations();\n const newKey = await this.cryptoService.makeKey(this.masterPassword, this.newEmail, kdf, kdfIterations);\n request.newMasterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, newKey);\n const newEncKey = await this.cryptoService.remakeEncKey(newKey);\n request.key = newEncKey[1].encryptedString;\n try {\n this.formPromise = this.apiService.postEmail(request);\n await this.formPromise;\n this.reset();\n this.analytics.eventTrack.next({ action: 'Changed Email' });\n this.toasterService.popAsync('success', this.i18nService.t('emailChanged'),\n this.i18nService.t('logBackIn'));\n this.messagingService.send('logout');\n } catch { }\n }\n }\n\n reset() {\n this.token = this.newEmail = this.masterPassword = null;\n this.tokenSent = false;\n }\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class EmailTokenRequest extends PasswordVerificationRequest {\n newEmail: string;\n masterPasswordHash: string;\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\nimport { SymmetricCryptoKey } from 'jslib/models/domain/symmetricCryptoKey';\n\nimport { CipherWithIdRequest } from 'jslib/models/request/cipherWithIdRequest';\nimport { FolderWithIdRequest } from 'jslib/models/request/folderWithIdRequest';\nimport { PasswordRequest } from 'jslib/models/request/passwordRequest';\nimport { UpdateKeyRequest } from 'jslib/models/request/updateKeyRequest';\n\n@Component({\n selector: 'app-change-password',\n templateUrl: 'change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit {\n currentMasterPassword: string;\n newMasterPassword: string;\n confirmNewMasterPassword: string;\n formPromise: Promise;\n masterPasswordScore: number;\n rotateEncKey = false;\n\n private masterPasswordStrengthTimeout: any;\n private email: string;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService,\n private userService: UserService, private passwordGenerationService: PasswordGenerationService,\n private platformUtilsService: PlatformUtilsService, private folderService: FolderService,\n private cipherService: CipherService, private syncService: SyncService) { }\n\n async ngOnInit() {\n this.email = await this.userService.getEmail();\n }\n\n async submit() {\n const hasEncKey = await this.cryptoService.hasEncKey();\n if (!hasEncKey) {\n this.toasterService.popAsync('error', null, this.i18nService.t('updateKey'));\n return;\n }\n\n if (this.currentMasterPassword == null || this.currentMasterPassword === '' ||\n this.newMasterPassword == null || this.newMasterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n if (this.newMasterPassword.length < 8) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassLength'));\n return;\n }\n if (this.newMasterPassword !== this.confirmNewMasterPassword) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassDoesntMatch'));\n return;\n }\n\n const strengthResult = this.passwordGenerationService.passwordStrength(this.newMasterPassword,\n this.getPasswordStrengthUserInput());\n if (strengthResult != null && strengthResult.score < 3) {\n const result = await this.platformUtilsService.showDialog(this.i18nService.t('weakMasterPasswordDesc'),\n this.i18nService.t('weakMasterPassword'), this.i18nService.t('yes'), this.i18nService.t('no'),\n 'warning');\n if (!result) {\n return;\n }\n }\n\n if (this.rotateEncKey) {\n await this.syncService.fullSync(true);\n }\n\n const request = new PasswordRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.currentMasterPassword, null);\n const email = await this.userService.getEmail();\n const kdf = await this.userService.getKdf();\n const kdfIterations = await this.userService.getKdfIterations();\n const newKey = await this.cryptoService.makeKey(this.newMasterPassword, email.trim().toLowerCase(),\n kdf, kdfIterations);\n request.newMasterPasswordHash = await this.cryptoService.hashPassword(this.newMasterPassword, newKey);\n const newEncKey = await this.cryptoService.remakeEncKey(newKey);\n request.key = newEncKey[1].encryptedString;\n try {\n if (this.rotateEncKey) {\n this.formPromise = this.apiService.postPassword(request).then(() => {\n return this.updateKey(newKey, request.newMasterPasswordHash);\n });\n } else {\n this.formPromise = this.apiService.postPassword(request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Changed Password' });\n this.toasterService.popAsync('success', this.i18nService.t('masterPasswordChanged'),\n this.i18nService.t('logBackIn'));\n this.messagingService.send('logout');\n } catch { }\n }\n\n updatePasswordStrength() {\n if (this.masterPasswordStrengthTimeout != null) {\n clearTimeout(this.masterPasswordStrengthTimeout);\n }\n this.masterPasswordStrengthTimeout = setTimeout(() => {\n const strengthResult = this.passwordGenerationService.passwordStrength(this.newMasterPassword,\n this.getPasswordStrengthUserInput());\n this.masterPasswordScore = strengthResult == null ? null : strengthResult.score;\n }, 300);\n }\n\n async rotateEncKeyClicked() {\n if (this.rotateEncKey) {\n const ciphers = await this.cipherService.getAllDecrypted();\n let hasOldAttachments = false;\n if (ciphers != null) {\n for (let i = 0; i < ciphers.length; i++) {\n if (ciphers[i].organizationId == null && ciphers[i].hasOldAttachments) {\n hasOldAttachments = true;\n break;\n }\n }\n }\n\n if (hasOldAttachments) {\n const learnMore = await this.platformUtilsService.showDialog(\n this.i18nService.t('oldAttachmentsNeedFixDesc'), null,\n this.i18nService.t('learnMore'), this.i18nService.t('close'), 'warning');\n if (learnMore) {\n this.platformUtilsService.launchUri(\n 'https://help.bitwarden.com/article/attachments/#fixing-old-attachments');\n }\n this.rotateEncKey = false;\n return;\n }\n\n const result = await this.platformUtilsService.showDialog(\n this.i18nService.t('updateEncryptionKeyWarning') + ' ' +\n this.i18nService.t('rotateEncKeyConfirmation'), this.i18nService.t('rotateEncKeyTitle'),\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!result) {\n this.rotateEncKey = false;\n }\n }\n }\n\n private getPasswordStrengthUserInput() {\n let userInput: string[] = [];\n const atPosition = this.email.indexOf('@');\n if (atPosition > -1) {\n userInput = userInput.concat(this.email.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/));\n }\n return userInput;\n }\n\n private async updateKey(key: SymmetricCryptoKey, masterPasswordHash: string) {\n const encKey = await this.cryptoService.makeEncKey(key);\n const privateKey = await this.cryptoService.getPrivateKey();\n let encPrivateKey: CipherString = null;\n if (privateKey != null) {\n encPrivateKey = await this.cryptoService.encrypt(privateKey, encKey[0]);\n }\n const request = new UpdateKeyRequest();\n request.privateKey = encPrivateKey != null ? encPrivateKey.encryptedString : null;\n request.key = encKey[1].encryptedString;\n request.masterPasswordHash = masterPasswordHash;\n\n const folders = await this.folderService.getAllDecrypted();\n for (let i = 0; i < folders.length; i++) {\n if (folders[i].id == null) {\n continue;\n }\n const folder = await this.folderService.encrypt(folders[i], encKey[0]);\n request.folders.push(new FolderWithIdRequest(folder));\n }\n\n const ciphers = await this.cipherService.getAllDecrypted();\n for (let i = 0; i < ciphers.length; i++) {\n if (ciphers[i].organizationId != null) {\n continue;\n }\n\n const cipher = await this.cipherService.encrypt(ciphers[i], encKey[0]);\n request.ciphers.push(new CipherWithIdRequest(cipher));\n }\n\n await this.apiService.postAccountKey(request);\n }\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class PasswordRequest extends PasswordVerificationRequest {\n newMasterPasswordHash: string;\n key: string;\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { KdfRequest } from 'jslib/models/request/kdfRequest';\r\n\r\nimport { KdfType } from 'jslib/enums/kdfType';\r\n\r\n@Component({\r\n selector: 'app-change-kdf',\r\n templateUrl: 'change-kdf.component.html',\r\n})\r\nexport class ChangeKdfComponent implements OnInit {\r\n masterPassword: string;\r\n kdfIterations: number;\r\n kdf = KdfType.PBKDF2_SHA256;\r\n kdfOptions: any[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private cryptoService: CryptoService, private messagingService: MessagingService,\r\n private userService: UserService) {\r\n this.kdfOptions = [\r\n { name: 'PBKDF2 SHA-256', value: KdfType.PBKDF2_SHA256 },\r\n ];\r\n }\r\n\r\n async ngOnInit() {\r\n this.kdf = await this.userService.getKdf();\r\n this.kdfIterations = await this.userService.getKdfIterations();\r\n }\r\n\r\n async submit() {\r\n const hasEncKey = await this.cryptoService.hasEncKey();\r\n if (!hasEncKey) {\r\n this.toasterService.popAsync('error', null, this.i18nService.t('updateKey'));\r\n return;\r\n }\r\n\r\n const request = new KdfRequest();\r\n request.kdf = this.kdf;\r\n request.kdfIterations = this.kdfIterations;\r\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\r\n const email = await this.userService.getEmail();\r\n const newKey = await this.cryptoService.makeKey(this.masterPassword, email, this.kdf, this.kdfIterations);\r\n request.newMasterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, newKey);\r\n const newEncKey = await this.cryptoService.remakeEncKey(newKey);\r\n request.key = newEncKey[1].encryptedString;\r\n try {\r\n this.formPromise = this.apiService.postAccountKdf(request);\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: 'Changed KDF' });\r\n this.toasterService.popAsync('success', this.i18nService.t('encKeySettingsChanged'),\r\n this.i18nService.t('logBackIn'));\r\n this.messagingService.send('logout');\r\n } catch { }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\r\n\r\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\r\n\r\n@Component({\r\n selector: 'app-deauthorize-sessions',\r\n templateUrl: 'deauthorize-sessions.component.html',\r\n})\r\nexport class DeauthorizeSessionsComponent {\r\n masterPassword: string;\r\n formPromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private cryptoService: CryptoService, private messagingService: MessagingService) { }\r\n\r\n async submit() {\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n\r\n const request = new PasswordVerificationRequest();\r\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\r\n try {\r\n this.formPromise = this.apiService.postSecurityStamp(request);\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: 'Deauthorized Sessions' });\r\n this.toasterService.popAsync('success', this.i18nService.t('sessionsDeauthorized'),\r\n this.i18nService.t('logBackIn'));\r\n this.messagingService.send('logout');\r\n } catch { }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-delete-account',\n templateUrl: 'delete-account.component.html',\n})\nexport class DeleteAccountComponent {\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.deleteAccount(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Account' });\n this.toasterService.popAsync('success', this.i18nService.t('accountDeleted'),\n this.i18nService.t('accountDeletedDesc'));\n this.messagingService.send('logout');\n } catch { }\n }\n}\n","import {\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { UpdateTwoFactorAuthenticatorRequest } from 'jslib/models/request/updateTwoFactorAuthenticatorRequest';\nimport { TwoFactorAuthenticatorResponse } from 'jslib/models/response/twoFactorAuthenticatorResponse';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-authenticator',\n templateUrl: 'two-factor-authenticator.component.html',\n})\nexport class TwoFactorAuthenticatorComponent extends TwoFactorBaseComponent implements OnInit, OnDestroy {\n type = TwoFactorProviderType.Authenticator;\n key: string;\n token: string;\n formPromise: Promise;\n\n private qrScript: HTMLScriptElement;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n private userService: UserService, platformUtilsService: PlatformUtilsService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n this.qrScript = window.document.createElement('script');\n this.qrScript.src = 'scripts/qrious.min.js';\n this.qrScript.async = true;\n }\n\n ngOnInit() {\n window.document.body.appendChild(this.qrScript);\n }\n\n ngOnDestroy() {\n window.document.body.removeChild(this.qrScript);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n return this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.enabled) {\n return super.disable(this.formPromise);\n } else {\n return this.enable();\n }\n }\n\n protected enable() {\n const request = new UpdateTwoFactorAuthenticatorRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.token = this.token;\n request.key = this.key;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorAuthenticator(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n private async processResponse(response: TwoFactorAuthenticatorResponse) {\n this.token = null;\n this.enabled = response.enabled;\n this.key = response.key;\n const email = await this.userService.getEmail();\n window.setTimeout(() => {\n const qr = new (window as any).QRious({\n element: document.getElementById('qr'),\n value: 'otpauth://totp/Bitwarden:' + encodeURIComponent(email) +\n '?secret=' + encodeURIComponent(this.key) + '&issuer=Bitwarden',\n size: 160,\n });\n }, 100);\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorEmailRequest } from 'jslib/models/request/twoFactorEmailRequest';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { UpdateTwoFactorEmailRequest } from 'jslib/models/request/updateTwoFactorEmailRequest';\nimport { TwoFactorEmailResponse } from 'jslib/models/response/twoFactorEmailResponse';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-email',\n templateUrl: 'two-factor-email.component.html',\n})\nexport class TwoFactorEmailComponent extends TwoFactorBaseComponent {\n type = TwoFactorProviderType.Email;\n email: string;\n token: string;\n sentEmail: string;\n formPromise: Promise;\n emailPromise: Promise;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private userService: UserService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n return this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.enabled) {\n return super.disable(this.formPromise);\n } else {\n return this.enable();\n }\n }\n\n async sendEmail() {\n try {\n const request = new TwoFactorEmailRequest(this.email, this.masterPasswordHash);\n this.emailPromise = this.apiService.postTwoFactorEmailSetup(request);\n await this.emailPromise;\n this.sentEmail = this.email;\n } catch { }\n }\n\n protected enable() {\n const request = new UpdateTwoFactorEmailRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.email = this.email;\n request.token = this.token;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorEmail(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n private async processResponse(response: TwoFactorEmailResponse) {\n this.token = null;\n this.email = response.email;\n this.enabled = response.enabled;\n if (!this.enabled && (this.email == null || this.email === '')) {\n this.email = await this.userService.getEmail();\n }\n }\n}\n","import { Component } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { TwoFactorRecoverResponse } from 'jslib/models/response/twoFactorRescoverResponse';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\n@Component({\n selector: 'app-two-factor-recovery',\n templateUrl: 'two-factor-recovery.component.html',\n})\nexport class TwoFactorRecoveryComponent {\n type = -1;\n code: string;\n authed: boolean;\n twoFactorProviderType = TwoFactorProviderType;\n\n constructor(private i18nService: I18nService) { }\n\n auth(authResponse: any) {\n this.authed = true;\n this.processResponse(authResponse.response);\n }\n\n print() {\n const w = window.open();\n w.document.write('
' +\n '

' + this.i18nService.t('twoFactorRecoveryYourCode') + ':

' +\n '' +\n this.code + '
' +\n '

' + new Date() + '

');\n w.print();\n w.close();\n }\n\n private formatString(s: string) {\n if (s == null) {\n return null;\n }\n return s.replace(/(.{4})/g, '$1 ').trim().toUpperCase();\n }\n\n private processResponse(response: TwoFactorRecoverResponse) {\n this.code = this.formatString(response.code);\n }\n}\n","import {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\nimport { UpdateTwoFactorU2fDeleteRequest } from 'jslib/models/request/updateTwoFactorU2fDeleteRequest';\nimport { UpdateTwoFactorU2fRequest } from 'jslib/models/request/updateTwoFactorU2fRequest';\nimport {\n ChallengeResponse,\n TwoFactorU2fResponse,\n} from 'jslib/models/response/twoFactorU2fResponse';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-u2f',\n templateUrl: 'two-factor-u2f.component.html',\n})\nexport class TwoFactorU2fComponent extends TwoFactorBaseComponent implements OnInit, OnDestroy {\n type = TwoFactorProviderType.U2f;\n name: string;\n keys: any[];\n keyIdAvailable: number = null;\n keysConfiguredCount = 0;\n u2fError: boolean;\n u2fListening: boolean;\n u2fResponse: string;\n challengePromise: Promise;\n formPromise: Promise;\n\n private u2fScript: HTMLScriptElement;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private ngZone: NgZone) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n this.u2fScript = window.document.createElement('script');\n this.u2fScript.src = 'scripts/u2f.js';\n this.u2fScript.async = true;\n }\n\n ngOnInit() {\n window.document.body.appendChild(this.u2fScript);\n }\n\n ngOnDestroy() {\n window.document.body.removeChild(this.u2fScript);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.u2fResponse == null || this.keyIdAvailable == null) {\n // Should never happen.\n return Promise.reject();\n }\n const request = new UpdateTwoFactorU2fRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.deviceResponse = this.u2fResponse;\n request.id = this.keyIdAvailable;\n request.name = this.name;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorU2f(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n disable() {\n return super.disable(this.formPromise);\n }\n\n async remove(key: any) {\n if (this.keysConfiguredCount <= 1 || key.removePromise != null) {\n return;\n }\n const name = key.name != null ? key.name : this.i18nService.t('u2fkeyX', key.id);\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('removeU2fConfirmation'), name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n const request = new UpdateTwoFactorU2fDeleteRequest();\n request.id = key.id;\n request.masterPasswordHash = this.masterPasswordHash;\n try {\n key.removePromise = this.apiService.deleteTwoFactorU2f(request);\n const response = await key.removePromise;\n key.removePromise = null;\n await this.processResponse(response);\n } catch { }\n }\n\n async readKey() {\n if (this.keyIdAvailable == null) {\n return;\n }\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n try {\n this.challengePromise = this.apiService.getTwoFactorU2fChallenge(request);\n const challenge = await this.challengePromise;\n this.readDevice(challenge);\n } catch { }\n }\n\n private readDevice(u2fChallenge: ChallengeResponse) {\n // tslint:disable-next-line\n console.log('listening for key...');\n this.resetU2f(true);\n (window as any).u2f.register(u2fChallenge.appId, [{\n version: u2fChallenge.version,\n challenge: u2fChallenge.challenge,\n }], [], (data: any) => {\n this.ngZone.run(() => {\n this.u2fListening = false;\n if (data.errorCode) {\n this.u2fError = true;\n // tslint:disable-next-line\n console.log('error: ' + data.errorCode);\n return;\n }\n this.u2fResponse = JSON.stringify(data);\n });\n }, 15);\n }\n\n private resetU2f(listening = false) {\n this.u2fResponse = null;\n this.u2fError = false;\n this.u2fListening = listening;\n }\n\n private processResponse(response: TwoFactorU2fResponse) {\n this.resetU2f();\n this.keys = [];\n this.keyIdAvailable = null;\n this.name = null;\n this.keysConfiguredCount = 0;\n for (let i = 1; i <= 5; i++) {\n if (response.keys != null) {\n const key = response.keys.filter((k) => k.id === i);\n if (key.length > 0) {\n this.keysConfiguredCount++;\n this.keys.push({\n id: i, name: key[0].name,\n configured: true,\n compromised: key[0].compromised,\n removePromise: null,\n });\n continue;\n }\n }\n this.keys.push({ id: i, name: null, configured: false, compromised: false, removePromise: null });\n if (this.keyIdAvailable == null) {\n this.keyIdAvailable = i;\n }\n }\n this.enabled = response.enabled;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { UpdateTwoFactorYubioOtpRequest } from 'jslib/models/request/updateTwoFactorYubioOtpRequest';\nimport { TwoFactorYubiKeyResponse } from 'jslib/models/response/twoFactorYubiKeyResponse';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-yubikey',\n templateUrl: 'two-factor-yubikey.component.html',\n})\nexport class TwoFactorYubiKeyComponent extends TwoFactorBaseComponent {\n type = TwoFactorProviderType.Yubikey;\n keys: any[];\n nfc = false;\n\n formPromise: Promise;\n disablePromise: Promise;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n this.processResponse(authResponse.response);\n }\n\n submit() {\n const request = new UpdateTwoFactorYubioOtpRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.key1 = this.keys != null && this.keys.length > 0 ? this.keys[0].key : null;\n request.key2 = this.keys != null && this.keys.length > 1 ? this.keys[1].key : null;\n request.key3 = this.keys != null && this.keys.length > 2 ? this.keys[2].key : null;\n request.key4 = this.keys != null && this.keys.length > 3 ? this.keys[3].key : null;\n request.key5 = this.keys != null && this.keys.length > 4 ? this.keys[4].key : null;\n request.nfc = this.nfc;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorYubiKey(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n this.toasterService.popAsync('success', null, this.i18nService.t('yubikeysUpdated'));\n });\n }\n\n disable() {\n return super.disable(this.disablePromise);\n }\n\n remove(key: any) {\n key.existingKey = null;\n key.key = null;\n }\n\n private processResponse(response: TwoFactorYubiKeyResponse) {\n this.enabled = response.enabled;\n this.keys = [\n { key: response.key1, existingKey: this.padRight(response.key1) },\n { key: response.key2, existingKey: this.padRight(response.key2) },\n { key: response.key3, existingKey: this.padRight(response.key3) },\n { key: response.key4, existingKey: this.padRight(response.key4) },\n { key: response.key5, existingKey: this.padRight(response.key5) },\n ];\n this.nfc = response.nfc || !response.enabled;\n }\n\n private padRight(str: string, character = '•', size = 44) {\n if (str == null || character == null || str.length >= size) {\n return str;\n }\n const max = (size - str.length) / character.length;\n for (let i = 0; i < max; i++) {\n str += character;\n }\n return str;\n }\n}\n","
\n
\n \n \n {{'licenseFileDesc' | i18n : (!organizationId ? 'bitwarden_premium_license.json' : 'bitwarden_organization_license.json')}}\n
\n \n \n
\n","
\n
\n

{{(add ? 'addStorage' : 'removeStorage') | i18n}}

\n
\n
\n \n \n
\n
\n
\n {{'total' | i18n}}: {{storageAdjustment || 0}} GB × {{storageGbPrice | currency:'$'}} = {{adjustedStorageTotal\n | currency:'$'}} /{{interval | i18n}}\n
\n \n \n \n {{(add ? 'storageAddNote' : 'storageRemoveNote') | i18n}}\n \n
\n
\n","\n

{{'contactSupportPaymentMethod' | i18n}}

\n \n {{'contactSupport' | i18n}}\n \n \n
\n
\n
\n

{{(currentType != null ? 'changePaymentMethod' : 'addPaymentMethod') | i18n}}

\n \n \n \n
\n
\n","export enum PlanType {\n Free = 0,\n FamiliesAnnually = 1,\n TeamsMonthly = 2,\n TeamsAnnually = 3,\n EnterpriseMonthly = 4,\n EnterpriseAnnually = 5,\n Custom = 6,\n}\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\n/**\n * A pipe that sanitizes HTML and highlights numbers and special characters (in different colors each).\n */\n@Pipe({ name: 'colorPassword' })\nexport class ColorPasswordPipe implements PipeTransform {\n transform(password: string) {\n let colorizedPassword = '';\n for (let i = 0; i < password.length; i++) {\n let character = password[i];\n let isSpecial = false;\n // Sanitize HTML first.\n switch (character) {\n case '&':\n character = '&';\n isSpecial = true;\n break;\n case '<':\n character = '<';\n isSpecial = true;\n break;\n case '>':\n character = '>';\n isSpecial = true;\n break;\n default:\n break;\n }\n let type = 'letter';\n if (isSpecial || character.match(/[^\\w ]/)) {\n type = 'special';\n } else if (character.match(/\\d/)) {\n type = 'number';\n }\n colorizedPassword += '' + character + '';\n }\n return colorizedPassword;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n PasswordGeneratorHistoryComponent as BasePasswordGeneratorHistoryComponent,\n} from 'jslib/angular/components/password-generator-history.component';\n\n@Component({\n selector: 'app-password-generator-history',\n templateUrl: 'password-generator-history.component.html',\n})\nexport class PasswordGeneratorHistoryComponent extends BasePasswordGeneratorHistoryComponent {\n constructor(passwordGenerationService: PasswordGenerationService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService) {\n super(passwordGenerationService, platformUtilsService, i18nService, window);\n }\n}\n","import { AttachmentResponse } from '../response/attachmentResponse';\r\n\r\nexport class AttachmentData {\r\n id: string;\r\n url: string;\r\n fileName: string;\r\n key: string;\r\n size: number;\r\n sizeName: string;\r\n\r\n constructor(response?: AttachmentResponse) {\r\n if (response == null) {\r\n return;\r\n }\r\n this.id = response.id;\r\n this.url = response.url;\r\n this.fileName = response.fileName;\r\n this.key = response.key;\r\n this.size = response.size;\r\n this.sizeName = response.sizeName;\r\n }\r\n}\r\n","import { CardApi } from '../api/cardApi';\n\nexport class CardData {\n cardholderName: string;\n brand: string;\n number: string;\n expMonth: string;\n expYear: string;\n code: string;\n\n constructor(data?: CardApi) {\n if (data == null) {\n return;\n }\n\n this.cardholderName = data.cardholderName;\n this.brand = data.brand;\n this.number = data.number;\n this.expMonth = data.expMonth;\n this.expYear = data.expYear;\n this.code = data.code;\n }\n}\n","import { FieldType } from '../../enums/fieldType';\n\nimport { FieldApi } from '../api/fieldApi';\n\nexport class FieldData {\n type: FieldType;\n name: string;\n value: string;\n\n constructor(response?: FieldApi) {\n if (response == null) {\n return;\n }\n this.type = response.type;\n this.name = response.name;\n this.value = response.value;\n }\n}\n","import { IdentityApi } from '../api/identityApi';\n\nexport class IdentityData {\n title: string;\n firstName: string;\n middleName: string;\n lastName: string;\n address1: string;\n address2: string;\n address3: string;\n city: string;\n state: string;\n postalCode: string;\n country: string;\n company: string;\n email: string;\n phone: string;\n ssn: string;\n username: string;\n passportNumber: string;\n licenseNumber: string;\n\n constructor(data?: IdentityApi) {\n if (data == null) {\n return;\n }\n\n this.title = data.title;\n this.firstName = data.firstName;\n this.middleName = data.middleName;\n this.lastName = data.lastName;\n this.address1 = data.address1;\n this.address2 = data.address2;\n this.address3 = data.address3;\n this.city = data.city;\n this.state = data.state;\n this.postalCode = data.postalCode;\n this.country = data.country;\n this.company = data.company;\n this.email = data.email;\n this.phone = data.phone;\n this.ssn = data.ssn;\n this.username = data.username;\n this.passportNumber = data.passportNumber;\n this.licenseNumber = data.licenseNumber;\n }\n}\n","import { LoginApi } from '../api/loginApi';\r\n\r\nimport { LoginUriData } from './loginUriData';\r\n\r\nexport class LoginData {\r\n uris: LoginUriData[];\r\n username: string;\r\n password: string;\r\n passwordRevisionDate: string;\r\n totp: string;\r\n\r\n constructor(data?: LoginApi) {\r\n if (data == null) {\r\n return;\r\n }\r\n\r\n this.username = data.username;\r\n this.password = data.password;\r\n this.passwordRevisionDate = data.passwordRevisionDate;\r\n this.totp = data.totp;\r\n\r\n if (data.uris) {\r\n this.uris = [];\r\n data.uris.forEach((u) => {\r\n this.uris.push(new LoginUriData(u));\r\n });\r\n }\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\n\nimport { LoginUriApi } from '../api/loginUriApi';\n\nexport class LoginUriData {\n uri: string;\n match: UriMatchType = null;\n\n constructor(data?: LoginUriApi) {\n if (data == null) {\n return;\n }\n this.uri = data.uri;\n this.match = data.match;\n }\n}\n","import { PasswordHistoryResponse } from '../response/passwordHistoryResponse';\r\n\r\nexport class PasswordHistoryData {\r\n password: string;\r\n lastUsedDate: string;\r\n\r\n constructor(response?: PasswordHistoryResponse) {\r\n if (response == null) {\r\n return;\r\n }\r\n\r\n this.password = response.password;\r\n this.lastUsedDate = response.lastUsedDate;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\n\nimport { SecureNoteApi } from '../api/secureNoteApi';\n\nexport class SecureNoteData {\n type: SecureNoteType;\n\n constructor(data?: SecureNoteApi) {\n if (data == null) {\n return;\n }\n\n this.type = data.type;\n }\n}\n","import { AttachmentData } from '../data/attachmentData';\r\n\r\nimport { AttachmentView } from '../view/attachmentView';\r\n\r\nimport { CipherString } from './cipherString';\r\nimport Domain from './domainBase';\r\nimport { SymmetricCryptoKey } from './symmetricCryptoKey';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class Attachment extends Domain {\r\n id: string;\r\n url: string;\r\n size: number;\r\n sizeName: string;\r\n key: CipherString;\r\n fileName: CipherString;\r\n\r\n constructor(obj?: AttachmentData, alreadyEncrypted: boolean = false) {\r\n super();\r\n if (obj == null) {\r\n return;\r\n }\r\n\r\n this.size = obj.size;\r\n this.buildDomainModel(this, obj, {\r\n id: null,\r\n url: null,\r\n sizeName: null,\r\n fileName: null,\r\n key: null,\r\n }, alreadyEncrypted, ['id', 'url', 'sizeName']);\r\n }\r\n\r\n async decrypt(orgId: string): Promise {\r\n const view = await this.decryptObj(new AttachmentView(this), {\r\n fileName: null,\r\n }, orgId);\r\n\r\n if (this.key != null) {\r\n let cryptoService: CryptoService;\r\n const containerService = (Utils.global as any).bitwardenContainerService;\r\n if (containerService) {\r\n cryptoService = containerService.getCryptoService();\r\n } else {\r\n throw new Error('global bitwardenContainerService not initialized.');\r\n }\r\n\r\n try {\r\n const orgKey = await cryptoService.getOrgKey(orgId);\r\n const decValue = await cryptoService.decryptToBytes(this.key, orgKey);\r\n view.key = new SymmetricCryptoKey(decValue);\r\n } catch (e) {\r\n // TODO: error?\r\n }\r\n }\r\n\r\n return view;\r\n }\r\n\r\n toAttachmentData(): AttachmentData {\r\n const a = new AttachmentData();\r\n this.buildDataModel(this, a, {\r\n id: null,\r\n url: null,\r\n sizeName: null,\r\n fileName: null,\r\n key: null,\r\n }, ['id', 'url', 'sizeName']);\r\n return a;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Attachment } from '../domain/attachment';\r\nimport { SymmetricCryptoKey } from '../domain/symmetricCryptoKey';\r\n\r\nexport class AttachmentView implements View {\r\n id: string;\r\n url: string;\r\n size: number;\r\n sizeName: string;\r\n fileName: string;\r\n key: SymmetricCryptoKey;\r\n\r\n constructor(a?: Attachment) {\r\n if (!a) {\r\n return;\r\n }\r\n\r\n this.id = a.id;\r\n this.url = a.url;\r\n this.size = a.size;\r\n this.sizeName = a.sizeName;\r\n }\r\n}\r\n","import { EncryptionType } from '../../enums/encryptionType';\n\nimport { Utils } from '../../misc/utils';\n\nexport class SymmetricCryptoKey {\n key: ArrayBuffer;\n encKey?: ArrayBuffer;\n macKey?: ArrayBuffer;\n encType: EncryptionType;\n\n keyB64: string;\n encKeyB64: string;\n macKeyB64: string;\n\n meta: any;\n\n constructor(key: ArrayBuffer, encType?: EncryptionType) {\n if (key == null) {\n throw new Error('Must provide key');\n }\n\n if (encType == null) {\n if (key.byteLength === 32) {\n encType = EncryptionType.AesCbc256_B64;\n } else if (key.byteLength === 64) {\n encType = EncryptionType.AesCbc256_HmacSha256_B64;\n } else {\n throw new Error('Unable to determine encType.');\n }\n }\n\n this.key = key;\n this.encType = encType;\n\n if (encType === EncryptionType.AesCbc256_B64 && key.byteLength === 32) {\n this.encKey = key;\n this.macKey = null;\n } else if (encType === EncryptionType.AesCbc128_HmacSha256_B64 && key.byteLength === 32) {\n this.encKey = key.slice(0, 16);\n this.macKey = key.slice(16, 32);\n } else if (encType === EncryptionType.AesCbc256_HmacSha256_B64 && key.byteLength === 64) {\n this.encKey = key.slice(0, 32);\n this.macKey = key.slice(32, 64);\n } else {\n throw new Error('Unsupported encType/key length.');\n }\n\n if (this.key != null) {\n this.keyB64 = Utils.fromBufferToB64(this.key);\n }\n if (this.encKey != null) {\n this.encKeyB64 = Utils.fromBufferToB64(this.encKey);\n }\n if (this.macKey != null) {\n this.macKeyB64 = Utils.fromBufferToB64(this.macKey);\n }\n }\n}\n","import { CardData } from '../data/cardData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { CardView } from '../view/cardView';\n\nexport class Card extends Domain {\n cardholderName: CipherString;\n brand: CipherString;\n number: CipherString;\n expMonth: CipherString;\n expYear: CipherString;\n code: CipherString;\n\n constructor(obj?: CardData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new CardView(this), {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n }, orgId);\n }\n\n toCardData(): CardData {\n const c = new CardData();\n this.buildDataModel(this, c, {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n });\n return c;\n }\n}\n","import { FieldType } from '../../enums/fieldType';\n\nimport { FieldData } from '../data/fieldData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { FieldView } from '../view/fieldView';\n\nexport class Field extends Domain {\n name: CipherString;\n value: CipherString;\n type: FieldType;\n\n constructor(obj?: FieldData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.type = obj.type;\n this.buildDomainModel(this, obj, {\n name: null,\n value: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new FieldView(this), {\n name: null,\n value: null,\n }, orgId);\n }\n\n toFieldData(): FieldData {\n const f = new FieldData();\n this.buildDataModel(this, f, {\n name: null,\n value: null,\n type: null,\n }, ['type']);\n return f;\n }\n}\n","import { IdentityData } from '../data/identityData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { IdentityView } from '../view/identityView';\n\nexport class Identity extends Domain {\n title: CipherString;\n firstName: CipherString;\n middleName: CipherString;\n lastName: CipherString;\n address1: CipherString;\n address2: CipherString;\n address3: CipherString;\n city: CipherString;\n state: CipherString;\n postalCode: CipherString;\n country: CipherString;\n company: CipherString;\n email: CipherString;\n phone: CipherString;\n ssn: CipherString;\n username: CipherString;\n passportNumber: CipherString;\n licenseNumber: CipherString;\n\n constructor(obj?: IdentityData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n title: null,\n firstName: null,\n middleName: null,\n lastName: null,\n address1: null,\n address2: null,\n address3: null,\n city: null,\n state: null,\n postalCode: null,\n country: null,\n company: null,\n email: null,\n phone: null,\n ssn: null,\n username: null,\n passportNumber: null,\n licenseNumber: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new IdentityView(this), {\n title: null,\n firstName: null,\n middleName: null,\n lastName: null,\n address1: null,\n address2: null,\n address3: null,\n city: null,\n state: null,\n postalCode: null,\n country: null,\n company: null,\n email: null,\n phone: null,\n ssn: null,\n username: null,\n passportNumber: null,\n licenseNumber: null,\n }, orgId);\n }\n\n toIdentityData(): IdentityData {\n const i = new IdentityData();\n this.buildDataModel(this, i, {\n title: null,\n firstName: null,\n middleName: null,\n lastName: null,\n address1: null,\n address2: null,\n address3: null,\n city: null,\n state: null,\n postalCode: null,\n country: null,\n company: null,\n email: null,\n phone: null,\n ssn: null,\n username: null,\n passportNumber: null,\n licenseNumber: null,\n });\n return i;\n }\n}\n","import { LoginUri } from './loginUri';\n\nimport { LoginData } from '../data/loginData';\n\nimport { LoginView } from '../view/loginView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Login extends Domain {\n uris: LoginUri[];\n username: CipherString;\n password: CipherString;\n passwordRevisionDate?: Date;\n totp: CipherString;\n\n constructor(obj?: LoginData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.passwordRevisionDate = obj.passwordRevisionDate != null ? new Date(obj.passwordRevisionDate) : null;\n this.buildDomainModel(this, obj, {\n username: null,\n password: null,\n totp: null,\n }, alreadyEncrypted, []);\n\n if (obj.uris) {\n this.uris = [];\n obj.uris.forEach((u) => {\n this.uris.push(new LoginUri(u, alreadyEncrypted));\n });\n }\n }\n\n async decrypt(orgId: string): Promise {\n const view = await this.decryptObj(new LoginView(this), {\n username: null,\n password: null,\n totp: null,\n }, orgId);\n\n if (this.uris != null) {\n view.uris = [];\n for (let i = 0; i < this.uris.length; i++) {\n const uri = await this.uris[i].decrypt(orgId);\n view.uris.push(uri);\n }\n }\n\n return view;\n }\n\n toLoginData(): LoginData {\n const l = new LoginData();\n l.passwordRevisionDate = this.passwordRevisionDate != null ? this.passwordRevisionDate.toISOString() : null;\n this.buildDataModel(this, l, {\n username: null,\n password: null,\n totp: null,\n });\n\n if (this.uris != null && this.uris.length > 0) {\n l.uris = [];\n this.uris.forEach((u) => {\n l.uris.push(u.toLoginUriData());\n });\n }\n\n return l;\n }\n}\n","import { UriMatchType } from '../../enums/uriMatchType';\n\nimport { LoginUriData } from '../data/loginUriData';\n\nimport { LoginUriView } from '../view/loginUriView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class LoginUri extends Domain {\n uri: CipherString;\n match: UriMatchType;\n\n constructor(obj?: LoginUriData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.match = obj.match;\n this.buildDomainModel(this, obj, {\n uri: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new LoginUriView(this), {\n uri: null,\n }, orgId);\n }\n\n toLoginUriData(): LoginUriData {\n const u = new LoginUriData();\n this.buildDataModel(this, u, {\n uri: null,\n }, ['match']);\n return u;\n }\n}\n","import { PasswordHistoryData } from '../data/passwordHistoryData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { PasswordHistoryView } from '../view/passwordHistoryView';\n\nexport class Password extends Domain {\n password: CipherString;\n lastUsedDate: Date;\n\n constructor(obj?: PasswordHistoryData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n password: null,\n }, alreadyEncrypted);\n this.lastUsedDate = new Date(obj.lastUsedDate);\n }\n\n async decrypt(orgId: string): Promise {\n const view = await this.decryptObj(new PasswordHistoryView(this), {\n password: null,\n }, orgId);\n return view;\n }\n\n toPasswordHistoryData(): PasswordHistoryData {\n const ph = new PasswordHistoryData();\n ph.lastUsedDate = this.lastUsedDate.toISOString();\n this.buildDataModel(this, ph, {\n password: null,\n });\n return ph;\n }\n}\n","import { View } from './view';\r\n\r\nimport { Password } from '../domain/password';\r\n\r\nexport class PasswordHistoryView implements View {\r\n password: string;\r\n lastUsedDate: Date;\r\n\r\n constructor(ph?: Password) {\r\n if (!ph) {\r\n return;\r\n }\r\n\r\n this.lastUsedDate = ph.lastUsedDate;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\n\nimport { SecureNoteData } from '../data/secureNoteData';\n\nimport Domain from './domainBase';\n\nimport { SecureNoteView } from '../view/secureNoteView';\n\nexport class SecureNote extends Domain {\n type: SecureNoteType;\n\n constructor(obj?: SecureNoteData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.type = obj.type;\n }\n\n decrypt(orgId: string): Promise {\n return Promise.resolve(new SecureNoteView(this));\n }\n\n toSecureNoteData(): SecureNoteData {\n const n = new SecureNoteData();\n n.type = this.type;\n return n;\n }\n}\n","import { CipherRequest } from './cipherRequest';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nexport class CipherCreateRequest {\r\n cipher: CipherRequest;\r\n collectionIds: string[];\r\n\r\n constructor(cipher: Cipher) {\r\n this.cipher = new CipherRequest(cipher);\r\n this.collectionIds = cipher.collectionIds;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { AttachmentView } from 'jslib/models/view/attachmentView';\n\nimport { AttachmentsComponent as BaseAttachmentsComponent } from '../../vault/attachments.component';\n\n@Component({\n selector: 'app-org-vault-attachments',\n templateUrl: '../../vault/attachments.component.html',\n})\nexport class AttachmentsComponent extends BaseAttachmentsComponent {\n organization: Organization;\n\n constructor(cipherService: CipherService, i18nService: I18nService,\n cryptoService: CryptoService, userService: UserService,\n platformUtilsService: PlatformUtilsService, private apiService: ApiService) {\n super(cipherService, i18nService, cryptoService, userService, platformUtilsService);\n }\n\n protected async reupload(attachment: AttachmentView) {\n if (this.organization.isAdmin && this.showFixOldAttachments(attachment)) {\n await super.reuploadCipherAttachment(attachment, true);\n }\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected saveCipherAttachment(file: File) {\n return this.cipherService.saveAttachmentWithServer(this.cipherDomain, file, this.organization.isAdmin);\n }\n\n protected deleteCipherAttachment(attachmentId: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipherAttachment(attachmentId);\n }\n return this.apiService.deleteCipherAttachmentAdmin(this.cipherId, attachmentId);\n }\n\n protected showFixOldAttachments(attachment: AttachmentView) {\n return attachment.key == null && this.organization.isAdmin;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCollectionsRequest } from 'jslib/models/request/cipherCollectionsRequest';\n\nimport { CollectionsComponent as BaseCollectionsComponent } from '../../vault/collections.component';\n\n@Component({\n selector: 'app-org-vault-collections',\n templateUrl: '../../vault/collections.component.html',\n})\nexport class CollectionsComponent extends BaseCollectionsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, cipherService: CipherService,\n private apiService: ApiService) {\n super(collectionService, platformUtilsService, i18nService, cipherService);\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected loadCipherCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCipherCollections();\n }\n return this.collectionIds;\n }\n\n protected loadCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCollections();\n }\n return Promise.resolve(this.collections);\n }\n\n protected saveCollections() {\n if (this.organization.isAdmin) {\n const request = new CipherCollectionsRequest(this.cipherDomain.collectionIds);\n return this.apiService.putCipherCollectionsAdmin(this.cipherId, request);\n } else {\n return super.saveCollections();\n }\n }\n}\n","export class CipherCollectionsRequest {\n collectionIds: string[];\n\n constructor(collectionIds: string[]) {\n this.collectionIds = collectionIds == null ? [] : collectionIds;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\nimport { SymmetricCryptoKey } from 'jslib/models/domain/symmetricCryptoKey';\nimport { CollectionRequest } from 'jslib/models/request/collectionRequest';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-collection-add-edit',\n templateUrl: 'collection-add-edit.component.html',\n})\nexport class CollectionAddEditComponent implements OnInit {\n @Input() collectionId: string;\n @Input() organizationId: string;\n @Output() onSavedCollection = new EventEmitter();\n @Output() onDeletedCollection = new EventEmitter();\n\n loading = true;\n editMode: boolean = false;\n accessGroups: boolean = false;\n title: string;\n name: string;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n deletePromise: Promise;\n\n private orgKey: SymmetricCryptoKey;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private userService: UserService) { }\n\n async ngOnInit() {\n const organization = await this.userService.getOrganization(this.organizationId);\n this.accessGroups = organization.useGroups;\n this.editMode = this.loading = this.collectionId != null;\n if (this.accessGroups) {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n this.groups = groupsResponse.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n this.orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n\n if (this.editMode) {\n this.editMode = true;\n this.title = this.i18nService.t('editCollection');\n try {\n const collection = await this.apiService.getCollectionDetails(this.organizationId, this.collectionId);\n this.name = await this.cryptoService.decryptToUtf8(new CipherString(collection.name), this.orgKey);\n if (collection.groups != null && this.groups.length > 0) {\n collection.groups.forEach((s) => {\n const group = this.groups.filter((g) => !g.accessAll && g.id === s.id);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n (group[0] as any).readOnly = s.readOnly;\n }\n });\n }\n } catch { }\n } else {\n this.title = this.i18nService.t('addCollection');\n }\n\n this.groups.forEach((g) => {\n if (g.accessAll) {\n (g as any).checked = true;\n }\n });\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n if (g.accessAll) {\n return;\n }\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n if (this.orgKey == null) {\n throw new Error('No encryption key for this organization.');\n }\n\n const request = new CollectionRequest();\n request.name = (await this.cryptoService.encrypt(this.name, this.orgKey)).encryptedString;\n request.groups = this.groups.filter((g) => (g as any).checked && !g.accessAll)\n .map((g) => new SelectionReadOnlyRequest(g.id, !!(g as any).readOnly));\n\n try {\n if (this.editMode) {\n this.formPromise = this.apiService.putCollection(this.organizationId, this.collectionId, request);\n } else {\n this.formPromise = this.apiService.postCollection(this.organizationId, request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Collection' : 'Created Collection' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t(this.editMode ? 'editedCollectionId' : 'createdCollectionId', this.name));\n this.onSavedCollection.emit();\n } catch { }\n }\n\n async delete() {\n if (!this.editMode) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), this.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.deletePromise = this.apiService.deleteCollection(this.organizationId, this.collectionId);\n await this.deletePromise;\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', this.name));\n this.onDeletedCollection.emit();\n } catch { }\n }\n}\n","import { Collection } from '../domain/collection';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class CollectionRequest {\n name: string;\n groups: SelectionReadOnlyRequest[] = [];\n\n constructor(collection?: Collection) {\n if (collection == null) {\n return;\n }\n this.name = collection.name ? collection.name.encryptedString : null;\n }\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { GroupRequest } from 'jslib/models/request/groupRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\n@Component({\r\n selector: 'app-group-add-edit',\r\n templateUrl: 'group-add-edit.component.html',\r\n})\r\nexport class GroupAddEditComponent implements OnInit {\r\n @Input() groupId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedGroup = new EventEmitter();\r\n @Output() onDeletedGroup = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n name: string;\r\n externalId: string;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.groupId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editGroup');\r\n try {\r\n const group = await this.apiService.getGroupDetails(this.organizationId, this.groupId);\r\n this.access = group.accessAll ? 'all' : 'selected';\r\n this.name = group.name;\r\n this.externalId = group.externalId;\r\n if (group.collections != null && this.collections != null) {\r\n group.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('addGroup');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n const request = new GroupRequest();\r\n request.name = this.name;\r\n request.externalId = this.externalId;\r\n request.accessAll = this.access === 'all';\r\n if (!request.accessAll) {\r\n request.collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n this.formPromise = this.apiService.putGroup(this.organizationId, this.groupId, request);\r\n } else {\r\n this.formPromise = this.apiService.postGroup(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Group' : 'Created Group' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedGroupId' : 'createdGroupId', this.name));\r\n this.onSavedGroup.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteGroupConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteGroup(this.organizationId, this.groupId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', this.name));\r\n this.onDeletedGroup.emit();\r\n } catch { }\r\n }\r\n}\r\n","export class OrganizationUserConfirmRequest {\n key: string;\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { OrganizationUserInviteRequest } from 'jslib/models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateRequest } from 'jslib/models/request/organizationUserUpdateRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\r\n\r\n@Component({\r\n selector: 'app-user-add-edit',\r\n templateUrl: 'user-add-edit.component.html',\r\n})\r\nexport class UserAddEditComponent implements OnInit {\r\n @Input() name: string;\r\n @Input() organizationUserId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedUser = new EventEmitter();\r\n @Output() onDeletedUser = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n emails: string;\r\n type: OrganizationUserType = OrganizationUserType.User;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n organizationUserType = OrganizationUserType;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.organizationUserId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editUser');\r\n try {\r\n const user = await this.apiService.getOrganizationUser(this.organizationId, this.organizationUserId);\r\n this.access = user.accessAll ? 'all' : 'selected';\r\n this.type = user.type;\r\n if (user.collections != null && this.collections != null) {\r\n user.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('inviteUser');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n let collections: SelectionReadOnlyRequest[] = null;\r\n if (this.access !== 'all') {\r\n collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n const request = new OrganizationUserUpdateRequest();\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.putOrganizationUser(this.organizationId, this.organizationUserId,\r\n request);\r\n } else {\r\n const request = new OrganizationUserInviteRequest();\r\n request.emails = this.emails.trim().split(/\\s*,\\s*/);\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.postOrganizationUserInvite(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited User' : 'Invited User' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedUserId' : 'invitedUsers', this.name));\r\n this.onSavedUser.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('removeUserConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteOrganizationUser(this.organizationId, this.organizationUserId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted User' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('removedUserId', this.name));\r\n this.onDeletedUser.emit();\r\n } catch { }\r\n }\r\n}\r\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-confirm',\n templateUrl: 'user-confirm.component.html',\n})\nexport class UserConfirmComponent implements OnInit {\n @Input() name: string;\n @Input() userId: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onConfirmedUser = new EventEmitter();\n\n dontAskAgain = false;\n loading = true;\n fingerprint: string;\n formPromise: Promise;\n\n private publicKey: Uint8Array = null;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private storageService: StorageService) { }\n\n async ngOnInit() {\n try {\n const publicKeyResponse = await this.apiService.getUserPublicKey(this.userId);\n if (publicKeyResponse != null) {\n this.publicKey = Utils.fromB64ToArray(publicKeyResponse.publicKey);\n const fingerprint = await this.cryptoService.getFingerprint(this.userId, this.publicKey.buffer);\n if (fingerprint != null) {\n this.fingerprint = fingerprint.join('-');\n }\n }\n } catch { }\n this.loading = false;\n }\n\n async submit() {\n if (this.loading) {\n return;\n }\n\n if (this.dontAskAgain) {\n await this.storageService.save(ConstantsService.autoConfirmFingerprints, true);\n }\n\n try {\n this.formPromise = this.doConfirmation();\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Confirmed User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenConfirmed', this.name));\n this.onConfirmedUser.emit();\n } catch { }\n }\n\n private async doConfirmation() {\n const orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n const key = await this.cryptoService.rsaEncrypt(orgKey.key, this.publicKey.buffer);\n const request = new OrganizationUserConfirmRequest();\n request.key = key.encryptedString;\n await this.apiService.postOrganizationUserConfirm(this.organizationId, this.organizationUserId, request);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserUpdateGroupsRequest } from 'jslib/models/request/organizationUserUpdateGroupsRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-groups',\n templateUrl: 'user-groups.component.html',\n})\nexport class UserGroupsComponent implements OnInit {\n @Input() name: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onSavedUser = new EventEmitter();\n\n loading = true;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n const groups = groupsResponse.data.map((r) => r);\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n\n try {\n const userGroups = await this.apiService.getOrganizationUserGroups(\n this.organizationId, this.organizationUserId);\n if (userGroups != null && this.groups != null) {\n userGroups.forEach((ug) => {\n const group = this.groups.filter((g) => g.id === ug);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n }\n });\n }\n } catch { }\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n const request = new OrganizationUserUpdateGroupsRequest();\n request.groupIds = this.groups.filter((g) => (g as any).checked).map((g) => g.id);\n\n try {\n this.formPromise = this.apiService.putOrganizationUserGroups(this.organizationId, this.organizationUserId,\n request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Edited User Groups' });\n this.toasterService.popAsync('success', null, this.i18nService.t('editedGroupsForUser', this.name));\n this.onSavedUser.emit();\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-delete-organization',\n templateUrl: 'delete-organization.component.html',\n})\nexport class DeleteOrganizationComponent {\n organizationId: string;\n\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private router: Router) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.deleteOrganization(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Organization' });\n this.toasterService.popAsync('success', this.i18nService.t('organizationDeleted'),\n this.i18nService.t('organizationDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { SeatRequest } from 'jslib/models/request/seatRequest';\n\n@Component({\n selector: 'app-adjust-seats',\n templateUrl: 'adjust-seats.component.html',\n})\nexport class AdjustSeatsComponent {\n @Input() seatPrice = 0;\n @Input() add = true;\n @Input() organizationId: string;\n @Input() interval = 'year';\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n seatAdjustment = 0;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new SeatRequest();\n request.seatAdjustment = this.seatAdjustment;\n if (!this.add) {\n request.seatAdjustment *= -1;\n }\n\n this.formPromise = this.apiService.postOrganizationSeat(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.add ? 'Added Seats' : 'Removed Seats' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t('adjustedSeats', request.seatAdjustment.toString()));\n this.onAdjusted.emit(this.seatAdjustment);\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get adjustedSeatTotal(): number {\n return this.seatAdjustment * this.seatPrice;\n }\n}\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appBoxRow]',\r\n})\r\nexport class BoxRowDirective implements OnInit {\r\n el: HTMLElement = null;\r\n formEls: Element[];\r\n\r\n constructor(private elRef: ElementRef) {\r\n this.el = elRef.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formEls = Array.from(this.el.querySelectorAll('input:not([type=\"hidden\"]), select, textarea'));\r\n this.formEls.forEach((formEl) => {\r\n formEl.addEventListener('focus', (event: Event) => {\r\n this.el.classList.add('active');\r\n }, false);\r\n\r\n formEl.addEventListener('blur', (event: Event) => {\r\n this.el.classList.remove('active');\r\n }, false);\r\n });\r\n }\r\n\r\n @HostListener('click', ['$event']) onClick(event: Event) {\r\n const target = event.target as HTMLElement;\r\n if (target !== this.el && !target.classList.contains('progress') &&\r\n !target.classList.contains('progress-bar')) {\r\n return;\r\n }\r\n\r\n if (this.formEls.length > 0) {\r\n const formEl = (this.formEls[0] as HTMLElement);\r\n if (formEl.tagName.toLowerCase() === 'input') {\r\n const inputEl = (formEl as HTMLInputElement);\r\n if (inputEl.type != null && inputEl.type.toLowerCase() === 'checkbox') {\r\n inputEl.click();\r\n return;\r\n }\r\n }\r\n formEl.focus();\r\n }\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n forwardRef,\r\n HostListener,\r\n Input,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n NgControl,\r\n} from '@angular/forms';\r\n\r\n// ref: https://juristr.com/blog/2018/02/ng-true-value-directive/\r\n@Directive({\r\n selector: 'input[type=checkbox][appTrueFalseValue]',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => TrueFalseValueDirective),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class TrueFalseValueDirective implements ControlValueAccessor {\r\n @Input() trueValue = true;\r\n @Input() falseValue = false;\r\n\r\n constructor(private elementRef: ElementRef, private renderer: Renderer2) { }\r\n\r\n @HostListener('change', ['$event'])\r\n onHostChange(ev: any) {\r\n this.propagateChange(ev.target.checked ? this.trueValue : this.falseValue);\r\n }\r\n\r\n writeValue(obj: any): void {\r\n if (obj === this.trueValue) {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', true);\r\n } else {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', false);\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void { /* nothing */ }\r\n\r\n setDisabledState?(isDisabled: boolean): void { /* nothing */ }\r\n\r\n private propagateChange = (_: any) => { /* nothing */ };\r\n}\r\n","import { DeviceType } from '../enums/deviceType';\r\n\r\nimport { ApiService as ApiServiceAbstraction } from '../abstractions/api.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { TokenService } from '../abstractions/token.service';\r\n\r\nimport { EnvironmentUrls } from '../models/domain/environmentUrls';\r\n\r\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\r\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\r\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\r\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\r\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\r\nimport { CipherRequest } from '../models/request/cipherRequest';\r\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\r\nimport { CollectionRequest } from '../models/request/collectionRequest';\r\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\r\nimport { EmailRequest } from '../models/request/emailRequest';\r\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\nimport { GroupRequest } from '../models/request/groupRequest';\r\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\r\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\r\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\r\nimport { KdfRequest } from '../models/request/kdfRequest';\r\nimport { KeysRequest } from '../models/request/keysRequest';\r\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\r\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\r\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\r\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\r\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\r\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\r\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\r\nimport { PasswordRequest } from '../models/request/passwordRequest';\r\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\r\nimport { PaymentRequest } from '../models/request/paymentRequest';\r\nimport { PreloginRequest } from '../models/request/preloginRequest';\r\nimport { RegisterRequest } from '../models/request/registerRequest';\r\nimport { SeatRequest } from '../models/request/seatRequest';\r\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\r\nimport { StorageRequest } from '../models/request/storageRequest';\r\nimport { TokenRequest } from '../models/request/tokenRequest';\r\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\r\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\r\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\r\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\r\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\r\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\r\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\r\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\r\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\r\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\r\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\r\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\r\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\r\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\r\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\r\n\r\nimport { BillingResponse } from '../models/response/billingResponse';\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport {\r\n CollectionGroupDetailsResponse,\r\n CollectionResponse,\r\n} from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { ErrorResponse } from '../models/response/errorResponse';\r\nimport { EventResponse } from '../models/response/eventResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n GroupDetailsResponse,\r\n GroupResponse,\r\n} from '../models/response/groupResponse';\r\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\r\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\r\nimport { ListResponse } from '../models/response/listResponse';\r\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\r\nimport { OrganizationResponse } from '../models/response/organizationResponse';\r\nimport {\r\n OrganizationUserDetailsResponse,\r\n OrganizationUserUserDetailsResponse,\r\n} from '../models/response/organizationUserResponse';\r\nimport { PreloginResponse } from '../models/response/preloginResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\r\nimport { SyncResponse } from '../models/response/syncResponse';\r\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\r\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\r\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\r\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\r\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\r\nimport {\r\n ChallengeResponse,\r\n TwoFactorU2fResponse,\r\n} from '../models/response/twoFactorU2fResponse';\r\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\r\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\r\n\r\nexport class ApiService implements ApiServiceAbstraction {\r\n urlsSet: boolean = false;\r\n apiBaseUrl: string;\r\n identityBaseUrl: string;\r\n\r\n private deviceType: string;\r\n private isWebClient = false;\r\n private isDesktopClient = false;\r\n private usingBaseUrl = false;\r\n\r\n constructor(private tokenService: TokenService, private platformUtilsService: PlatformUtilsService,\r\n private logoutCallback: (expired: boolean) => Promise) {\r\n const device = platformUtilsService.getDevice();\r\n this.deviceType = device.toString();\r\n this.isWebClient = device === DeviceType.IEBrowser || device === DeviceType.ChromeBrowser ||\r\n device === DeviceType.EdgeBrowser || device === DeviceType.FirefoxBrowser ||\r\n device === DeviceType.OperaBrowser || device === DeviceType.SafariBrowser ||\r\n device === DeviceType.UnknownBrowser || device === DeviceType.VivaldiBrowser;\r\n this.isDesktopClient = device === DeviceType.WindowsDesktop || device === DeviceType.MacOsDesktop ||\r\n device === DeviceType.LinuxDesktop;\r\n }\r\n\r\n setUrls(urls: EnvironmentUrls): void {\r\n this.urlsSet = true;\r\n\r\n if (urls.base != null) {\r\n this.usingBaseUrl = true;\r\n this.apiBaseUrl = urls.base + '/api';\r\n this.identityBaseUrl = urls.base + '/identity';\r\n return;\r\n }\r\n\r\n if (urls.api != null && urls.identity != null) {\r\n this.apiBaseUrl = urls.api;\r\n this.identityBaseUrl = urls.identity;\r\n return;\r\n }\r\n\r\n /* tslint:disable */\r\n // Local Dev\r\n //this.apiBaseUrl = 'http://localhost:4000';\r\n //this.identityBaseUrl = 'http://localhost:33656';\r\n\r\n // Production\r\n this.apiBaseUrl = 'https://api.bitwarden.com';\r\n this.identityBaseUrl = 'https://identity.bitwarden.com';\r\n /* tslint:enable */\r\n }\r\n\r\n // Auth APIs\r\n\r\n async postIdentityToken(request: TokenRequest): Promise {\r\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\r\n body: this.qsStringify(request.toIdentityToken(this.platformUtilsService.identityClientId)),\r\n credentials: this.getCredentials(),\r\n cache: 'no-cache',\r\n headers: new Headers({\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\r\n 'Accept': 'application/json',\r\n 'Device-Type': this.deviceType,\r\n }),\r\n method: 'POST',\r\n }));\r\n\r\n let responseJson: any = null;\r\n const typeHeader = response.headers.get('content-type');\r\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\r\n responseJson = await response.json();\r\n }\r\n\r\n if (responseJson != null) {\r\n if (response.status === 200) {\r\n return new IdentityTokenResponse(responseJson);\r\n } else if (response.status === 400 && responseJson.TwoFactorProviders2 &&\r\n Object.keys(responseJson.TwoFactorProviders2).length) {\r\n await this.tokenService.clearTwoFactorToken(request.email);\r\n return new IdentityTwoFactorResponse(responseJson);\r\n }\r\n }\r\n\r\n return Promise.reject(new ErrorResponse(responseJson, response.status, true));\r\n }\r\n\r\n async refreshIdentityToken(): Promise {\r\n try {\r\n await this.doRefreshToken();\r\n } catch (e) {\r\n return Promise.reject(null);\r\n }\r\n }\r\n\r\n // Account APIs\r\n\r\n async getProfile(): Promise {\r\n const r = await this.send('GET', '/accounts/profile', null, true, true);\r\n return new ProfileResponse(r);\r\n }\r\n\r\n async getUserBilling(): Promise {\r\n const r = await this.send('GET', '/accounts/billing', null, true, true);\r\n return new BillingResponse(r);\r\n }\r\n\r\n async putProfile(request: UpdateProfileRequest): Promise {\r\n const r = await this.send('PUT', '/accounts/profile', request, true, true);\r\n return new ProfileResponse(r);\r\n }\r\n\r\n async postPrelogin(request: PreloginRequest): Promise {\r\n const r = await this.send('POST', '/accounts/prelogin', request, false, true);\r\n return new PreloginResponse(r);\r\n }\r\n\r\n postEmailToken(request: EmailTokenRequest): Promise {\r\n return this.send('POST', '/accounts/email-token', request, true, false);\r\n }\r\n\r\n postEmail(request: EmailRequest): Promise {\r\n return this.send('POST', '/accounts/email', request, true, false);\r\n }\r\n\r\n postPassword(request: PasswordRequest): Promise {\r\n return this.send('POST', '/accounts/password', request, true, false);\r\n }\r\n\r\n postSecurityStamp(request: PasswordVerificationRequest): Promise {\r\n return this.send('POST', '/accounts/security-stamp', request, true, false);\r\n }\r\n\r\n deleteAccount(request: PasswordVerificationRequest): Promise {\r\n return this.send('DELETE', '/accounts', request, true, false);\r\n }\r\n\r\n async getAccountRevisionDate(): Promise {\r\n const r = await this.send('GET', '/accounts/revision-date', null, true, true);\r\n return r as number;\r\n }\r\n\r\n postPasswordHint(request: PasswordHintRequest): Promise {\r\n return this.send('POST', '/accounts/password-hint', request, false, false);\r\n }\r\n\r\n postRegister(request: RegisterRequest): Promise {\r\n return this.send('POST', '/accounts/register', request, false, false);\r\n }\r\n\r\n postPremium(data: FormData): Promise {\r\n return this.send('POST', '/accounts/premium', data, true, false);\r\n }\r\n\r\n postReinstatePremium(): Promise {\r\n return this.send('POST', '/accounts/reinstate-premium', null, true, false);\r\n }\r\n\r\n postCancelPremium(): Promise {\r\n return this.send('POST', '/accounts/cancel-premium', null, true, false);\r\n }\r\n\r\n postAccountStorage(request: StorageRequest): Promise {\r\n return this.send('POST', '/accounts/storage', request, true, false);\r\n }\r\n\r\n postAccountPayment(request: PaymentRequest): Promise {\r\n return this.send('POST', '/accounts/payment', request, true, false);\r\n }\r\n\r\n postAccountLicense(data: FormData): Promise {\r\n return this.send('POST', '/accounts/license', data, true, false);\r\n }\r\n\r\n postAccountKeys(request: KeysRequest): Promise {\r\n return this.send('POST', '/accounts/keys', request, true, false);\r\n }\r\n\r\n postAccountKey(request: UpdateKeyRequest): Promise {\r\n return this.send('POST', '/accounts/key', request, true, false);\r\n }\r\n\r\n postAccountVerifyEmail(): Promise {\r\n return this.send('POST', '/accounts/verify-email', null, true, false);\r\n }\r\n\r\n postAccountVerifyEmailToken(request: VerifyEmailRequest): Promise {\r\n return this.send('POST', '/accounts/verify-email-token', request, false, false);\r\n }\r\n\r\n postAccountRecoverDelete(request: DeleteRecoverRequest): Promise {\r\n return this.send('POST', '/accounts/delete-recover', request, false, false);\r\n }\r\n\r\n postAccountRecoverDeleteToken(request: VerifyDeleteRecoverRequest): Promise {\r\n return this.send('POST', '/accounts/delete-recover-token', request, false, false);\r\n }\r\n\r\n postAccountKdf(request: KdfRequest): Promise {\r\n return this.send('POST', '/accounts/kdf', request, true, false);\r\n }\r\n\r\n // Folder APIs\r\n\r\n async getFolder(id: string): Promise {\r\n const r = await this.send('GET', '/folders/' + id, null, true, true);\r\n return new FolderResponse(r);\r\n }\r\n\r\n async postFolder(request: FolderRequest): Promise {\r\n const r = await this.send('POST', '/folders', request, true, true);\r\n return new FolderResponse(r);\r\n }\r\n\r\n async putFolder(id: string, request: FolderRequest): Promise {\r\n const r = await this.send('PUT', '/folders/' + id, request, true, true);\r\n return new FolderResponse(r);\r\n }\r\n\r\n deleteFolder(id: string): Promise {\r\n return this.send('DELETE', '/folders/' + id, null, true, false);\r\n }\r\n\r\n // Cipher APIs\r\n\r\n async getCipher(id: string): Promise {\r\n const r = await this.send('GET', '/ciphers/' + id, null, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async getCipherAdmin(id: string): Promise {\r\n const r = await this.send('GET', '/ciphers/' + id + '/admin', null, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async getCiphersOrganization(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/ciphers/organization-details?organizationId=' + organizationId,\r\n null, true, true);\r\n return new ListResponse(r, CipherResponse);\r\n }\r\n\r\n async postCipher(request: CipherRequest): Promise {\r\n const r = await this.send('POST', '/ciphers', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async postCipherCreate(request: CipherCreateRequest): Promise {\r\n const r = await this.send('POST', '/ciphers/create', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async postCipherAdmin(request: CipherCreateRequest): Promise {\r\n const r = await this.send('POST', '/ciphers/admin', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async putCipher(id: string, request: CipherRequest): Promise {\r\n const r = await this.send('PUT', '/ciphers/' + id, request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async putCipherAdmin(id: string, request: CipherRequest): Promise {\r\n const r = await this.send('PUT', '/ciphers/' + id + '/admin', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n deleteCipher(id: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id, null, true, false);\r\n }\r\n\r\n deleteCipherAdmin(id: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id + '/admin', null, true, false);\r\n }\r\n\r\n deleteManyCiphers(request: CipherBulkDeleteRequest): Promise {\r\n return this.send('DELETE', '/ciphers', request, true, false);\r\n }\r\n\r\n putMoveCiphers(request: CipherBulkMoveRequest): Promise {\r\n return this.send('PUT', '/ciphers/move', request, true, false);\r\n }\r\n\r\n async putShareCipher(id: string, request: CipherShareRequest): Promise {\r\n const r = await this.send('PUT', '/ciphers/' + id + '/share', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n putShareCiphers(request: CipherBulkShareRequest): Promise {\r\n return this.send('PUT', '/ciphers/share', request, true, false);\r\n }\r\n\r\n putCipherCollections(id: string, request: CipherCollectionsRequest): Promise {\r\n return this.send('PUT', '/ciphers/' + id + '/collections', request, true, false);\r\n }\r\n\r\n putCipherCollectionsAdmin(id: string, request: CipherCollectionsRequest): Promise {\r\n return this.send('PUT', '/ciphers/' + id + '/collections-admin', request, true, false);\r\n }\r\n\r\n postPurgeCiphers(request: PasswordVerificationRequest, organizationId: string = null): Promise {\r\n let path = '/ciphers/purge';\r\n if (organizationId != null) {\r\n path += '?organizationId=' + organizationId;\r\n }\r\n return this.send('POST', path, request, true, false);\r\n }\r\n\r\n postImportCiphers(request: ImportCiphersRequest): Promise {\r\n return this.send('POST', '/ciphers/import', request, true, false);\r\n }\r\n\r\n postImportOrganizationCiphers(organizationId: string, request: ImportOrganizationCiphersRequest): Promise {\r\n return this.send('POST', '/ciphers/import-organization?organizationId=' + organizationId, request, true, false);\r\n }\r\n\r\n // Attachments APIs\r\n\r\n async postCipherAttachment(id: string, data: FormData): Promise {\r\n const r = await this.send('POST', '/ciphers/' + id + '/attachment', data, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async postCipherAttachmentAdmin(id: string, data: FormData): Promise {\r\n const r = await this.send('POST', '/ciphers/' + id + '/attachment-admin', data, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n deleteCipherAttachment(id: string, attachmentId: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId, null, true, false);\r\n }\r\n\r\n deleteCipherAttachmentAdmin(id: string, attachmentId: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId + '/admin', null, true, false);\r\n }\r\n\r\n postShareCipherAttachment(id: string, attachmentId: string, data: FormData,\r\n organizationId: string): Promise {\r\n return this.send('POST', '/ciphers/' + id + '/attachment/' +\r\n attachmentId + '/share?organizationId=' + organizationId, data, true, false);\r\n }\r\n\r\n // Collections APIs\r\n\r\n async getCollectionDetails(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/details',\r\n null, true, true);\r\n return new CollectionGroupDetailsResponse(r);\r\n }\r\n\r\n async getUserCollections(): Promise> {\r\n const r = await this.send('GET', '/collections', null, true, true);\r\n return new ListResponse(r, CollectionResponse);\r\n }\r\n\r\n async getCollections(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections', null, true, true);\r\n return new ListResponse(r, CollectionResponse);\r\n }\r\n\r\n async getCollectionUsers(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/users',\r\n null, true, true);\r\n return r.map((dr: any) => new SelectionReadOnlyResponse(dr));\r\n }\r\n\r\n async postCollection(organizationId: string, request: CollectionRequest): Promise {\r\n const r = await this.send('POST', '/organizations/' + organizationId + '/collections', request, true, true);\r\n return new CollectionResponse(r);\r\n }\r\n\r\n async putCollection(organizationId: string, id: string, request: CollectionRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id,\r\n request, true, true);\r\n return new CollectionResponse(r);\r\n }\r\n\r\n async putCollectionUsers(organizationId: string, id: string, request: SelectionReadOnlyRequest[]): Promise {\r\n await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id + '/users',\r\n request, true, false);\r\n }\r\n\r\n deleteCollection(organizationId: string, id: string): Promise {\r\n return this.send('DELETE', '/organizations/' + organizationId + '/collections/' + id, null, true, false);\r\n }\r\n\r\n deleteCollectionUser(organizationId: string, id: string, organizationUserId: string): Promise {\r\n return this.send('DELETE',\r\n '/organizations/' + organizationId + '/collections/' + id + '/user/' + organizationUserId,\r\n null, true, false);\r\n }\r\n\r\n // Groups APIs\r\n\r\n async getGroupDetails(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/details',\r\n null, true, true);\r\n return new GroupDetailsResponse(r);\r\n }\r\n\r\n async getGroups(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups', null, true, true);\r\n return new ListResponse(r, GroupResponse);\r\n }\r\n\r\n async getGroupUsers(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/users',\r\n null, true, true);\r\n return r;\r\n }\r\n\r\n async postGroup(organizationId: string, request: GroupRequest): Promise {\r\n const r = await this.send('POST', '/organizations/' + organizationId + '/groups', request, true, true);\r\n return new GroupResponse(r);\r\n }\r\n\r\n async putGroup(organizationId: string, id: string, request: GroupRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id, request, true, true);\r\n return new GroupResponse(r);\r\n }\r\n\r\n async putGroupUsers(organizationId: string, id: string, request: string[]): Promise {\r\n await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id + '/users', request, true, false);\r\n }\r\n\r\n deleteGroup(organizationId: string, id: string): Promise {\r\n return this.send('DELETE', '/organizations/' + organizationId + '/groups/' + id, null, true, false);\r\n }\r\n\r\n deleteGroupUser(organizationId: string, id: string, organizationUserId: string): Promise {\r\n return this.send('DELETE',\r\n '/organizations/' + organizationId + '/groups/' + id + '/user/' + organizationUserId, null, true, false);\r\n }\r\n\r\n // Organization User APIs\r\n\r\n async getOrganizationUser(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id, null, true, true);\r\n return new OrganizationUserDetailsResponse(r);\r\n }\r\n\r\n async getOrganizationUserGroups(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id + '/groups',\r\n null, true, true);\r\n return r;\r\n }\r\n\r\n async getOrganizationUsers(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/users', null, true, true);\r\n return new ListResponse(r, OrganizationUserUserDetailsResponse);\r\n }\r\n\r\n postOrganizationUserInvite(organizationId: string, request: OrganizationUserInviteRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/invite', request, true, false);\r\n }\r\n\r\n postOrganizationUserReinvite(organizationId: string, id: string): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/reinvite', null, true, false);\r\n }\r\n\r\n postOrganizationUserAccept(organizationId: string, id: string,\r\n request: OrganizationUserAcceptRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/accept', request, true, false);\r\n }\r\n\r\n postOrganizationUserConfirm(organizationId: string, id: string,\r\n request: OrganizationUserConfirmRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/confirm',\r\n request, true, false);\r\n }\r\n\r\n putOrganizationUser(organizationId: string, id: string, request: OrganizationUserUpdateRequest): Promise {\r\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id, request, true, false);\r\n }\r\n\r\n putOrganizationUserGroups(organizationId: string, id: string,\r\n request: OrganizationUserUpdateGroupsRequest): Promise {\r\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id + '/groups', request, true, false);\r\n }\r\n\r\n deleteOrganizationUser(organizationId: string, id: string): Promise {\r\n return this.send('DELETE', '/organizations/' + organizationId + '/users/' + id, null, true, false);\r\n }\r\n\r\n // Sync APIs\r\n\r\n async getSync(): Promise {\r\n const path = this.isDesktopClient || this.isWebClient ? '/sync?excludeDomains=true' : '/sync';\r\n const r = await this.send('GET', path, null, true, true);\r\n return new SyncResponse(r);\r\n }\r\n\r\n async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/import', request, true, false);\r\n }\r\n\r\n // Settings APIs\r\n\r\n async getSettingsDomains(): Promise {\r\n const r = await this.send('GET', '/settings/domains', null, true, true);\r\n return new DomainsResponse(r);\r\n }\r\n\r\n async putSettingsDomains(request: UpdateDomainsRequest): Promise {\r\n const r = await this.send('PUT', '/settings/domains', request, true, true);\r\n return new DomainsResponse(r);\r\n }\r\n\r\n // Two-factor APIs\r\n\r\n async getTwoFactorProviders(): Promise> {\r\n const r = await this.send('GET', '/two-factor', null, true, true);\r\n return new ListResponse(r, TwoFactorProviderResponse);\r\n }\r\n\r\n async getTwoFactorOrganizationProviders(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/two-factor', null, true, true);\r\n return new ListResponse(r, TwoFactorProviderResponse);\r\n }\r\n\r\n async getTwoFactorAuthenticator(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-authenticator', request, true, true);\r\n return new TwoFactorAuthenticatorResponse(r);\r\n }\r\n\r\n async getTwoFactorEmail(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-email', request, true, true);\r\n return new TwoFactorEmailResponse(r);\r\n }\r\n\r\n async getTwoFactorDuo(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-duo', request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async getTwoFactorOrganizationDuo(organizationId: string,\r\n request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/organizations/' + organizationId + '/two-factor/get-duo',\r\n request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async getTwoFactorYubiKey(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-yubikey', request, true, true);\r\n return new TwoFactorYubiKeyResponse(r);\r\n }\r\n\r\n async getTwoFactorU2f(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-u2f', request, true, true);\r\n return new TwoFactorU2fResponse(r);\r\n }\r\n\r\n async getTwoFactorU2fChallenge(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-u2f-challenge', request, true, true);\r\n return new ChallengeResponse(r);\r\n }\r\n\r\n async getTwoFactorRecover(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-recover', request, true, true);\r\n return new TwoFactorRecoverResponse(r);\r\n }\r\n\r\n async putTwoFactorAuthenticator(\r\n request: UpdateTwoFactorAuthenticatorRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/authenticator', request, true, true);\r\n return new TwoFactorAuthenticatorResponse(r);\r\n }\r\n\r\n async putTwoFactorEmail(request: UpdateTwoFactorEmailRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/email', request, true, true);\r\n return new TwoFactorEmailResponse(r);\r\n }\r\n\r\n async putTwoFactorDuo(request: UpdateTwoFactorDuoRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/duo', request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async putTwoFactorOrganizationDuo(organizationId: string,\r\n request: UpdateTwoFactorDuoRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/duo', request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async putTwoFactorYubiKey(request: UpdateTwoFactorYubioOtpRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/yubikey', request, true, true);\r\n return new TwoFactorYubiKeyResponse(r);\r\n }\r\n\r\n async putTwoFactorU2f(request: UpdateTwoFactorU2fRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/u2f', request, true, true);\r\n return new TwoFactorU2fResponse(r);\r\n }\r\n\r\n async deleteTwoFactorU2f(request: UpdateTwoFactorU2fDeleteRequest): Promise {\r\n const r = await this.send('DELETE', '/two-factor/u2f', request, true, true);\r\n return new TwoFactorU2fResponse(r);\r\n }\r\n\r\n async putTwoFactorDisable(request: TwoFactorProviderRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/disable', request, true, true);\r\n return new TwoFactorProviderResponse(r);\r\n }\r\n\r\n async putTwoFactorOrganizationDisable(organizationId: string,\r\n request: TwoFactorProviderRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/disable',\r\n request, true, true);\r\n return new TwoFactorProviderResponse(r);\r\n }\r\n\r\n postTwoFactorRecover(request: TwoFactorRecoveryRequest): Promise {\r\n return this.send('POST', '/two-factor/recover', request, false, false);\r\n }\r\n\r\n postTwoFactorEmailSetup(request: TwoFactorEmailRequest): Promise {\r\n return this.send('POST', '/two-factor/send-email', request, true, false);\r\n }\r\n\r\n postTwoFactorEmail(request: TwoFactorEmailRequest): Promise {\r\n return this.send('POST', '/two-factor/send-email-login', request, false, false);\r\n }\r\n\r\n // Organization APIs\r\n\r\n async getOrganization(id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + id, null, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n async getOrganizationBilling(id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + id + '/billing', null, true, true);\r\n return new OrganizationBillingResponse(r);\r\n }\r\n\r\n async getOrganizationLicense(id: string, installationId: string): Promise {\r\n return this.send('GET', '/organizations/' + id + '/license?installationId=' + installationId,\r\n null, true, true);\r\n }\r\n\r\n async postOrganization(request: OrganizationCreateRequest): Promise {\r\n const r = await this.send('POST', '/organizations', request, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n async putOrganization(id: string, request: OrganizationUpdateRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + id, request, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n postLeaveOrganization(id: string): Promise {\r\n return this.send('POST', '/organizations/' + id + '/leave', null, true, false);\r\n }\r\n\r\n async postOrganizationLicense(data: FormData): Promise {\r\n const r = await this.send('POST', '/organizations/license', data, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n async postOrganizationLicenseUpdate(id: string, data: FormData): Promise {\r\n return this.send('POST', '/organizations/' + id + '/license', data, true, false);\r\n }\r\n\r\n postOrganizationSeat(id: string, request: SeatRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/seat', request, true, false);\r\n }\r\n\r\n postOrganizationStorage(id: string, request: StorageRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/storage', request, true, false);\r\n }\r\n\r\n postOrganizationPayment(id: string, request: PaymentRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/payment', request, true, false);\r\n }\r\n\r\n postOrganizationVerifyBank(id: string, request: VerifyBankRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/verify-bank', request, true, false);\r\n }\r\n\r\n postOrganizationCancel(id: string): Promise {\r\n return this.send('POST', '/organizations/' + id + '/cancel', null, true, false);\r\n }\r\n\r\n postOrganizationReinstate(id: string): Promise {\r\n return this.send('POST', '/organizations/' + id + '/reinstate', null, true, false);\r\n }\r\n\r\n deleteOrganization(id: string, request: PasswordVerificationRequest): Promise {\r\n return this.send('DELETE', '/organizations/' + id, request, true, false);\r\n }\r\n\r\n // Event APIs\r\n\r\n async getEvents(start: string, end: string, token: string): Promise> {\r\n const r = await this.send('GET', this.addEventParameters('/events', start, end, token), null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n async getEventsCipher(id: string, start: string, end: string,\r\n token: string): Promise> {\r\n const r = await this.send('GET', this.addEventParameters('/ciphers/' + id + '/events', start, end, token),\r\n null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n async getEventsOrganization(id: string, start: string, end: string,\r\n token: string): Promise> {\r\n const r = await this.send('GET', this.addEventParameters('/organizations/' + id + '/events', start, end, token),\r\n null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n async getEventsOrganizationUser(organizationId: string, id: string,\r\n start: string, end: string, token: string): Promise> {\r\n const r = await this.send('GET',\r\n this.addEventParameters('/organizations/' + organizationId + '/users/' + id + '/events', start, end, token),\r\n null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n // User APIs\r\n\r\n async getUserPublicKey(id: string): Promise {\r\n const r = await this.send('GET', '/users/' + id + '/public-key', null, true, true);\r\n return new UserKeyResponse(r);\r\n }\r\n\r\n // Helpers\r\n\r\n async getActiveBearerToken(): Promise {\r\n let accessToken = await this.tokenService.getToken();\r\n if (this.tokenService.tokenNeedsRefresh()) {\r\n const tokenResponse = await this.doRefreshToken();\r\n accessToken = tokenResponse.accessToken;\r\n }\r\n return accessToken;\r\n }\r\n\r\n fetch(request: Request): Promise {\r\n if (request.method === 'GET') {\r\n request.headers.set('Cache-Control', 'no-cache');\r\n request.headers.set('Pragma', 'no-cache');\r\n }\r\n return fetch(request);\r\n }\r\n\r\n private async send(method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, body: any,\r\n authed: boolean, hasResponse: boolean): Promise {\r\n const headers = new Headers({\r\n 'Device-Type': this.deviceType,\r\n });\r\n\r\n const requestInit: RequestInit = {\r\n cache: 'no-cache',\r\n credentials: this.getCredentials(),\r\n method: method,\r\n };\r\n\r\n if (authed) {\r\n const authHeader = await this.getActiveBearerToken();\r\n headers.set('Authorization', 'Bearer ' + authHeader);\r\n }\r\n if (body != null) {\r\n if (typeof body === 'string') {\r\n requestInit.body = body;\r\n headers.set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');\r\n } else if (typeof body === 'object') {\r\n if (body instanceof FormData) {\r\n requestInit.body = body;\r\n } else {\r\n headers.set('Content-Type', 'application/json; charset=utf-8');\r\n requestInit.body = JSON.stringify(body);\r\n }\r\n }\r\n }\r\n if (hasResponse) {\r\n headers.set('Accept', 'application/json');\r\n }\r\n\r\n requestInit.headers = headers;\r\n const response = await this.fetch(new Request(this.apiBaseUrl + path, requestInit));\r\n\r\n if (hasResponse && response.status === 200) {\r\n const responseJson = await response.json();\r\n return responseJson;\r\n } else if (response.status !== 200) {\r\n const error = await this.handleError(response, false);\r\n return Promise.reject(error);\r\n }\r\n }\r\n\r\n private async handleError(response: Response, tokenError: boolean): Promise {\r\n if ((tokenError && response.status === 400) || response.status === 401 || response.status === 403) {\r\n await this.logoutCallback(true);\r\n return null;\r\n }\r\n\r\n let responseJson: any = null;\r\n const typeHeader = response.headers.get('content-type');\r\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\r\n responseJson = await response.json();\r\n }\r\n\r\n return new ErrorResponse(responseJson, response.status, tokenError);\r\n }\r\n\r\n private async doRefreshToken(): Promise {\r\n const refreshToken = await this.tokenService.getRefreshToken();\r\n if (refreshToken == null || refreshToken === '') {\r\n throw new Error();\r\n }\r\n\r\n const decodedToken = this.tokenService.decodeToken();\r\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\r\n body: this.qsStringify({\r\n grant_type: 'refresh_token',\r\n client_id: decodedToken.client_id,\r\n refresh_token: refreshToken,\r\n }),\r\n cache: 'no-cache',\r\n credentials: this.getCredentials(),\r\n headers: new Headers({\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\r\n 'Accept': 'application/json',\r\n 'Device-Type': this.deviceType,\r\n }),\r\n method: 'POST',\r\n }));\r\n\r\n if (response.status === 200) {\r\n const responseJson = await response.json();\r\n const tokenResponse = new IdentityTokenResponse(responseJson);\r\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\r\n return tokenResponse;\r\n } else {\r\n const error = await this.handleError(response, true);\r\n return Promise.reject(error);\r\n }\r\n }\r\n\r\n private qsStringify(params: any): string {\r\n return Object.keys(params).map((key) => {\r\n return encodeURIComponent(key) + '=' + encodeURIComponent(params[key]);\r\n }).join('&');\r\n }\r\n\r\n private getCredentials(): RequestCredentials {\r\n if (!this.isWebClient || this.usingBaseUrl) {\r\n return 'include';\r\n }\r\n return undefined;\r\n }\r\n\r\n private addEventParameters(base: string, start: string, end: string, token: string) {\r\n if (start != null) {\r\n base += ('?start=' + start);\r\n }\r\n if (end != null) {\r\n base += (base.indexOf('?') > -1 ? '&' : '?');\r\n base += ('end=' + end);\r\n }\r\n if (token != null) {\r\n base += (base.indexOf('?') > -1 ? '&' : '?');\r\n base += ('continuationToken=' + token);\r\n }\r\n return base;\r\n }\r\n}\r\n","import { PaymentMethodType } from '../../enums/paymentMethodType';\r\n\r\nexport class BillingResponse {\r\n storageName: string;\r\n storageGb: number;\r\n maxStorageGb: number;\r\n paymentSource: BillingSourceResponse;\r\n subscription: BillingSubscriptionResponse;\r\n upcomingInvoice: BillingInvoiceResponse;\r\n charges: BillingChargeResponse[] = [];\r\n license: any;\r\n expiration: string;\r\n\r\n constructor(response: any) {\r\n this.storageName = response.StorageName;\r\n this.storageGb = response.StorageGb;\r\n this.maxStorageGb = response.MaxStorageGb;\r\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\r\n this.subscription = response.Subscription == null ?\r\n null : new BillingSubscriptionResponse(response.Subscription);\r\n this.upcomingInvoice = response.UpcomingInvoice == null ?\r\n null : new BillingInvoiceResponse(response.UpcomingInvoice);\r\n if (response.Charges != null) {\r\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\r\n }\r\n this.license = response.License;\r\n this.expiration = response.Expiration;\r\n }\r\n}\r\n\r\nexport class BillingSourceResponse {\r\n type: PaymentMethodType;\r\n cardBrand: string;\r\n description: string;\r\n needsVerification: boolean;\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.cardBrand = response.CardBrand;\r\n this.description = response.Description;\r\n this.needsVerification = response.NeedsVerification;\r\n }\r\n}\r\n\r\nexport class BillingSubscriptionResponse {\r\n trialStartDate: string;\r\n trialEndDate: string;\r\n periodStartDate: string;\r\n periodEndDate: string;\r\n cancelledDate: string;\r\n cancelAtEndDate: boolean;\r\n status: string;\r\n cancelled: boolean;\r\n items: BillingSubscriptionItemResponse[] = [];\r\n\r\n constructor(response: any) {\r\n this.trialEndDate = response.TrialStartDate;\r\n this.trialEndDate = response.TrialEndDate;\r\n this.periodStartDate = response.PeriodStartDate;\r\n this.periodEndDate = response.PeriodEndDate;\r\n this.cancelledDate = response.CancelledDate;\r\n this.cancelAtEndDate = response.CancelAtEndDate;\r\n this.status = response.Status;\r\n this.cancelled = response.Cancelled;\r\n if (response.Items != null) {\r\n this.items = response.Items.map((i: any) => new BillingSubscriptionItemResponse(i));\r\n }\r\n }\r\n}\r\n\r\nexport class BillingSubscriptionItemResponse {\r\n name: string;\r\n amount: number;\r\n quantity: number;\r\n interval: string;\r\n\r\n constructor(response: any) {\r\n this.name = response.Name;\r\n this.amount = response.Amount;\r\n this.quantity = response.Quantity;\r\n this.interval = response.Interval;\r\n }\r\n}\r\n\r\nexport class BillingInvoiceResponse {\r\n date: string;\r\n amount: number;\r\n\r\n constructor(response: any) {\r\n this.date = response.Date;\r\n this.amount = response.Amount;\r\n }\r\n}\r\n\r\nexport class BillingChargeResponse {\r\n createdDate: string;\r\n amount: number;\r\n paymentSource: BillingSourceResponse;\r\n status: string;\r\n failureMessage: string;\r\n refunded: boolean;\r\n partiallyRefunded: boolean;\r\n refundedAmount: number;\r\n invoiceId: string;\r\n\r\n constructor(response: any) {\r\n this.createdDate = response.CreatedDate;\r\n this.amount = response.Amount;\r\n this.paymentSource = response.PaymentSource != null ? new BillingSourceResponse(response.PaymentSource) : null;\r\n this.status = response.Status;\r\n this.failureMessage = response.FailureMessage;\r\n this.refunded = response.Refunded;\r\n this.partiallyRefunded = response.PartiallyRefunded;\r\n this.refundedAmount = response.RefundedAmount;\r\n this.invoiceId = response.InvoiceId;\r\n }\r\n}\r\n","import { AttachmentResponse } from './attachmentResponse';\r\nimport { PasswordHistoryResponse } from './passwordHistoryResponse';\r\n\r\nimport { CardApi } from '../api/cardApi';\r\nimport { FieldApi } from '../api/fieldApi';\r\nimport { IdentityApi } from '../api/identityApi';\r\nimport { LoginApi } from '../api/loginApi';\r\nimport { SecureNoteApi } from '../api/secureNoteApi';\r\n\r\nexport class CipherResponse {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n type: number;\r\n name: string;\r\n notes: string;\r\n fields: FieldApi[];\r\n login: LoginApi;\r\n card: CardApi;\r\n identity: IdentityApi;\r\n secureNote: SecureNoteApi;\r\n favorite: boolean;\r\n edit: boolean;\r\n organizationUseTotp: boolean;\r\n revisionDate: string;\r\n attachments: AttachmentResponse[];\r\n passwordHistory: PasswordHistoryResponse[];\r\n collectionIds: string[];\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.organizationId = response.OrganizationId;\r\n this.folderId = response.FolderId || null;\r\n this.type = response.Type;\r\n this.name = response.Name;\r\n this.notes = response.Notes;\r\n this.favorite = response.Favorite || false;\r\n this.edit = response.Edit || true;\r\n this.organizationUseTotp = response.OrganizationUseTotp;\r\n this.revisionDate = response.RevisionDate;\r\n\r\n if (response.Login != null) {\r\n this.login = new LoginApi(response.Login);\r\n }\r\n\r\n if (response.Card != null) {\r\n this.card = new CardApi(response.Card);\r\n }\r\n\r\n if (response.Identity != null) {\r\n this.identity = new IdentityApi(response.Identity);\r\n }\r\n\r\n if (response.SecureNote != null) {\r\n this.secureNote = new SecureNoteApi(response.SecureNote);\r\n }\r\n\r\n if (response.Fields != null) {\r\n this.fields = [];\r\n response.Fields.forEach((field: any) => {\r\n this.fields.push(new FieldApi(field));\r\n });\r\n }\r\n\r\n if (response.Attachments != null) {\r\n this.attachments = [];\r\n response.Attachments.forEach((attachment: any) => {\r\n this.attachments.push(new AttachmentResponse(attachment));\r\n });\r\n }\r\n\r\n if (response.PasswordHistory != null) {\r\n this.passwordHistory = [];\r\n response.PasswordHistory.forEach((ph: any) => {\r\n this.passwordHistory.push(new PasswordHistoryResponse(ph));\r\n });\r\n }\r\n\r\n if (response.CollectionIds) {\r\n this.collectionIds = [];\r\n response.CollectionIds.forEach((id: string) => {\r\n this.collectionIds.push(id);\r\n });\r\n }\r\n }\r\n}\r\n","import { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\n\nexport class CollectionResponse {\n id: string;\n organizationId: string;\n name: string;\n\n constructor(response: any) {\n this.id = response.Id;\n this.organizationId = response.OrganizationId;\n this.name = response.Name;\n }\n}\n\nexport class CollectionDetailsResponse extends CollectionResponse {\n readOnly: boolean;\n\n constructor(response: any) {\n super(response);\n this.readOnly = response.ReadOnly || false;\n }\n}\n\nexport class CollectionGroupDetailsResponse extends CollectionResponse {\n groups: SelectionReadOnlyResponse[] = [];\n\n constructor(response: any) {\n super(response);\n if (response.Groups != null) {\n this.groups = response.Groups.map((g: any) => new SelectionReadOnlyResponse(g));\n }\n }\n}\n","import { GlobalDomainResponse } from './globalDomainResponse';\r\n\r\nexport class DomainsResponse {\r\n equivalentDomains: string[][];\r\n globalEquivalentDomains: GlobalDomainResponse[] = [];\r\n\r\n constructor(response: any) {\r\n this.equivalentDomains = response.EquivalentDomains;\r\n\r\n this.globalEquivalentDomains = [];\r\n if (response.GlobalEquivalentDomains) {\r\n response.GlobalEquivalentDomains.forEach((domain: any) => {\r\n this.globalEquivalentDomains.push(new GlobalDomainResponse(domain));\r\n });\r\n }\r\n }\r\n}\r\n","export class FolderResponse {\r\n id: string;\r\n name: string;\r\n revisionDate: string;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.name = response.Name;\r\n this.revisionDate = response.RevisionDate;\r\n }\r\n}\r\n","import { PlanType } from '../../enums/planType';\n\nexport class OrganizationResponse {\n id: string;\n name: string;\n businessName: string;\n businessAddress1: string;\n businessAddress2: string;\n businessAddress3: string;\n businessCountry: string;\n businessTaxNumber: string;\n billingEmail: string;\n plan: string;\n planType: PlanType;\n seats: number;\n maxCollections: number;\n maxStorageGb: number;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.name = response.Name;\n this.businessName = response.BusinessName;\n this.businessAddress1 = response.BusinessAddress1;\n this.businessAddress2 = response.BusinessAddress2;\n this.businessAddress3 = response.BusinessAddress3;\n this.businessCountry = response.BusinessCountry;\n this.businessTaxNumber = response.BusinessTaxNumber;\n this.billingEmail = response.BillingEmail;\n this.plan = response.Plan;\n this.planType = response.PlanType;\n this.seats = response.Seats;\n this.maxCollections = response.MaxCollections;\n this.maxStorageGb = response.MaxStorageGb;\n this.useGroups = response.UseGroups;\n this.useDirectory = response.UseDirectory;\n this.useEvents = response.UseEvents;\n this.useTotp = response.UseTotp;\n this.use2fa = response.Use2fa;\n }\n}\n","import { ProfileOrganizationResponse } from './profileOrganizationResponse';\r\n\r\nexport class ProfileResponse {\r\n id: string;\r\n name: string;\r\n email: string;\r\n emailVerified: boolean;\r\n masterPasswordHint: string;\r\n premium: boolean;\r\n culture: string;\r\n twoFactorEnabled: boolean;\r\n key: string;\r\n privateKey: string;\r\n securityStamp: string;\r\n organizations: ProfileOrganizationResponse[] = [];\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.name = response.Name;\r\n this.email = response.Email;\r\n this.emailVerified = response.EmailVerified;\r\n this.masterPasswordHint = response.MasterPasswordHint;\r\n this.premium = response.Premium;\r\n this.culture = response.Culture;\r\n this.twoFactorEnabled = response.TwoFactorEnabled;\r\n this.key = response.Key;\r\n this.privateKey = response.PrivateKey;\r\n this.securityStamp = response.SecurityStamp;\r\n\r\n if (response.Organizations) {\r\n response.Organizations.forEach((org: any) => {\r\n this.organizations.push(new ProfileOrganizationResponse(org));\r\n });\r\n }\r\n }\r\n}\r\n","import { Utils } from '../misc/utils';\r\n\r\nimport { AppIdService as AppIdServiceAbstraction } from '../abstractions/appId.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nexport class AppIdService implements AppIdServiceAbstraction {\r\n constructor(private storageService: StorageService) {\r\n }\r\n\r\n getAppId(): Promise {\r\n return this.makeAndGetAppId('appId');\r\n }\r\n\r\n getAnonymousAppId(): Promise {\r\n return this.makeAndGetAppId('anonymousAppId');\r\n }\r\n\r\n private async makeAndGetAppId(key: string) {\r\n const existingId = await this.storageService.get(key);\r\n if (existingId != null) {\r\n return existingId;\r\n }\r\n\r\n const guid = Utils.newGuid();\r\n await this.storageService.save(key, guid);\r\n return guid;\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\r\nimport { AuditService as AuditServiceAbstraction } from '../abstractions/audit.service';\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\r\n\r\nconst PwnedPasswordsApi = 'https://api.pwnedpasswords.com/range/';\r\nconst HibpBreachApi = 'https://haveibeenpwned.com/api/v2/breachedaccount/';\r\n\r\nexport class AuditService implements AuditServiceAbstraction {\r\n constructor(private cryptoFunctionService: CryptoFunctionService, private apiService: ApiService) { }\r\n\r\n async passwordLeaked(password: string): Promise {\r\n const hashBytes = await this.cryptoFunctionService.hash(password, 'sha1');\r\n const hash = Utils.fromBufferToHex(hashBytes).toUpperCase();\r\n const hashStart = hash.substr(0, 5);\r\n const hashEnding = hash.substr(5);\r\n\r\n const response = await fetch(new Request(PwnedPasswordsApi + hashStart));\r\n const leakedHashes = await response.text();\r\n const match = leakedHashes.split(/\\r?\\n/).find((v) => {\r\n return v.split(':')[0] === hashEnding;\r\n });\r\n\r\n return match != null ? parseInt(match.split(':')[1], 10) : 0;\r\n }\r\n\r\n async breachedAccounts(username: string): Promise {\r\n const response = await fetch(new Request(HibpBreachApi + username));\r\n if (response.status === 404) {\r\n return [];\r\n } else if (response.status !== 200) {\r\n throw new Error();\r\n }\r\n const responseJson = await response.json();\r\n return responseJson.map((a: any) => new BreachAccountResponse(a));\r\n }\r\n}\r\n","import { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { UriMatchType } from '../enums/uriMatchType';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { Attachment } from '../models/domain/attachment';\r\nimport { Card } from '../models/domain/card';\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport Domain from '../models/domain/domainBase';\r\nimport { Field } from '../models/domain/field';\r\nimport { Identity } from '../models/domain/identity';\r\nimport { Login } from '../models/domain/login';\r\nimport { LoginUri } from '../models/domain/loginUri';\r\nimport { Password } from '../models/domain/password';\r\nimport { SecureNote } from '../models/domain/secureNote';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\r\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\r\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\r\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\r\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\r\nimport { CipherRequest } from '../models/request/cipherRequest';\r\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\r\n\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport { ErrorResponse } from '../models/response/errorResponse';\r\n\r\nimport { AttachmentView } from '../models/view/attachmentView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { PasswordHistoryView } from '../models/view/passwordHistoryView';\r\nimport { View } from '../models/view/view';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService as CipherServiceAbstraction } from '../abstractions/cipher.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { I18nService } from '../abstractions/i18n.service';\r\nimport { SearchService } from '../abstractions/search.service';\r\nimport { SettingsService } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport { sequentialize } from '../misc/sequentialize';\r\nimport { Utils } from '../misc/utils';\r\n\r\nconst Keys = {\r\n ciphersPrefix: 'ciphers_',\r\n localData: 'sitesLocalData',\r\n neverDomains: 'neverDomains',\r\n};\r\n\r\nconst DomainMatchBlacklist = new Map>([\r\n ['google.com', new Set(['script.google.com'])],\r\n]);\r\n\r\nexport class CipherService implements CipherServiceAbstraction {\r\n // tslint:disable-next-line\r\n _decryptedCipherCache: CipherView[];\r\n\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private settingsService: SettingsService, private apiService: ApiService,\r\n private storageService: StorageService, private i18nService: I18nService,\r\n private searchService: () => SearchService) {\r\n }\r\n\r\n get decryptedCipherCache() {\r\n return this._decryptedCipherCache;\r\n }\r\n set decryptedCipherCache(value: CipherView[]) {\r\n this._decryptedCipherCache = value;\r\n if (this.searchService != null) {\r\n if (value == null) {\r\n this.searchService().clearIndex();\r\n } else {\r\n this.searchService().indexCiphers();\r\n }\r\n }\r\n }\r\n\r\n clearCache(): void {\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async encrypt(model: CipherView, key?: SymmetricCryptoKey, originalCipher: Cipher = null): Promise {\r\n // Adjust password history\r\n if (model.id != null) {\r\n if (originalCipher == null) {\r\n originalCipher = await this.get(model.id);\r\n }\r\n if (originalCipher != null) {\r\n const existingCipher = await originalCipher.decrypt();\r\n model.passwordHistory = existingCipher.passwordHistory || [];\r\n if (model.type === CipherType.Login && existingCipher.type === CipherType.Login) {\r\n if (existingCipher.login.password != null && existingCipher.login.password !== '' &&\r\n existingCipher.login.password !== model.login.password) {\r\n const ph = new PasswordHistoryView();\r\n ph.password = existingCipher.login.password;\r\n ph.lastUsedDate = model.login.passwordRevisionDate = new Date();\r\n model.passwordHistory.splice(0, 0, ph);\r\n } else {\r\n model.login.passwordRevisionDate = existingCipher.login.passwordRevisionDate;\r\n }\r\n }\r\n if (existingCipher.hasFields) {\r\n const existingHiddenFields = existingCipher.fields.filter((f) => f.type === FieldType.Hidden &&\r\n f.name != null && f.name !== '' && f.value != null && f.value !== '');\r\n const hiddenFields = model.fields == null ? [] :\r\n model.fields.filter((f) => f.type === FieldType.Hidden && f.name != null && f.name !== '');\r\n existingHiddenFields.forEach((ef) => {\r\n const matchedField = hiddenFields.filter((f) => f.name === ef.name);\r\n if (matchedField.length === 0 || matchedField[0].value !== ef.value) {\r\n const ph = new PasswordHistoryView();\r\n ph.password = ef.name + ': ' + ef.value;\r\n ph.lastUsedDate = new Date();\r\n model.passwordHistory.splice(0, 0, ph);\r\n }\r\n });\r\n }\r\n }\r\n if (model.passwordHistory != null && model.passwordHistory.length === 0) {\r\n model.passwordHistory = null;\r\n } else if (model.passwordHistory != null && model.passwordHistory.length > 5) {\r\n // only save last 5 history\r\n model.passwordHistory = model.passwordHistory.slice(0, 5);\r\n }\r\n }\r\n\r\n const cipher = new Cipher();\r\n cipher.id = model.id;\r\n cipher.folderId = model.folderId;\r\n cipher.favorite = model.favorite;\r\n cipher.organizationId = model.organizationId;\r\n cipher.type = model.type;\r\n cipher.collectionIds = model.collectionIds;\r\n\r\n if (key == null && cipher.organizationId != null) {\r\n key = await this.cryptoService.getOrgKey(cipher.organizationId);\r\n if (key == null) {\r\n throw new Error('Cannot encrypt cipher for organization. No key.');\r\n }\r\n }\r\n await Promise.all([\r\n this.encryptObjProperty(model, cipher, {\r\n name: null,\r\n notes: null,\r\n }, key),\r\n this.encryptCipherData(cipher, model, key),\r\n this.encryptFields(model.fields, key).then((fields) => {\r\n cipher.fields = fields;\r\n }),\r\n this.encryptPasswordHistories(model.passwordHistory, key).then((ph) => {\r\n cipher.passwordHistory = ph;\r\n }),\r\n this.encryptAttachments(model.attachments, key).then((attachments) => {\r\n cipher.attachments = attachments;\r\n }),\r\n ]);\r\n\r\n return cipher;\r\n }\r\n\r\n async encryptAttachments(attachmentsModel: AttachmentView[], key: SymmetricCryptoKey): Promise {\r\n if (attachmentsModel == null || attachmentsModel.length === 0) {\r\n return null;\r\n }\r\n\r\n const promises: Array> = [];\r\n const encAttachments: Attachment[] = [];\r\n attachmentsModel.forEach(async (model) => {\r\n const attachment = new Attachment();\r\n attachment.id = model.id;\r\n attachment.size = model.size;\r\n attachment.sizeName = model.sizeName;\r\n attachment.url = model.url;\r\n const promise = this.encryptObjProperty(model, attachment, {\r\n fileName: null,\r\n }, key).then(async () => {\r\n if (model.key != null) {\r\n attachment.key = await this.cryptoService.encrypt(model.key.key, key);\r\n }\r\n encAttachments.push(attachment);\r\n });\r\n promises.push(promise);\r\n });\r\n\r\n await Promise.all(promises);\r\n return encAttachments;\r\n }\r\n\r\n async encryptFields(fieldsModel: FieldView[], key: SymmetricCryptoKey): Promise {\r\n if (!fieldsModel || !fieldsModel.length) {\r\n return null;\r\n }\r\n\r\n const self = this;\r\n const encFields: Field[] = [];\r\n await fieldsModel.reduce((promise, field) => {\r\n return promise.then(() => {\r\n return self.encryptField(field, key);\r\n }).then((encField: Field) => {\r\n encFields.push(encField);\r\n });\r\n }, Promise.resolve());\r\n\r\n return encFields;\r\n }\r\n\r\n async encryptField(fieldModel: FieldView, key: SymmetricCryptoKey): Promise {\r\n const field = new Field();\r\n field.type = fieldModel.type;\r\n // normalize boolean type field values\r\n if (fieldModel.type === FieldType.Boolean && fieldModel.value !== 'true') {\r\n fieldModel.value = 'false';\r\n }\r\n\r\n await this.encryptObjProperty(fieldModel, field, {\r\n name: null,\r\n value: null,\r\n }, key);\r\n\r\n return field;\r\n }\r\n\r\n async encryptPasswordHistories(phModels: PasswordHistoryView[], key: SymmetricCryptoKey): Promise {\r\n if (!phModels || !phModels.length) {\r\n return null;\r\n }\r\n\r\n const self = this;\r\n const encPhs: Password[] = [];\r\n await phModels.reduce((promise, ph) => {\r\n return promise.then(() => {\r\n return self.encryptPasswordHistory(ph, key);\r\n }).then((encPh: Password) => {\r\n encPhs.push(encPh);\r\n });\r\n }, Promise.resolve());\r\n\r\n return encPhs;\r\n }\r\n\r\n async encryptPasswordHistory(phModel: PasswordHistoryView, key: SymmetricCryptoKey): Promise {\r\n const ph = new Password();\r\n ph.lastUsedDate = phModel.lastUsedDate;\r\n\r\n await this.encryptObjProperty(phModel, ph, {\r\n password: null,\r\n }, key);\r\n\r\n return ph;\r\n }\r\n\r\n async get(id: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const localData = await this.storageService.get(Keys.localData);\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null || !ciphers.hasOwnProperty(id)) {\r\n return null;\r\n }\r\n\r\n return new Cipher(ciphers[id], false, localData ? localData[id] : null);\r\n }\r\n\r\n async getAll(): Promise {\r\n const userId = await this.userService.getUserId();\r\n const localData = await this.storageService.get(Keys.localData);\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n const response: Cipher[] = [];\r\n for (const id in ciphers) {\r\n if (ciphers.hasOwnProperty(id)) {\r\n response.push(new Cipher(ciphers[id], false, localData ? localData[id] : null));\r\n }\r\n }\r\n return response;\r\n }\r\n\r\n @sequentialize(() => 'getAllDecrypted')\r\n async getAllDecrypted(): Promise {\r\n if (this.decryptedCipherCache != null) {\r\n return this.decryptedCipherCache;\r\n }\r\n\r\n const decCiphers: CipherView[] = [];\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n throw new Error('No key.');\r\n }\r\n\r\n const promises: any[] = [];\r\n const ciphers = await this.getAll();\r\n ciphers.forEach((cipher) => {\r\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\r\n });\r\n\r\n await Promise.all(promises);\r\n decCiphers.sort(this.getLocaleSortingFunction());\r\n this.decryptedCipherCache = decCiphers;\r\n return this.decryptedCipherCache;\r\n }\r\n\r\n async getAllDecryptedForGrouping(groupingId: string, folder: boolean = true): Promise {\r\n const ciphers = await this.getAllDecrypted();\r\n\r\n return ciphers.filter((cipher) => {\r\n if (folder && cipher.folderId === groupingId) {\r\n return true;\r\n } else if (!folder && cipher.collectionIds != null && cipher.collectionIds.indexOf(groupingId) > -1) {\r\n return true;\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n\r\n async getAllDecryptedForUrl(url: string, includeOtherTypes?: CipherType[]): Promise {\r\n if (url == null && !includeOtherTypes) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const domain = Utils.getDomain(url);\r\n const eqDomainsPromise = domain == null ? Promise.resolve([]) :\r\n this.settingsService.getEquivalentDomains().then((eqDomains: any[][]) => {\r\n let matches: any[] = [];\r\n eqDomains.forEach((eqDomain) => {\r\n if (eqDomain.length && eqDomain.indexOf(domain) >= 0) {\r\n matches = matches.concat(eqDomain);\r\n }\r\n });\r\n\r\n if (!matches.length) {\r\n matches.push(domain);\r\n }\r\n\r\n return matches;\r\n });\r\n\r\n const result = await Promise.all([eqDomainsPromise, this.getAllDecrypted()]);\r\n const matchingDomains = result[0];\r\n const ciphers = result[1];\r\n\r\n return ciphers.filter((cipher) => {\r\n if (includeOtherTypes && includeOtherTypes.indexOf(cipher.type) > -1) {\r\n return true;\r\n }\r\n\r\n if (url != null && cipher.type === CipherType.Login && cipher.login.uris != null) {\r\n for (let i = 0; i < cipher.login.uris.length; i++) {\r\n const u = cipher.login.uris[i];\r\n if (u.uri == null) {\r\n continue;\r\n }\r\n\r\n switch (u.match) {\r\n case null:\r\n case undefined:\r\n case UriMatchType.Domain:\r\n if (domain != null && u.domain != null && matchingDomains.indexOf(u.domain) > -1) {\r\n if (DomainMatchBlacklist.has(u.domain)) {\r\n const domainUrlHost = Utils.getHost(url);\r\n if (!DomainMatchBlacklist.get(u.domain).has(domainUrlHost)) {\r\n return true;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n break;\r\n case UriMatchType.Host:\r\n const urlHost = Utils.getHost(url);\r\n if (urlHost != null && urlHost === Utils.getHost(u.uri)) {\r\n return true;\r\n }\r\n break;\r\n case UriMatchType.Exact:\r\n if (url === u.uri) {\r\n return true;\r\n }\r\n break;\r\n case UriMatchType.StartsWith:\r\n if (url.startsWith(u.uri)) {\r\n return true;\r\n }\r\n break;\r\n case UriMatchType.RegularExpression:\r\n try {\r\n const regex = new RegExp(u.uri, 'i');\r\n if (regex.test(url)) {\r\n return true;\r\n }\r\n } catch { }\r\n break;\r\n case UriMatchType.Never:\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n\r\n async getAllFromApiForOrganization(organizationId: string): Promise {\r\n const ciphers = await this.apiService.getCiphersOrganization(organizationId);\r\n if (ciphers != null && ciphers.data != null && ciphers.data.length) {\r\n const decCiphers: CipherView[] = [];\r\n const promises: any[] = [];\r\n ciphers.data.forEach((r) => {\r\n const data = new CipherData(r);\r\n const cipher = new Cipher(data);\r\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\r\n });\r\n await Promise.all(promises);\r\n decCiphers.sort(this.getLocaleSortingFunction());\r\n return decCiphers;\r\n } else {\r\n return [];\r\n }\r\n }\r\n\r\n async getLastUsedForUrl(url: string): Promise {\r\n const ciphers = await this.getAllDecryptedForUrl(url);\r\n if (ciphers.length === 0) {\r\n return null;\r\n }\r\n\r\n const sortedCiphers = ciphers.sort(this.sortCiphersByLastUsed);\r\n return sortedCiphers[0];\r\n }\r\n\r\n async updateLastUsedDate(id: string): Promise {\r\n let ciphersLocalData = await this.storageService.get(Keys.localData);\r\n if (!ciphersLocalData) {\r\n ciphersLocalData = {};\r\n }\r\n\r\n if (ciphersLocalData[id]) {\r\n ciphersLocalData[id].lastUsedDate = new Date().getTime();\r\n } else {\r\n ciphersLocalData[id] = {\r\n lastUsedDate: new Date().getTime(),\r\n };\r\n }\r\n\r\n await this.storageService.save(Keys.localData, ciphersLocalData);\r\n\r\n if (this.decryptedCipherCache == null) {\r\n return;\r\n }\r\n\r\n for (let i = 0; i < this.decryptedCipherCache.length; i++) {\r\n const cached = this.decryptedCipherCache[i];\r\n if (cached.id === id) {\r\n cached.localData = ciphersLocalData[id];\r\n break;\r\n }\r\n }\r\n }\r\n\r\n async saveNeverDomain(domain: string): Promise {\r\n if (domain == null) {\r\n return;\r\n }\r\n\r\n let domains = await this.storageService.get<{ [id: string]: any; }>(Keys.neverDomains);\r\n if (!domains) {\r\n domains = {};\r\n }\r\n domains[domain] = null;\r\n await this.storageService.save(Keys.neverDomains, domains);\r\n }\r\n\r\n async saveWithServer(cipher: Cipher): Promise {\r\n let response: CipherResponse;\r\n if (cipher.id == null) {\r\n if (cipher.collectionIds != null) {\r\n const request = new CipherCreateRequest(cipher);\r\n response = await this.apiService.postCipherCreate(request);\r\n } else {\r\n const request = new CipherRequest(cipher);\r\n response = await this.apiService.postCipher(request);\r\n }\r\n cipher.id = response.id;\r\n } else {\r\n const request = new CipherRequest(cipher);\r\n response = await this.apiService.putCipher(cipher.id, request);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const data = new CipherData(response, userId, cipher.collectionIds);\r\n await this.upsert(data);\r\n }\r\n\r\n async shareWithServer(cipher: CipherView, organizationId: string, collectionIds: string[]): Promise {\r\n const attachmentPromises: Array> = [];\r\n if (cipher.attachments != null) {\r\n cipher.attachments.forEach((attachment) => {\r\n if (attachment.key == null) {\r\n attachmentPromises.push(this.shareAttachmentWithServer(attachment, cipher.id, organizationId));\r\n }\r\n });\r\n }\r\n await Promise.all(attachmentPromises);\r\n\r\n cipher.organizationId = organizationId;\r\n cipher.collectionIds = collectionIds;\r\n const encCipher = await this.encrypt(cipher);\r\n const request = new CipherShareRequest(encCipher);\r\n const response = await this.apiService.putShareCipher(cipher.id, request);\r\n const userId = await this.userService.getUserId();\r\n const data = new CipherData(response, userId, collectionIds);\r\n await this.upsert(data);\r\n }\r\n\r\n async shareManyWithServer(ciphers: CipherView[], organizationId: string, collectionIds: string[]): Promise {\r\n const promises: Array> = [];\r\n const encCiphers: Cipher[] = [];\r\n for (const cipher of ciphers) {\r\n cipher.organizationId = organizationId;\r\n cipher.collectionIds = collectionIds;\r\n promises.push(this.encrypt(cipher).then((c) => {\r\n encCiphers.push(c);\r\n }));\r\n }\r\n await Promise.all(promises);\r\n const request = new CipherBulkShareRequest(encCiphers, collectionIds);\r\n await this.apiService.putShareCiphers(request);\r\n const userId = await this.userService.getUserId();\r\n await this.upsert(encCiphers.map((c) => c.toCipherData(userId)));\r\n }\r\n\r\n saveAttachmentWithServer(cipher: Cipher, unencryptedFile: any, admin = false): Promise {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsArrayBuffer(unencryptedFile);\r\n reader.onload = async (evt: any) => {\r\n try {\r\n const cData = await this.saveAttachmentRawWithServer(cipher,\r\n unencryptedFile.name, evt.target.result, admin);\r\n resolve(cData);\r\n } catch (e) {\r\n reject(e);\r\n }\r\n };\r\n reader.onerror = (evt) => {\r\n reject('Error reading file.');\r\n };\r\n });\r\n }\r\n\r\n async saveAttachmentRawWithServer(cipher: Cipher, filename: string,\r\n data: ArrayBuffer, admin = false): Promise {\r\n const key = await this.cryptoService.getOrgKey(cipher.organizationId);\r\n const encFileName = await this.cryptoService.encrypt(filename, key);\r\n\r\n const dataEncKey = await this.cryptoService.makeEncKey(key);\r\n const encData = await this.cryptoService.encryptToBytes(data, dataEncKey[0]);\r\n\r\n const fd = new FormData();\r\n try {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n const blob = new Blob([encData], { type: 'application/octet-stream' });\r\n fd.append('data', blob, encFileName.encryptedString);\r\n } catch (e) {\r\n if (Utils.isNode && !Utils.isBrowser) {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n fd.append('data', Buffer.from(encData) as any, {\r\n filepath: encFileName.encryptedString,\r\n contentType: 'application/octet-stream',\r\n } as any);\r\n } else {\r\n throw e;\r\n }\r\n }\r\n\r\n let response: CipherResponse;\r\n try {\r\n if (admin) {\r\n response = await this.apiService.postCipherAttachmentAdmin(cipher.id, fd);\r\n } else {\r\n response = await this.apiService.postCipherAttachment(cipher.id, fd);\r\n }\r\n } catch (e) {\r\n throw new Error((e as ErrorResponse).getSingleMessage());\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const cData = new CipherData(response, userId, cipher.collectionIds);\r\n if (!admin) {\r\n this.upsert(cData);\r\n }\r\n return new Cipher(cData);\r\n }\r\n\r\n async saveCollectionsWithServer(cipher: Cipher): Promise {\r\n const request = new CipherCollectionsRequest(cipher.collectionIds);\r\n await this.apiService.putCipherCollections(cipher.id, request);\r\n const userId = await this.userService.getUserId();\r\n const data = cipher.toCipherData(userId);\r\n await this.upsert(data);\r\n }\r\n\r\n async upsert(cipher: CipherData | CipherData[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null) {\r\n ciphers = {};\r\n }\r\n\r\n if (cipher instanceof CipherData) {\r\n const c = cipher as CipherData;\r\n ciphers[c.id] = c;\r\n } else {\r\n (cipher as CipherData[]).forEach((c) => {\r\n ciphers[c.id] = c;\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async replace(ciphers: { [id: string]: CipherData; }): Promise {\r\n const userId = await this.userService.getUserId();\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.ciphersPrefix + userId);\r\n this.clearCache();\r\n }\r\n\r\n async moveManyWithServer(ids: string[], folderId: string): Promise {\r\n await this.apiService.putMoveCiphers(new CipherBulkMoveRequest(ids, folderId));\r\n\r\n const userId = await this.userService.getUserId();\r\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null) {\r\n ciphers = {};\r\n }\r\n\r\n ids.forEach((id) => {\r\n if (ciphers.hasOwnProperty(id)) {\r\n ciphers[id].folderId = folderId;\r\n }\r\n });\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async delete(id: string | string[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null) {\r\n return;\r\n }\r\n\r\n if (typeof id === 'string') {\r\n if (ciphers[id] == null) {\r\n return;\r\n }\r\n delete ciphers[id];\r\n } else {\r\n (id as string[]).forEach((i) => {\r\n delete ciphers[i];\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async deleteWithServer(id: string): Promise {\r\n await this.apiService.deleteCipher(id);\r\n await this.delete(id);\r\n }\r\n\r\n async deleteManyWithServer(ids: string[]): Promise {\r\n await this.apiService.deleteManyCiphers(new CipherBulkDeleteRequest(ids));\r\n await this.delete(ids);\r\n }\r\n\r\n async deleteAttachment(id: string, attachmentId: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n\r\n if (ciphers == null || !ciphers.hasOwnProperty(id) || ciphers[id].attachments == null) {\r\n return;\r\n }\r\n\r\n for (let i = 0; i < ciphers[id].attachments.length; i++) {\r\n if (ciphers[id].attachments[i].id === attachmentId) {\r\n ciphers[id].attachments.splice(i, 1);\r\n }\r\n }\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async deleteAttachmentWithServer(id: string, attachmentId: string): Promise {\r\n try {\r\n await this.apiService.deleteCipherAttachment(id, attachmentId);\r\n } catch (e) {\r\n return Promise.reject((e as ErrorResponse).getSingleMessage());\r\n }\r\n await this.deleteAttachment(id, attachmentId);\r\n }\r\n\r\n sortCiphersByLastUsed(a: CipherView, b: CipherView): number {\r\n const aLastUsed = a.localData && a.localData.lastUsedDate ? a.localData.lastUsedDate as number : null;\r\n const bLastUsed = b.localData && b.localData.lastUsedDate ? b.localData.lastUsedDate as number : null;\r\n\r\n if (aLastUsed != null && bLastUsed != null && aLastUsed < bLastUsed) {\r\n return 1;\r\n }\r\n if (aLastUsed != null && bLastUsed == null) {\r\n return -1;\r\n }\r\n\r\n if (bLastUsed != null && aLastUsed != null && aLastUsed > bLastUsed) {\r\n return -1;\r\n }\r\n if (bLastUsed != null && aLastUsed == null) {\r\n return 1;\r\n }\r\n\r\n return 0;\r\n }\r\n\r\n sortCiphersByLastUsedThenName(a: CipherView, b: CipherView): number {\r\n const result = this.sortCiphersByLastUsed(a, b);\r\n if (result !== 0) {\r\n return result;\r\n }\r\n\r\n return this.getLocaleSortingFunction()(a, b);\r\n }\r\n\r\n getLocaleSortingFunction(): (a: CipherView, b: CipherView) => number {\r\n return (a, b) => {\r\n let aName = a.name;\r\n let bName = b.name;\r\n\r\n if (aName == null && bName != null) {\r\n return -1;\r\n }\r\n if (aName != null && bName == null) {\r\n return 1;\r\n }\r\n if (aName == null && bName == null) {\r\n return 0;\r\n }\r\n\r\n const result = this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\r\n aName.localeCompare(bName);\r\n\r\n if (result !== 0 || a.type !== CipherType.Login || b.type !== CipherType.Login) {\r\n return result;\r\n }\r\n\r\n if (a.login.username != null) {\r\n aName += a.login.username;\r\n }\r\n\r\n if (b.login.username != null) {\r\n bName += b.login.username;\r\n }\r\n\r\n return this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\r\n aName.localeCompare(bName);\r\n };\r\n }\r\n\r\n // Helpers\r\n\r\n private async shareAttachmentWithServer(attachmentView: AttachmentView, cipherId: string,\r\n organizationId: string): Promise {\r\n const attachmentResponse = await fetch(new Request(attachmentView.url, { cache: 'no-cache' }));\r\n if (attachmentResponse.status !== 200) {\r\n throw Error('Failed to download attachment: ' + attachmentResponse.status.toString());\r\n }\r\n\r\n const buf = await attachmentResponse.arrayBuffer();\r\n const decBuf = await this.cryptoService.decryptFromBytes(buf, null);\r\n const key = await this.cryptoService.getOrgKey(organizationId);\r\n const encFileName = await this.cryptoService.encrypt(attachmentView.fileName, key);\r\n\r\n const dataEncKey = await this.cryptoService.makeEncKey(key);\r\n const encData = await this.cryptoService.encryptToBytes(decBuf, dataEncKey[0]);\r\n\r\n const fd = new FormData();\r\n try {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n const blob = new Blob([encData], { type: 'application/octet-stream' });\r\n fd.append('data', blob, encFileName.encryptedString);\r\n } catch (e) {\r\n if (Utils.isNode && !Utils.isBrowser) {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n fd.append('data', Buffer.from(encData) as any, {\r\n filepath: encFileName.encryptedString,\r\n contentType: 'application/octet-stream',\r\n } as any);\r\n } else {\r\n throw e;\r\n }\r\n }\r\n\r\n try {\r\n await this.apiService.postShareCipherAttachment(cipherId, attachmentView.id, fd, organizationId);\r\n } catch (e) {\r\n throw new Error((e as ErrorResponse).getSingleMessage());\r\n }\r\n }\r\n\r\n private async encryptObjProperty(model: V, obj: D,\r\n map: any, key: SymmetricCryptoKey): Promise {\r\n const promises = [];\r\n const self = this;\r\n\r\n for (const prop in map) {\r\n if (!map.hasOwnProperty(prop)) {\r\n continue;\r\n }\r\n\r\n // tslint:disable-next-line\r\n (function (theProp, theObj) {\r\n const p = Promise.resolve().then(() => {\r\n const modelProp = (model as any)[(map[theProp] || theProp)];\r\n if (modelProp && modelProp !== '') {\r\n return self.cryptoService.encrypt(modelProp, key);\r\n }\r\n return null;\r\n }).then((val: CipherString) => {\r\n (theObj as any)[theProp] = val;\r\n });\r\n promises.push(p);\r\n })(prop, obj);\r\n }\r\n\r\n await Promise.all(promises);\r\n }\r\n\r\n private async encryptCipherData(cipher: Cipher, model: CipherView, key: SymmetricCryptoKey) {\r\n switch (cipher.type) {\r\n case CipherType.Login:\r\n cipher.login = new Login();\r\n cipher.login.passwordRevisionDate = model.login.passwordRevisionDate;\r\n await this.encryptObjProperty(model.login, cipher.login, {\r\n username: null,\r\n password: null,\r\n totp: null,\r\n }, key);\r\n\r\n if (model.login.uris != null) {\r\n cipher.login.uris = [];\r\n for (let i = 0; i < model.login.uris.length; i++) {\r\n const loginUri = new LoginUri();\r\n loginUri.match = model.login.uris[i].match;\r\n await this.encryptObjProperty(model.login.uris[i], loginUri, {\r\n uri: null,\r\n }, key);\r\n cipher.login.uris.push(loginUri);\r\n }\r\n }\r\n return;\r\n case CipherType.SecureNote:\r\n cipher.secureNote = new SecureNote();\r\n cipher.secureNote.type = model.secureNote.type;\r\n return;\r\n case CipherType.Card:\r\n cipher.card = new Card();\r\n await this.encryptObjProperty(model.card, cipher.card, {\r\n cardholderName: null,\r\n brand: null,\r\n number: null,\r\n expMonth: null,\r\n expYear: null,\r\n code: null,\r\n }, key);\r\n return;\r\n case CipherType.Identity:\r\n cipher.identity = new Identity();\r\n await this.encryptObjProperty(model.identity, cipher.identity, {\r\n title: null,\r\n firstName: null,\r\n middleName: null,\r\n lastName: null,\r\n address1: null,\r\n address2: null,\r\n address3: null,\r\n city: null,\r\n state: null,\r\n postalCode: null,\r\n country: null,\r\n company: null,\r\n email: null,\r\n phone: null,\r\n ssn: null,\r\n username: null,\r\n passportNumber: null,\r\n licenseNumber: null,\r\n }, key);\r\n return;\r\n default:\r\n throw new Error('Unknown cipher type.');\r\n }\r\n }\r\n}\r\n","/**\r\n * Use as a Decorator on async functions, it will prevent multiple 'active' calls as the same time\r\n *\r\n * If a promise was returned from a previous call to this function, that hasn't yet resolved it will\r\n * be returned, instead of calling the original function again\r\n *\r\n * Results are not cached, once the promise has returned, the next call will result in a fresh call\r\n *\r\n * WARNING: The decorator's scope is singleton, so using it on transient objects can lead to memory leaks.\r\n * Read more at https://github.com/bitwarden/jslib/pull/7\r\n */\r\nexport function sequentialize(cacheKey: (args: any[]) => string) {\r\n return (target: any, propertyKey: string | symbol, descriptor: PropertyDescriptor) => {\r\n const originalMethod: () => Promise = descriptor.value;\r\n const caches = new Map>>();\r\n\r\n const getCache = (obj: any) => {\r\n let cache = caches.get(obj);\r\n if (cache != null) {\r\n return cache;\r\n }\r\n cache = new Map>();\r\n caches.set(obj, cache);\r\n return cache;\r\n };\r\n\r\n return {\r\n value: function(...args: any[]) {\r\n const argsCacheKey = cacheKey(args);\r\n const cache = getCache(this);\r\n let response = cache.get(argsCacheKey);\r\n if (response != null) {\r\n return response;\r\n }\r\n\r\n response = originalMethod.apply(this, args).then((val: any) => {\r\n cache.delete(argsCacheKey);\r\n return val;\r\n }).catch((err: any) => {\r\n cache.delete(argsCacheKey);\r\n throw err;\r\n });\r\n\r\n cache.set(argsCacheKey, response);\r\n return response;\r\n },\r\n };\r\n };\r\n}\r\n","import { CollectionData } from '../models/data/collectionData';\n\nimport { Collection } from '../models/domain/collection';\nimport { TreeNode } from '../models/domain/treeNode';\n\nimport { CollectionView } from '../models/view/collectionView';\n\nimport { CollectionService as CollectionServiceAbstraction } from '../abstractions/collection.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport { ServiceUtils } from '../misc/serviceUtils';\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n collectionsPrefix: 'collections_',\n};\nconst NestingDelimiter = '/';\n\nexport class CollectionService implements CollectionServiceAbstraction {\n decryptedCollectionCache: CollectionView[];\n\n constructor(private cryptoService: CryptoService, private userService: UserService,\n private storageService: StorageService, private i18nService: I18nService) {\n }\n\n clearCache(): void {\n this.decryptedCollectionCache = null;\n }\n\n async encrypt(model: CollectionView): Promise {\n if (model.organizationId == null) {\n throw new Error('Collection has no organization id.');\n }\n const key = await this.cryptoService.getOrgKey(model.organizationId);\n if (key == null) {\n throw new Error('No key for this collection\\'s organization.');\n }\n const collection = new Collection();\n collection.id = model.id;\n collection.organizationId = model.organizationId;\n collection.readOnly = model.readOnly;\n collection.name = await this.cryptoService.encrypt(model.name, key);\n return collection;\n }\n\n async decryptMany(collections: Collection[]): Promise {\n if (collections == null) {\n return [];\n }\n const decCollections: CollectionView[] = [];\n const promises: Array> = [];\n collections.forEach((collection) => {\n promises.push(collection.decrypt().then((c) => decCollections.push(c)));\n });\n await Promise.all(promises);\n return decCollections.sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n\n async get(id: string): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null || !collections.hasOwnProperty(id)) {\n return null;\n }\n\n return new Collection(collections[id]);\n }\n\n async getAll(): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n const response: Collection[] = [];\n for (const id in collections) {\n if (collections.hasOwnProperty(id)) {\n response.push(new Collection(collections[id]));\n }\n }\n return response;\n }\n\n async getAllDecrypted(): Promise {\n if (this.decryptedCollectionCache != null) {\n return this.decryptedCollectionCache;\n }\n\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n throw new Error('No key.');\n }\n\n const collections = await this.getAll();\n this.decryptedCollectionCache = await this.decryptMany(collections);\n return this.decryptedCollectionCache;\n }\n\n async getAllNested(collections: CollectionView[] = null): Promise>> {\n if (collections == null) {\n collections = await this.getAllDecrypted();\n }\n const nodes: Array> = [];\n collections.forEach((c) => {\n const collectionCopy = new CollectionView();\n collectionCopy.id = c.id;\n collectionCopy.organizationId = c.organizationId;\n ServiceUtils.nestedTraverse(nodes, 0, c.name.split(NestingDelimiter), collectionCopy,\n null, NestingDelimiter);\n });\n return nodes;\n }\n\n async getNested(id: string): Promise> {\n const collections = await this.getAllNested();\n return ServiceUtils.getTreeNodeObject(collections, id) as TreeNode;\n }\n\n async upsert(collection: CollectionData | CollectionData[]): Promise {\n const userId = await this.userService.getUserId();\n let collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n collections = {};\n }\n\n if (collection instanceof CollectionData) {\n const c = collection as CollectionData;\n collections[c.id] = c;\n } else {\n (collection as CollectionData[]).forEach((c) => {\n collections[c.id] = c;\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async replace(collections: { [id: string]: CollectionData; }): Promise {\n const userId = await this.userService.getUserId();\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async clear(userId: string): Promise {\n await this.storageService.remove(Keys.collectionsPrefix + userId);\n this.decryptedCollectionCache = null;\n }\n\n async delete(id: string | string[]): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n return;\n }\n\n if (typeof id === 'string') {\n const i = id as string;\n delete collections[id];\n } else {\n (id as string[]).forEach((i) => {\n delete collections[i];\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n}\n","import {\r\n ITreeNodeObject,\r\n TreeNode,\r\n} from '../models/domain/treeNode';\r\n\r\nexport class ServiceUtils {\r\n static nestedTraverse(nodeTree: Array>, partIndex: number, parts: string[],\r\n obj: ITreeNodeObject, parent: ITreeNodeObject, delimiter: string) {\r\n if (parts.length <= partIndex) {\r\n return;\r\n }\r\n\r\n const end = partIndex === parts.length - 1;\r\n const partName = parts[partIndex];\r\n\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.name !== parts[partIndex]) {\r\n continue;\r\n }\r\n if (end && nodeTree[i].node.id !== obj.id) {\r\n // Another node with the same name.\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n ServiceUtils.nestedTraverse(nodeTree[i].children, partIndex + 1, parts,\r\n obj, nodeTree[i].node, delimiter);\r\n return;\r\n }\r\n\r\n if (nodeTree.filter((n) => n.node.name === partName).length === 0) {\r\n if (end) {\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n const newPartName = parts[partIndex] + delimiter + parts[partIndex + 1];\r\n ServiceUtils.nestedTraverse(nodeTree, 0, [newPartName, ...parts.slice(partIndex + 2)],\r\n obj, parent, delimiter);\r\n }\r\n }\r\n\r\n static getTreeNodeObject(nodeTree: Array>, id: string): TreeNode {\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.id === id) {\r\n return nodeTree[i];\r\n } else if (nodeTree[i].children != null) {\r\n const node = ServiceUtils.getTreeNodeObject(nodeTree[i].children, id);\r\n if (node !== null) {\r\n return node;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n}\r\n","import { CryptoService } from '../abstractions/crypto.service';\r\n\r\nexport class ContainerService {\r\n constructor(private cryptoService: CryptoService) {\r\n }\r\n\r\n // deprecated, use attachToGlobal instead\r\n attachToWindow(win: any) {\r\n this.attachToGlobal(win);\r\n }\r\n\r\n attachToGlobal(global: any) {\r\n if (!global.bitwardenContainerService) {\r\n global.bitwardenContainerService = this;\r\n }\r\n }\r\n\r\n getCryptoService(): CryptoService {\r\n return this.cryptoService;\r\n }\r\n}\r\n","import * as bigInt from 'big-integer';\r\n\r\nimport { EncryptionType } from '../enums/encryptionType';\r\nimport { KdfType } from '../enums/kdfType';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { EncryptedObject } from '../models/domain/encryptedObject';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\r\n\r\nimport { CryptoService as CryptoServiceAbstraction } from '../abstractions/crypto.service';\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { ConstantsService } from './constants.service';\r\n\r\nimport { sequentialize } from '../misc/sequentialize';\r\nimport { Utils } from '../misc/utils';\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst Keys = {\r\n key: 'key',\r\n encOrgKeys: 'encOrgKeys',\r\n encPrivateKey: 'encPrivateKey',\r\n encKey: 'encKey',\r\n keyHash: 'keyHash',\r\n};\r\n\r\nexport class CryptoService implements CryptoServiceAbstraction {\r\n private key: SymmetricCryptoKey;\r\n private encKey: SymmetricCryptoKey;\r\n private legacyEtmKey: SymmetricCryptoKey;\r\n private keyHash: string;\r\n private publicKey: ArrayBuffer;\r\n private privateKey: ArrayBuffer;\r\n private orgKeys: Map;\r\n\r\n constructor(private storageService: StorageService, private secureStorageService: StorageService,\r\n private cryptoFunctionService: CryptoFunctionService) { }\r\n\r\n async setKey(key: SymmetricCryptoKey): Promise {\r\n this.key = key;\r\n\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null) {\r\n // if we have a lock option set, we do not store the key\r\n return;\r\n }\r\n\r\n return this.secureStorageService.save(Keys.key, key.keyB64);\r\n }\r\n\r\n setKeyHash(keyHash: string): Promise<{}> {\r\n this.keyHash = keyHash;\r\n return this.storageService.save(Keys.keyHash, keyHash);\r\n }\r\n\r\n async setEncKey(encKey: string): Promise<{}> {\r\n if (encKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encKey, encKey);\r\n this.encKey = null;\r\n }\r\n\r\n async setEncPrivateKey(encPrivateKey: string): Promise<{}> {\r\n if (encPrivateKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encPrivateKey, encPrivateKey);\r\n this.privateKey = null;\r\n }\r\n\r\n setOrgKeys(orgs: ProfileOrganizationResponse[]): Promise<{}> {\r\n const orgKeys: any = {};\r\n orgs.forEach((org) => {\r\n orgKeys[org.id] = org.key;\r\n });\r\n\r\n this.orgKeys = null;\r\n return this.storageService.save(Keys.encOrgKeys, orgKeys);\r\n }\r\n\r\n async getKey(): Promise {\r\n if (this.key != null) {\r\n return this.key;\r\n }\r\n\r\n const key = await this.secureStorageService.get(Keys.key);\r\n if (key != null) {\r\n this.key = new SymmetricCryptoKey(Utils.fromB64ToArray(key).buffer);\r\n }\r\n\r\n return key == null ? null : this.key;\r\n }\r\n\r\n getKeyHash(): Promise {\r\n if (this.keyHash != null) {\r\n return Promise.resolve(this.keyHash);\r\n }\r\n\r\n return this.storageService.get(Keys.keyHash);\r\n }\r\n\r\n @sequentialize(() => 'getEncKey')\r\n async getEncKey(): Promise {\r\n if (this.encKey != null) {\r\n return this.encKey;\r\n }\r\n\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n if (encKey == null) {\r\n return null;\r\n }\r\n\r\n const key = await this.getKey();\r\n if (key == null) {\r\n return null;\r\n }\r\n\r\n let decEncKey: ArrayBuffer;\r\n const encKeyCipher = new CipherString(encKey);\r\n if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_B64) {\r\n decEncKey = await this.decryptToBytes(encKeyCipher, key);\r\n } else if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_HmacSha256_B64) {\r\n const newKey = await this.stretchKey(key);\r\n decEncKey = await this.decryptToBytes(encKeyCipher, newKey);\r\n } else {\r\n throw new Error('Unsupported encKey type.');\r\n }\r\n\r\n if (decEncKey == null) {\r\n return null;\r\n }\r\n this.encKey = new SymmetricCryptoKey(decEncKey);\r\n return this.encKey;\r\n }\r\n\r\n async getPublicKey(): Promise {\r\n if (this.publicKey != null) {\r\n return this.publicKey;\r\n }\r\n\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n return null;\r\n }\r\n\r\n this.publicKey = await this.cryptoFunctionService.rsaExtractPublicKey(privateKey);\r\n return this.publicKey;\r\n }\r\n\r\n async getPrivateKey(): Promise {\r\n if (this.privateKey != null) {\r\n return this.privateKey;\r\n }\r\n\r\n const encPrivateKey = await this.storageService.get(Keys.encPrivateKey);\r\n if (encPrivateKey == null) {\r\n return null;\r\n }\r\n\r\n this.privateKey = await this.decryptToBytes(new CipherString(encPrivateKey), null);\r\n return this.privateKey;\r\n }\r\n\r\n async getFingerprint(userId: string, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey === null) {\r\n throw new Error('No public key available.');\r\n }\r\n const keyFingerprint = await this.cryptoFunctionService.hash(publicKey, 'sha256');\r\n const userFingerprint = await this.hkdfExpand(keyFingerprint, Utils.fromUtf8ToArray(userId), 32);\r\n return this.hashPhrase(userFingerprint.buffer);\r\n }\r\n\r\n @sequentialize(() => 'getOrgKeys')\r\n async getOrgKeys(): Promise> {\r\n if (this.orgKeys != null && this.orgKeys.size > 0) {\r\n return this.orgKeys;\r\n }\r\n\r\n const encOrgKeys = await this.storageService.get(Keys.encOrgKeys);\r\n if (encOrgKeys == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys: Map = new Map();\r\n let setKey = false;\r\n\r\n for (const orgId in encOrgKeys) {\r\n if (!encOrgKeys.hasOwnProperty(orgId)) {\r\n continue;\r\n }\r\n\r\n const decValue = await this.rsaDecrypt(encOrgKeys[orgId]);\r\n orgKeys.set(orgId, new SymmetricCryptoKey(decValue));\r\n setKey = true;\r\n }\r\n\r\n if (setKey) {\r\n this.orgKeys = orgKeys;\r\n }\r\n\r\n return this.orgKeys;\r\n }\r\n\r\n async getOrgKey(orgId: string): Promise {\r\n if (orgId == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys = await this.getOrgKeys();\r\n if (orgKeys == null || !orgKeys.has(orgId)) {\r\n return null;\r\n }\r\n\r\n return orgKeys.get(orgId);\r\n }\r\n\r\n async hasKey(): Promise {\r\n return (await this.getKey()) != null;\r\n }\r\n\r\n async hasEncKey(): Promise {\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n return encKey != null;\r\n }\r\n\r\n clearKey(): Promise {\r\n this.key = this.legacyEtmKey = null;\r\n return this.secureStorageService.remove(Keys.key);\r\n }\r\n\r\n clearKeyHash(): Promise {\r\n this.keyHash = null;\r\n return this.storageService.remove(Keys.keyHash);\r\n }\r\n\r\n clearEncKey(memoryOnly?: boolean): Promise {\r\n this.encKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encKey);\r\n }\r\n\r\n clearKeyPair(memoryOnly?: boolean): Promise {\r\n this.privateKey = null;\r\n this.publicKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encPrivateKey);\r\n }\r\n\r\n clearOrgKeys(memoryOnly?: boolean): Promise {\r\n this.orgKeys = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encOrgKeys);\r\n }\r\n\r\n clearKeys(): Promise {\r\n return Promise.all([\r\n this.clearKey(),\r\n this.clearKeyHash(),\r\n this.clearOrgKeys(),\r\n this.clearEncKey(),\r\n this.clearKeyPair(),\r\n ]);\r\n }\r\n\r\n async toggleKey(): Promise {\r\n const key = await this.getKey();\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null || option === 0) {\r\n // if we have a lock option set, clear the key\r\n await this.clearKey();\r\n this.key = key;\r\n return;\r\n }\r\n\r\n await this.setKey(key);\r\n }\r\n\r\n async makeKey(password: string, salt: string, kdf: KdfType, kdfIterations: number):\r\n Promise {\r\n let key: ArrayBuffer = null;\r\n if (kdf == null || kdf === KdfType.PBKDF2_SHA256) {\r\n if (kdfIterations == null) {\r\n kdfIterations = 5000;\r\n } else if (kdfIterations < 5000) {\r\n throw new Error('PBKDF2 iteration minimum is 5000.');\r\n }\r\n key = await this.cryptoFunctionService.pbkdf2(password, salt, 'sha256', kdfIterations);\r\n } else {\r\n throw new Error('Unknown Kdf.');\r\n }\r\n return new SymmetricCryptoKey(key);\r\n }\r\n\r\n async makeShareKey(): Promise<[CipherString, SymmetricCryptoKey]> {\r\n const shareKey = await this.cryptoFunctionService.randomBytes(64);\r\n const publicKey = await this.getPublicKey();\r\n const encShareKey = await this.rsaEncrypt(shareKey, publicKey);\r\n return [encShareKey, new SymmetricCryptoKey(shareKey)];\r\n }\r\n\r\n async makeKeyPair(key?: SymmetricCryptoKey): Promise<[string, CipherString]> {\r\n const keyPair = await this.cryptoFunctionService.rsaGenerateKeyPair(2048);\r\n const publicB64 = Utils.fromBufferToB64(keyPair[0]);\r\n const privateEnc = await this.encrypt(keyPair[1], key);\r\n return [publicB64, privateEnc];\r\n }\r\n\r\n async hashPassword(password: string, key: SymmetricCryptoKey): Promise {\r\n if (key == null) {\r\n key = await this.getKey();\r\n }\r\n if (password == null || key == null) {\r\n throw new Error('Invalid parameters.');\r\n }\r\n\r\n const hash = await this.cryptoFunctionService.pbkdf2(key.key, password, 'sha256', 1);\r\n return Utils.fromBufferToB64(hash);\r\n }\r\n\r\n async makeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const theKey = await this.getKeyForEncryption(key);\r\n const encKey = await this.cryptoFunctionService.randomBytes(64);\r\n return this.buildEncKey(theKey, encKey);\r\n }\r\n\r\n async remakeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const encKey = await this.getEncKey();\r\n return this.buildEncKey(key, encKey.key);\r\n }\r\n\r\n async encrypt(plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n if (plainValue == null) {\r\n return Promise.resolve(null);\r\n }\r\n\r\n let plainBuf: ArrayBuffer;\r\n if (typeof (plainValue) === 'string') {\r\n plainBuf = Utils.fromUtf8ToArray(plainValue).buffer;\r\n } else {\r\n plainBuf = plainValue;\r\n }\r\n\r\n const encObj = await this.aesEncrypt(plainBuf, key);\r\n const iv = Utils.fromBufferToB64(encObj.iv);\r\n const data = Utils.fromBufferToB64(encObj.data);\r\n const mac = encObj.mac != null ? Utils.fromBufferToB64(encObj.mac) : null;\r\n return new CipherString(encObj.key.encType, iv, data, mac);\r\n }\r\n\r\n async encryptToBytes(plainValue: ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n const encValue = await this.aesEncrypt(plainValue, key);\r\n let macLen = 0;\r\n if (encValue.mac != null) {\r\n macLen = encValue.mac.byteLength;\r\n }\r\n\r\n const encBytes = new Uint8Array(1 + encValue.iv.byteLength + macLen + encValue.data.byteLength);\r\n encBytes.set([encValue.key.encType]);\r\n encBytes.set(new Uint8Array(encValue.iv), 1);\r\n if (encValue.mac != null) {\r\n encBytes.set(new Uint8Array(encValue.mac), 1 + encValue.iv.byteLength);\r\n }\r\n\r\n encBytes.set(new Uint8Array(encValue.data), 1 + encValue.iv.byteLength + macLen);\r\n return encBytes.buffer;\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey == null) {\r\n throw new Error('Public key unavailable.');\r\n }\r\n\r\n const encBytes = await this.cryptoFunctionService.rsaEncrypt(data, publicKey, 'sha1');\r\n return new CipherString(EncryptionType.Rsa2048_OaepSha1_B64, Utils.fromBufferToB64(encBytes));\r\n }\r\n\r\n async decryptToBytes(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n const iv = Utils.fromB64ToArray(cipherString.iv).buffer;\r\n const data = Utils.fromB64ToArray(cipherString.data).buffer;\r\n const mac = cipherString.mac ? Utils.fromB64ToArray(cipherString.mac).buffer : null;\r\n const decipher = await this.aesDecryptToBytes(cipherString.encryptionType, data, iv, mac, key);\r\n if (decipher == null) {\r\n return null;\r\n }\r\n\r\n return decipher;\r\n }\r\n\r\n async decryptToUtf8(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n return await this.aesDecryptToUtf8(cipherString.encryptionType, cipherString.data,\r\n cipherString.iv, cipherString.mac, key);\r\n }\r\n\r\n async decryptFromBytes(encBuf: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n if (encBuf == null) {\r\n throw new Error('no encBuf.');\r\n }\r\n\r\n const encBytes = new Uint8Array(encBuf);\r\n const encType = encBytes[0];\r\n let ctBytes: Uint8Array = null;\r\n let ivBytes: Uint8Array = null;\r\n let macBytes: Uint8Array = null;\r\n\r\n switch (encType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encBytes.length <= 49) { // 1 + 16 + 32 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n macBytes = encBytes.slice(17, 49);\r\n ctBytes = encBytes.slice(49);\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encBytes.length <= 17) { // 1 + 16 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n ctBytes = encBytes.slice(17);\r\n break;\r\n default:\r\n return null;\r\n }\r\n\r\n return await this.aesDecryptToBytes(encType, ctBytes.buffer, ivBytes.buffer,\r\n macBytes != null ? macBytes.buffer : null, key);\r\n }\r\n\r\n // EFForg/OpenWireless\r\n // ref https://github.com/EFForg/OpenWireless/blob/master/app/js/diceware.js\r\n async randomNumber(min: number, max: number): Promise {\r\n let rval = 0;\r\n const range = max - min + 1;\r\n const bitsNeeded = Math.ceil(Math.log2(range));\r\n if (bitsNeeded > 53) {\r\n throw new Error('We cannot generate numbers larger than 53 bits.');\r\n }\r\n\r\n const bytesNeeded = Math.ceil(bitsNeeded / 8);\r\n const mask = Math.pow(2, bitsNeeded) - 1;\r\n // 7776 -> (2^13 = 8192) -1 == 8191 or 0x00001111 11111111\r\n\r\n // Fill a byte array with N random numbers\r\n const byteArray = new Uint8Array(await this.cryptoFunctionService.randomBytes(bytesNeeded));\r\n\r\n let p = (bytesNeeded - 1) * 8;\r\n for (let i = 0; i < bytesNeeded; i++) {\r\n rval += byteArray[i] * Math.pow(2, p);\r\n p -= 8;\r\n }\r\n\r\n // Use & to apply the mask and reduce the number of recursive lookups\r\n // tslint:disable-next-line\r\n rval = rval & mask;\r\n\r\n if (rval >= range) {\r\n // Integer out of acceptable range\r\n return this.randomNumber(min, max);\r\n }\r\n\r\n // Return an integer that falls within the range\r\n return min + rval;\r\n }\r\n\r\n // Helpers\r\n\r\n private async aesEncrypt(data: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const obj = new EncryptedObject();\r\n obj.key = await this.getKeyForEncryption(key);\r\n obj.iv = await this.cryptoFunctionService.randomBytes(16);\r\n obj.data = await this.cryptoFunctionService.aesEncrypt(data, obj.iv, obj.key.encKey);\r\n\r\n if (obj.key.macKey != null) {\r\n const macData = new Uint8Array(obj.iv.byteLength + obj.data.byteLength);\r\n macData.set(new Uint8Array(obj.iv), 0);\r\n macData.set(new Uint8Array(obj.data), obj.iv.byteLength);\r\n obj.mac = await this.cryptoFunctionService.hmac(macData.buffer, obj.key.macKey, 'sha256');\r\n }\r\n\r\n return obj;\r\n }\r\n\r\n private async aesDecryptToUtf8(encType: EncryptionType, data: string, iv: string, mac: string,\r\n key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n // tslint:disable-next-line\r\n console.error('mac required.');\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n // tslint:disable-next-line\r\n console.error('encType unavailable.');\r\n return null;\r\n }\r\n\r\n const fastParams = this.cryptoFunctionService.aesDecryptFastParameters(data, iv, mac, theKey);\r\n if (fastParams.macKey != null && fastParams.mac != null) {\r\n const computedMac = await this.cryptoFunctionService.hmacFast(fastParams.macData,\r\n fastParams.macKey, 'sha256');\r\n const macsEqual = await this.cryptoFunctionService.compareFast(fastParams.mac, computedMac);\r\n if (!macsEqual) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return this.cryptoFunctionService.aesDecryptFast(fastParams);\r\n }\r\n\r\n private async aesDecryptToBytes(encType: EncryptionType, data: ArrayBuffer, iv: ArrayBuffer,\r\n mac: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n return null;\r\n }\r\n\r\n if (theKey.macKey != null && mac != null) {\r\n const macData = new Uint8Array(iv.byteLength + data.byteLength);\r\n macData.set(new Uint8Array(iv), 0);\r\n macData.set(new Uint8Array(data), iv.byteLength);\r\n const computedMac = await this.cryptoFunctionService.hmac(macData.buffer, theKey.macKey, 'sha256');\r\n if (computedMac === null) {\r\n return null;\r\n }\r\n\r\n const macsMatch = await this.cryptoFunctionService.compare(mac, computedMac);\r\n if (!macsMatch) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return await this.cryptoFunctionService.aesDecrypt(data, iv, theKey.encKey);\r\n }\r\n\r\n private async rsaDecrypt(encValue: string): Promise {\r\n const headerPieces = encValue.split('.');\r\n let encType: EncryptionType = null;\r\n let encPieces: string[];\r\n\r\n if (headerPieces.length === 1) {\r\n encType = EncryptionType.Rsa2048_OaepSha256_B64;\r\n encPieces = [headerPieces[0]];\r\n } else if (headerPieces.length === 2) {\r\n try {\r\n encType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) { }\r\n }\r\n\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n // HmacSha256 types are deprecated\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n if (encPieces == null || encPieces.length <= 0) {\r\n throw new Error('encPieces unavailable.');\r\n }\r\n\r\n const data = Utils.fromB64ToArray(encPieces[0]).buffer;\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n throw new Error('No private key.');\r\n }\r\n\r\n let alg: 'sha1' | 'sha256' = 'sha1';\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n alg = 'sha256';\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n return this.cryptoFunctionService.rsaDecrypt(data, privateKey, alg);\r\n }\r\n\r\n private async getKeyForEncryption(key?: SymmetricCryptoKey): Promise {\r\n if (key != null) {\r\n return key;\r\n }\r\n\r\n const encKey = await this.getEncKey();\r\n if (encKey != null) {\r\n return encKey;\r\n }\r\n\r\n return await this.getKey();\r\n }\r\n\r\n private resolveLegacyKey(encType: EncryptionType, key: SymmetricCryptoKey): SymmetricCryptoKey {\r\n if (encType === EncryptionType.AesCbc128_HmacSha256_B64 &&\r\n key.encType === EncryptionType.AesCbc256_B64) {\r\n // Old encrypt-then-mac scheme, make a new key\r\n if (this.legacyEtmKey == null) {\r\n this.legacyEtmKey = new SymmetricCryptoKey(key.key, EncryptionType.AesCbc128_HmacSha256_B64);\r\n }\r\n return this.legacyEtmKey;\r\n }\r\n\r\n return key;\r\n }\r\n\r\n private async stretchKey(key: SymmetricCryptoKey): Promise {\r\n const newKey = new Uint8Array(64);\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('enc'), 32));\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('mac'), 32), 32);\r\n return new SymmetricCryptoKey(newKey.buffer);\r\n }\r\n\r\n // ref: https://tools.ietf.org/html/rfc5869\r\n private async hkdfExpand(prk: ArrayBuffer, info: Uint8Array, size: number) {\r\n const hashLen = 32; // sha256\r\n const okm = new Uint8Array(size);\r\n let previousT = new Uint8Array(0);\r\n const n = Math.ceil(size / hashLen);\r\n for (let i = 0; i < n; i++) {\r\n const t = new Uint8Array(previousT.length + info.length + 1);\r\n t.set(previousT);\r\n t.set(info, previousT.length);\r\n t.set([i + 1], t.length - 1);\r\n previousT = new Uint8Array(await this.cryptoFunctionService.hmac(t.buffer, prk, 'sha256'));\r\n okm.set(previousT, i * hashLen);\r\n }\r\n return okm;\r\n }\r\n\r\n private async hashPhrase(hash: ArrayBuffer, minimumEntropy: number = 64) {\r\n const entropyPerWord = Math.log(EEFLongWordList.length) / Math.log(2);\r\n let numWords = Math.ceil(minimumEntropy / entropyPerWord);\r\n\r\n const hashArr = Array.from(new Uint8Array(hash));\r\n const entropyAvailable = hashArr.length * 4;\r\n if (numWords * entropyPerWord > entropyAvailable) {\r\n throw new Error('Output entropy of hash function is too small');\r\n }\r\n\r\n const phrase: string[] = [];\r\n let hashNumber = bigInt.fromArray(hashArr, 256);\r\n while (numWords--) {\r\n const remainder = hashNumber.mod(EEFLongWordList.length);\r\n hashNumber = hashNumber.divide(EEFLongWordList.length);\r\n phrase.push(EEFLongWordList[remainder as any]);\r\n }\r\n return phrase;\r\n }\r\n\r\n private async buildEncKey(key: SymmetricCryptoKey, encKey: ArrayBuffer = null)\r\n : Promise<[SymmetricCryptoKey, CipherString]> {\r\n let encKeyEnc: CipherString = null;\r\n if (key.key.byteLength === 32) {\r\n const newKey = await this.stretchKey(key);\r\n encKeyEnc = await this.encrypt(encKey, newKey);\r\n } else if (key.key.byteLength === 64) {\r\n encKeyEnc = await this.encrypt(encKey, key);\r\n } else {\r\n throw new Error('Invalid key size.');\r\n }\r\n return [new SymmetricCryptoKey(encKey), encKeyEnc];\r\n }\r\n}\r\n","// EFF's Long Wordlist from https://www.eff.org/dice\r\nexport const EEFLongWordList = [\r\n 'abacus',\r\n 'abdomen',\r\n 'abdominal',\r\n 'abide',\r\n 'abiding',\r\n 'ability',\r\n 'ablaze',\r\n 'able',\r\n 'abnormal',\r\n 'abrasion',\r\n 'abrasive',\r\n 'abreast',\r\n 'abridge',\r\n 'abroad',\r\n 'abruptly',\r\n 'absence',\r\n 'absentee',\r\n 'absently',\r\n 'absinthe',\r\n 'absolute',\r\n 'absolve',\r\n 'abstain',\r\n 'abstract',\r\n 'absurd',\r\n 'accent',\r\n 'acclaim',\r\n 'acclimate',\r\n 'accompany',\r\n 'account',\r\n 'accuracy',\r\n 'accurate',\r\n 'accustom',\r\n 'acetone',\r\n 'achiness',\r\n 'aching',\r\n 'acid',\r\n 'acorn',\r\n 'acquaint',\r\n 'acquire',\r\n 'acre',\r\n 'acrobat',\r\n 'acronym',\r\n 'acting',\r\n 'action',\r\n 'activate',\r\n 'activator',\r\n 'active',\r\n 'activism',\r\n 'activist',\r\n 'activity',\r\n 'actress',\r\n 'acts',\r\n 'acutely',\r\n 'acuteness',\r\n 'aeration',\r\n 'aerobics',\r\n 'aerosol',\r\n 'aerospace',\r\n 'afar',\r\n 'affair',\r\n 'affected',\r\n 'affecting',\r\n 'affection',\r\n 'affidavit',\r\n 'affiliate',\r\n 'affirm',\r\n 'affix',\r\n 'afflicted',\r\n 'affluent',\r\n 'afford',\r\n 'affront',\r\n 'aflame',\r\n 'afloat',\r\n 'aflutter',\r\n 'afoot',\r\n 'afraid',\r\n 'afterglow',\r\n 'afterlife',\r\n 'aftermath',\r\n 'aftermost',\r\n 'afternoon',\r\n 'aged',\r\n 'ageless',\r\n 'agency',\r\n 'agenda',\r\n 'agent',\r\n 'aggregate',\r\n 'aghast',\r\n 'agile',\r\n 'agility',\r\n 'aging',\r\n 'agnostic',\r\n 'agonize',\r\n 'agonizing',\r\n 'agony',\r\n 'agreeable',\r\n 'agreeably',\r\n 'agreed',\r\n 'agreeing',\r\n 'agreement',\r\n 'aground',\r\n 'ahead',\r\n 'ahoy',\r\n 'aide',\r\n 'aids',\r\n 'aim',\r\n 'ajar',\r\n 'alabaster',\r\n 'alarm',\r\n 'albatross',\r\n 'album',\r\n 'alfalfa',\r\n 'algebra',\r\n 'algorithm',\r\n 'alias',\r\n 'alibi',\r\n 'alienable',\r\n 'alienate',\r\n 'aliens',\r\n 'alike',\r\n 'alive',\r\n 'alkaline',\r\n 'alkalize',\r\n 'almanac',\r\n 'almighty',\r\n 'almost',\r\n 'aloe',\r\n 'aloft',\r\n 'aloha',\r\n 'alone',\r\n 'alongside',\r\n 'aloof',\r\n 'alphabet',\r\n 'alright',\r\n 'although',\r\n 'altitude',\r\n 'alto',\r\n 'aluminum',\r\n 'alumni',\r\n 'always',\r\n 'amaretto',\r\n 'amaze',\r\n 'amazingly',\r\n 'amber',\r\n 'ambiance',\r\n 'ambiguity',\r\n 'ambiguous',\r\n 'ambition',\r\n 'ambitious',\r\n 'ambulance',\r\n 'ambush',\r\n 'amendable',\r\n 'amendment',\r\n 'amends',\r\n 'amenity',\r\n 'amiable',\r\n 'amicably',\r\n 'amid',\r\n 'amigo',\r\n 'amino',\r\n 'amiss',\r\n 'ammonia',\r\n 'ammonium',\r\n 'amnesty',\r\n 'amniotic',\r\n 'among',\r\n 'amount',\r\n 'amperage',\r\n 'ample',\r\n 'amplifier',\r\n 'amplify',\r\n 'amply',\r\n 'amuck',\r\n 'amulet',\r\n 'amusable',\r\n 'amused',\r\n 'amusement',\r\n 'amuser',\r\n 'amusing',\r\n 'anaconda',\r\n 'anaerobic',\r\n 'anagram',\r\n 'anatomist',\r\n 'anatomy',\r\n 'anchor',\r\n 'anchovy',\r\n 'ancient',\r\n 'android',\r\n 'anemia',\r\n 'anemic',\r\n 'aneurism',\r\n 'anew',\r\n 'angelfish',\r\n 'angelic',\r\n 'anger',\r\n 'angled',\r\n 'angler',\r\n 'angles',\r\n 'angling',\r\n 'angrily',\r\n 'angriness',\r\n 'anguished',\r\n 'angular',\r\n 'animal',\r\n 'animate',\r\n 'animating',\r\n 'animation',\r\n 'animator',\r\n 'anime',\r\n 'animosity',\r\n 'ankle',\r\n 'annex',\r\n 'annotate',\r\n 'announcer',\r\n 'annoying',\r\n 'annually',\r\n 'annuity',\r\n 'anointer',\r\n 'another',\r\n 'answering',\r\n 'antacid',\r\n 'antarctic',\r\n 'anteater',\r\n 'antelope',\r\n 'antennae',\r\n 'anthem',\r\n 'anthill',\r\n 'anthology',\r\n 'antibody',\r\n 'antics',\r\n 'antidote',\r\n 'antihero',\r\n 'antiquely',\r\n 'antiques',\r\n 'antiquity',\r\n 'antirust',\r\n 'antitoxic',\r\n 'antitrust',\r\n 'antiviral',\r\n 'antivirus',\r\n 'antler',\r\n 'antonym',\r\n 'antsy',\r\n 'anvil',\r\n 'anybody',\r\n 'anyhow',\r\n 'anymore',\r\n 'anyone',\r\n 'anyplace',\r\n 'anything',\r\n 'anytime',\r\n 'anyway',\r\n 'anywhere',\r\n 'aorta',\r\n 'apache',\r\n 'apostle',\r\n 'appealing',\r\n 'appear',\r\n 'appease',\r\n 'appeasing',\r\n 'appendage',\r\n 'appendix',\r\n 'appetite',\r\n 'appetizer',\r\n 'applaud',\r\n 'applause',\r\n 'apple',\r\n 'appliance',\r\n 'applicant',\r\n 'applied',\r\n 'apply',\r\n 'appointee',\r\n 'appraisal',\r\n 'appraiser',\r\n 'apprehend',\r\n 'approach',\r\n 'approval',\r\n 'approve',\r\n 'apricot',\r\n 'april',\r\n 'apron',\r\n 'aptitude',\r\n 'aptly',\r\n 'aqua',\r\n 'aqueduct',\r\n 'arbitrary',\r\n 'arbitrate',\r\n 'ardently',\r\n 'area',\r\n 'arena',\r\n 'arguable',\r\n 'arguably',\r\n 'argue',\r\n 'arise',\r\n 'armadillo',\r\n 'armband',\r\n 'armchair',\r\n 'armed',\r\n 'armful',\r\n 'armhole',\r\n 'arming',\r\n 'armless',\r\n 'armoire',\r\n 'armored',\r\n 'armory',\r\n 'armrest',\r\n 'army',\r\n 'aroma',\r\n 'arose',\r\n 'around',\r\n 'arousal',\r\n 'arrange',\r\n 'array',\r\n 'arrest',\r\n 'arrival',\r\n 'arrive',\r\n 'arrogance',\r\n 'arrogant',\r\n 'arson',\r\n 'art',\r\n 'ascend',\r\n 'ascension',\r\n 'ascent',\r\n 'ascertain',\r\n 'ashamed',\r\n 'ashen',\r\n 'ashes',\r\n 'ashy',\r\n 'aside',\r\n 'askew',\r\n 'asleep',\r\n 'asparagus',\r\n 'aspect',\r\n 'aspirate',\r\n 'aspire',\r\n 'aspirin',\r\n 'astonish',\r\n 'astound',\r\n 'astride',\r\n 'astrology',\r\n 'astronaut',\r\n 'astronomy',\r\n 'astute',\r\n 'atlantic',\r\n 'atlas',\r\n 'atom',\r\n 'atonable',\r\n 'atop',\r\n 'atrium',\r\n 'atrocious',\r\n 'atrophy',\r\n 'attach',\r\n 'attain',\r\n 'attempt',\r\n 'attendant',\r\n 'attendee',\r\n 'attention',\r\n 'attentive',\r\n 'attest',\r\n 'attic',\r\n 'attire',\r\n 'attitude',\r\n 'attractor',\r\n 'attribute',\r\n 'atypical',\r\n 'auction',\r\n 'audacious',\r\n 'audacity',\r\n 'audible',\r\n 'audibly',\r\n 'audience',\r\n 'audio',\r\n 'audition',\r\n 'augmented',\r\n 'august',\r\n 'authentic',\r\n 'author',\r\n 'autism',\r\n 'autistic',\r\n 'autograph',\r\n 'automaker',\r\n 'automated',\r\n 'automatic',\r\n 'autopilot',\r\n 'available',\r\n 'avalanche',\r\n 'avatar',\r\n 'avenge',\r\n 'avenging',\r\n 'avenue',\r\n 'average',\r\n 'aversion',\r\n 'avert',\r\n 'aviation',\r\n 'aviator',\r\n 'avid',\r\n 'avoid',\r\n 'await',\r\n 'awaken',\r\n 'award',\r\n 'aware',\r\n 'awhile',\r\n 'awkward',\r\n 'awning',\r\n 'awoke',\r\n 'awry',\r\n 'axis',\r\n 'babble',\r\n 'babbling',\r\n 'babied',\r\n 'baboon',\r\n 'backache',\r\n 'backboard',\r\n 'backboned',\r\n 'backdrop',\r\n 'backed',\r\n 'backer',\r\n 'backfield',\r\n 'backfire',\r\n 'backhand',\r\n 'backing',\r\n 'backlands',\r\n 'backlash',\r\n 'backless',\r\n 'backlight',\r\n 'backlit',\r\n 'backlog',\r\n 'backpack',\r\n 'backpedal',\r\n 'backrest',\r\n 'backroom',\r\n 'backshift',\r\n 'backside',\r\n 'backslid',\r\n 'backspace',\r\n 'backspin',\r\n 'backstab',\r\n 'backstage',\r\n 'backtalk',\r\n 'backtrack',\r\n 'backup',\r\n 'backward',\r\n 'backwash',\r\n 'backwater',\r\n 'backyard',\r\n 'bacon',\r\n 'bacteria',\r\n 'bacterium',\r\n 'badass',\r\n 'badge',\r\n 'badland',\r\n 'badly',\r\n 'badness',\r\n 'baffle',\r\n 'baffling',\r\n 'bagel',\r\n 'bagful',\r\n 'baggage',\r\n 'bagged',\r\n 'baggie',\r\n 'bagginess',\r\n 'bagging',\r\n 'baggy',\r\n 'bagpipe',\r\n 'baguette',\r\n 'baked',\r\n 'bakery',\r\n 'bakeshop',\r\n 'baking',\r\n 'balance',\r\n 'balancing',\r\n 'balcony',\r\n 'balmy',\r\n 'balsamic',\r\n 'bamboo',\r\n 'banana',\r\n 'banish',\r\n 'banister',\r\n 'banjo',\r\n 'bankable',\r\n 'bankbook',\r\n 'banked',\r\n 'banker',\r\n 'banking',\r\n 'banknote',\r\n 'bankroll',\r\n 'banner',\r\n 'bannister',\r\n 'banshee',\r\n 'banter',\r\n 'barbecue',\r\n 'barbed',\r\n 'barbell',\r\n 'barber',\r\n 'barcode',\r\n 'barge',\r\n 'bargraph',\r\n 'barista',\r\n 'baritone',\r\n 'barley',\r\n 'barmaid',\r\n 'barman',\r\n 'barn',\r\n 'barometer',\r\n 'barrack',\r\n 'barracuda',\r\n 'barrel',\r\n 'barrette',\r\n 'barricade',\r\n 'barrier',\r\n 'barstool',\r\n 'bartender',\r\n 'barterer',\r\n 'bash',\r\n 'basically',\r\n 'basics',\r\n 'basil',\r\n 'basin',\r\n 'basis',\r\n 'basket',\r\n 'batboy',\r\n 'batch',\r\n 'bath',\r\n 'baton',\r\n 'bats',\r\n 'battalion',\r\n 'battered',\r\n 'battering',\r\n 'battery',\r\n 'batting',\r\n 'battle',\r\n 'bauble',\r\n 'bazooka',\r\n 'blabber',\r\n 'bladder',\r\n 'blade',\r\n 'blah',\r\n 'blame',\r\n 'blaming',\r\n 'blanching',\r\n 'blandness',\r\n 'blank',\r\n 'blaspheme',\r\n 'blasphemy',\r\n 'blast',\r\n 'blatancy',\r\n 'blatantly',\r\n 'blazer',\r\n 'blazing',\r\n 'bleach',\r\n 'bleak',\r\n 'bleep',\r\n 'blemish',\r\n 'blend',\r\n 'bless',\r\n 'blighted',\r\n 'blimp',\r\n 'bling',\r\n 'blinked',\r\n 'blinker',\r\n 'blinking',\r\n 'blinks',\r\n 'blip',\r\n 'blissful',\r\n 'blitz',\r\n 'blizzard',\r\n 'bloated',\r\n 'bloating',\r\n 'blob',\r\n 'blog',\r\n 'bloomers',\r\n 'blooming',\r\n 'blooper',\r\n 'blot',\r\n 'blouse',\r\n 'blubber',\r\n 'bluff',\r\n 'bluish',\r\n 'blunderer',\r\n 'blunt',\r\n 'blurb',\r\n 'blurred',\r\n 'blurry',\r\n 'blurt',\r\n 'blush',\r\n 'blustery',\r\n 'boaster',\r\n 'boastful',\r\n 'boasting',\r\n 'boat',\r\n 'bobbed',\r\n 'bobbing',\r\n 'bobble',\r\n 'bobcat',\r\n 'bobsled',\r\n 'bobtail',\r\n 'bodacious',\r\n 'body',\r\n 'bogged',\r\n 'boggle',\r\n 'bogus',\r\n 'boil',\r\n 'bok',\r\n 'bolster',\r\n 'bolt',\r\n 'bonanza',\r\n 'bonded',\r\n 'bonding',\r\n 'bondless',\r\n 'boned',\r\n 'bonehead',\r\n 'boneless',\r\n 'bonelike',\r\n 'boney',\r\n 'bonfire',\r\n 'bonnet',\r\n 'bonsai',\r\n 'bonus',\r\n 'bony',\r\n 'boogeyman',\r\n 'boogieman',\r\n 'book',\r\n 'boondocks',\r\n 'booted',\r\n 'booth',\r\n 'bootie',\r\n 'booting',\r\n 'bootlace',\r\n 'bootleg',\r\n 'boots',\r\n 'boozy',\r\n 'borax',\r\n 'boring',\r\n 'borough',\r\n 'borrower',\r\n 'borrowing',\r\n 'boss',\r\n 'botanical',\r\n 'botanist',\r\n 'botany',\r\n 'botch',\r\n 'both',\r\n 'bottle',\r\n 'bottling',\r\n 'bottom',\r\n 'bounce',\r\n 'bouncing',\r\n 'bouncy',\r\n 'bounding',\r\n 'boundless',\r\n 'bountiful',\r\n 'bovine',\r\n 'boxcar',\r\n 'boxer',\r\n 'boxing',\r\n 'boxlike',\r\n 'boxy',\r\n 'breach',\r\n 'breath',\r\n 'breeches',\r\n 'breeching',\r\n 'breeder',\r\n 'breeding',\r\n 'breeze',\r\n 'breezy',\r\n 'brethren',\r\n 'brewery',\r\n 'brewing',\r\n 'briar',\r\n 'bribe',\r\n 'brick',\r\n 'bride',\r\n 'bridged',\r\n 'brigade',\r\n 'bright',\r\n 'brilliant',\r\n 'brim',\r\n 'bring',\r\n 'brink',\r\n 'brisket',\r\n 'briskly',\r\n 'briskness',\r\n 'bristle',\r\n 'brittle',\r\n 'broadband',\r\n 'broadcast',\r\n 'broaden',\r\n 'broadly',\r\n 'broadness',\r\n 'broadside',\r\n 'broadways',\r\n 'broiler',\r\n 'broiling',\r\n 'broken',\r\n 'broker',\r\n 'bronchial',\r\n 'bronco',\r\n 'bronze',\r\n 'bronzing',\r\n 'brook',\r\n 'broom',\r\n 'brought',\r\n 'browbeat',\r\n 'brownnose',\r\n 'browse',\r\n 'browsing',\r\n 'bruising',\r\n 'brunch',\r\n 'brunette',\r\n 'brunt',\r\n 'brush',\r\n 'brussels',\r\n 'brute',\r\n 'brutishly',\r\n 'bubble',\r\n 'bubbling',\r\n 'bubbly',\r\n 'buccaneer',\r\n 'bucked',\r\n 'bucket',\r\n 'buckle',\r\n 'buckshot',\r\n 'buckskin',\r\n 'bucktooth',\r\n 'buckwheat',\r\n 'buddhism',\r\n 'buddhist',\r\n 'budding',\r\n 'buddy',\r\n 'budget',\r\n 'buffalo',\r\n 'buffed',\r\n 'buffer',\r\n 'buffing',\r\n 'buffoon',\r\n 'buggy',\r\n 'bulb',\r\n 'bulge',\r\n 'bulginess',\r\n 'bulgur',\r\n 'bulk',\r\n 'bulldog',\r\n 'bulldozer',\r\n 'bullfight',\r\n 'bullfrog',\r\n 'bullhorn',\r\n 'bullion',\r\n 'bullish',\r\n 'bullpen',\r\n 'bullring',\r\n 'bullseye',\r\n 'bullwhip',\r\n 'bully',\r\n 'bunch',\r\n 'bundle',\r\n 'bungee',\r\n 'bunion',\r\n 'bunkbed',\r\n 'bunkhouse',\r\n 'bunkmate',\r\n 'bunny',\r\n 'bunt',\r\n 'busboy',\r\n 'bush',\r\n 'busily',\r\n 'busload',\r\n 'bust',\r\n 'busybody',\r\n 'buzz',\r\n 'cabana',\r\n 'cabbage',\r\n 'cabbie',\r\n 'cabdriver',\r\n 'cable',\r\n 'caboose',\r\n 'cache',\r\n 'cackle',\r\n 'cacti',\r\n 'cactus',\r\n 'caddie',\r\n 'caddy',\r\n 'cadet',\r\n 'cadillac',\r\n 'cadmium',\r\n 'cage',\r\n 'cahoots',\r\n 'cake',\r\n 'calamari',\r\n 'calamity',\r\n 'calcium',\r\n 'calculate',\r\n 'calculus',\r\n 'caliber',\r\n 'calibrate',\r\n 'calm',\r\n 'caloric',\r\n 'calorie',\r\n 'calzone',\r\n 'camcorder',\r\n 'cameo',\r\n 'camera',\r\n 'camisole',\r\n 'camper',\r\n 'campfire',\r\n 'camping',\r\n 'campsite',\r\n 'campus',\r\n 'canal',\r\n 'canary',\r\n 'cancel',\r\n 'candied',\r\n 'candle',\r\n 'candy',\r\n 'cane',\r\n 'canine',\r\n 'canister',\r\n 'cannabis',\r\n 'canned',\r\n 'canning',\r\n 'cannon',\r\n 'cannot',\r\n 'canola',\r\n 'canon',\r\n 'canopener',\r\n 'canopy',\r\n 'canteen',\r\n 'canyon',\r\n 'capable',\r\n 'capably',\r\n 'capacity',\r\n 'cape',\r\n 'capillary',\r\n 'capital',\r\n 'capitol',\r\n 'capped',\r\n 'capricorn',\r\n 'capsize',\r\n 'capsule',\r\n 'caption',\r\n 'captivate',\r\n 'captive',\r\n 'captivity',\r\n 'capture',\r\n 'caramel',\r\n 'carat',\r\n 'caravan',\r\n 'carbon',\r\n 'cardboard',\r\n 'carded',\r\n 'cardiac',\r\n 'cardigan',\r\n 'cardinal',\r\n 'cardstock',\r\n 'carefully',\r\n 'caregiver',\r\n 'careless',\r\n 'caress',\r\n 'caretaker',\r\n 'cargo',\r\n 'caring',\r\n 'carless',\r\n 'carload',\r\n 'carmaker',\r\n 'carnage',\r\n 'carnation',\r\n 'carnival',\r\n 'carnivore',\r\n 'carol',\r\n 'carpenter',\r\n 'carpentry',\r\n 'carpool',\r\n 'carport',\r\n 'carried',\r\n 'carrot',\r\n 'carrousel',\r\n 'carry',\r\n 'cartel',\r\n 'cartload',\r\n 'carton',\r\n 'cartoon',\r\n 'cartridge',\r\n 'cartwheel',\r\n 'carve',\r\n 'carving',\r\n 'carwash',\r\n 'cascade',\r\n 'case',\r\n 'cash',\r\n 'casing',\r\n 'casino',\r\n 'casket',\r\n 'cassette',\r\n 'casually',\r\n 'casualty',\r\n 'catacomb',\r\n 'catalog',\r\n 'catalyst',\r\n 'catalyze',\r\n 'catapult',\r\n 'cataract',\r\n 'catatonic',\r\n 'catcall',\r\n 'catchable',\r\n 'catcher',\r\n 'catching',\r\n 'catchy',\r\n 'caterer',\r\n 'catering',\r\n 'catfight',\r\n 'catfish',\r\n 'cathedral',\r\n 'cathouse',\r\n 'catlike',\r\n 'catnap',\r\n 'catnip',\r\n 'catsup',\r\n 'cattail',\r\n 'cattishly',\r\n 'cattle',\r\n 'catty',\r\n 'catwalk',\r\n 'caucasian',\r\n 'caucus',\r\n 'causal',\r\n 'causation',\r\n 'cause',\r\n 'causing',\r\n 'cauterize',\r\n 'caution',\r\n 'cautious',\r\n 'cavalier',\r\n 'cavalry',\r\n 'caviar',\r\n 'cavity',\r\n 'cedar',\r\n 'celery',\r\n 'celestial',\r\n 'celibacy',\r\n 'celibate',\r\n 'celtic',\r\n 'cement',\r\n 'census',\r\n 'ceramics',\r\n 'ceremony',\r\n 'certainly',\r\n 'certainty',\r\n 'certified',\r\n 'certify',\r\n 'cesarean',\r\n 'cesspool',\r\n 'chafe',\r\n 'chaffing',\r\n 'chain',\r\n 'chair',\r\n 'chalice',\r\n 'challenge',\r\n 'chamber',\r\n 'chamomile',\r\n 'champion',\r\n 'chance',\r\n 'change',\r\n 'channel',\r\n 'chant',\r\n 'chaos',\r\n 'chaperone',\r\n 'chaplain',\r\n 'chapped',\r\n 'chaps',\r\n 'chapter',\r\n 'character',\r\n 'charbroil',\r\n 'charcoal',\r\n 'charger',\r\n 'charging',\r\n 'chariot',\r\n 'charity',\r\n 'charm',\r\n 'charred',\r\n 'charter',\r\n 'charting',\r\n 'chase',\r\n 'chasing',\r\n 'chaste',\r\n 'chastise',\r\n 'chastity',\r\n 'chatroom',\r\n 'chatter',\r\n 'chatting',\r\n 'chatty',\r\n 'cheating',\r\n 'cheddar',\r\n 'cheek',\r\n 'cheer',\r\n 'cheese',\r\n 'cheesy',\r\n 'chef',\r\n 'chemicals',\r\n 'chemist',\r\n 'chemo',\r\n 'cherisher',\r\n 'cherub',\r\n 'chess',\r\n 'chest',\r\n 'chevron',\r\n 'chevy',\r\n 'chewable',\r\n 'chewer',\r\n 'chewing',\r\n 'chewy',\r\n 'chief',\r\n 'chihuahua',\r\n 'childcare',\r\n 'childhood',\r\n 'childish',\r\n 'childless',\r\n 'childlike',\r\n 'chili',\r\n 'chill',\r\n 'chimp',\r\n 'chip',\r\n 'chirping',\r\n 'chirpy',\r\n 'chitchat',\r\n 'chivalry',\r\n 'chive',\r\n 'chloride',\r\n 'chlorine',\r\n 'choice',\r\n 'chokehold',\r\n 'choking',\r\n 'chomp',\r\n 'chooser',\r\n 'choosing',\r\n 'choosy',\r\n 'chop',\r\n 'chosen',\r\n 'chowder',\r\n 'chowtime',\r\n 'chrome',\r\n 'chubby',\r\n 'chuck',\r\n 'chug',\r\n 'chummy',\r\n 'chump',\r\n 'chunk',\r\n 'churn',\r\n 'chute',\r\n 'cider',\r\n 'cilantro',\r\n 'cinch',\r\n 'cinema',\r\n 'cinnamon',\r\n 'circle',\r\n 'circling',\r\n 'circular',\r\n 'circulate',\r\n 'circus',\r\n 'citable',\r\n 'citadel',\r\n 'citation',\r\n 'citizen',\r\n 'citric',\r\n 'citrus',\r\n 'city',\r\n 'civic',\r\n 'civil',\r\n 'clad',\r\n 'claim',\r\n 'clambake',\r\n 'clammy',\r\n 'clamor',\r\n 'clamp',\r\n 'clamshell',\r\n 'clang',\r\n 'clanking',\r\n 'clapped',\r\n 'clapper',\r\n 'clapping',\r\n 'clarify',\r\n 'clarinet',\r\n 'clarity',\r\n 'clash',\r\n 'clasp',\r\n 'class',\r\n 'clatter',\r\n 'clause',\r\n 'clavicle',\r\n 'claw',\r\n 'clay',\r\n 'clean',\r\n 'clear',\r\n 'cleat',\r\n 'cleaver',\r\n 'cleft',\r\n 'clench',\r\n 'clergyman',\r\n 'clerical',\r\n 'clerk',\r\n 'clever',\r\n 'clicker',\r\n 'client',\r\n 'climate',\r\n 'climatic',\r\n 'cling',\r\n 'clinic',\r\n 'clinking',\r\n 'clip',\r\n 'clique',\r\n 'cloak',\r\n 'clobber',\r\n 'clock',\r\n 'clone',\r\n 'cloning',\r\n 'closable',\r\n 'closure',\r\n 'clothes',\r\n 'clothing',\r\n 'cloud',\r\n 'clover',\r\n 'clubbed',\r\n 'clubbing',\r\n 'clubhouse',\r\n 'clump',\r\n 'clumsily',\r\n 'clumsy',\r\n 'clunky',\r\n 'clustered',\r\n 'clutch',\r\n 'clutter',\r\n 'coach',\r\n 'coagulant',\r\n 'coastal',\r\n 'coaster',\r\n 'coasting',\r\n 'coastland',\r\n 'coastline',\r\n 'coat',\r\n 'coauthor',\r\n 'cobalt',\r\n 'cobbler',\r\n 'cobweb',\r\n 'cocoa',\r\n 'coconut',\r\n 'cod',\r\n 'coeditor',\r\n 'coerce',\r\n 'coexist',\r\n 'coffee',\r\n 'cofounder',\r\n 'cognition',\r\n 'cognitive',\r\n 'cogwheel',\r\n 'coherence',\r\n 'coherent',\r\n 'cohesive',\r\n 'coil',\r\n 'coke',\r\n 'cola',\r\n 'cold',\r\n 'coleslaw',\r\n 'coliseum',\r\n 'collage',\r\n 'collapse',\r\n 'collar',\r\n 'collected',\r\n 'collector',\r\n 'collide',\r\n 'collie',\r\n 'collision',\r\n 'colonial',\r\n 'colonist',\r\n 'colonize',\r\n 'colony',\r\n 'colossal',\r\n 'colt',\r\n 'coma',\r\n 'come',\r\n 'comfort',\r\n 'comfy',\r\n 'comic',\r\n 'coming',\r\n 'comma',\r\n 'commence',\r\n 'commend',\r\n 'comment',\r\n 'commerce',\r\n 'commode',\r\n 'commodity',\r\n 'commodore',\r\n 'common',\r\n 'commotion',\r\n 'commute',\r\n 'commuting',\r\n 'compacted',\r\n 'compacter',\r\n 'compactly',\r\n 'compactor',\r\n 'companion',\r\n 'company',\r\n 'compare',\r\n 'compel',\r\n 'compile',\r\n 'comply',\r\n 'component',\r\n 'composed',\r\n 'composer',\r\n 'composite',\r\n 'compost',\r\n 'composure',\r\n 'compound',\r\n 'compress',\r\n 'comprised',\r\n 'computer',\r\n 'computing',\r\n 'comrade',\r\n 'concave',\r\n 'conceal',\r\n 'conceded',\r\n 'concept',\r\n 'concerned',\r\n 'concert',\r\n 'conch',\r\n 'concierge',\r\n 'concise',\r\n 'conclude',\r\n 'concrete',\r\n 'concur',\r\n 'condense',\r\n 'condiment',\r\n 'condition',\r\n 'condone',\r\n 'conducive',\r\n 'conductor',\r\n 'conduit',\r\n 'cone',\r\n 'confess',\r\n 'confetti',\r\n 'confidant',\r\n 'confident',\r\n 'confider',\r\n 'confiding',\r\n 'configure',\r\n 'confined',\r\n 'confining',\r\n 'confirm',\r\n 'conflict',\r\n 'conform',\r\n 'confound',\r\n 'confront',\r\n 'confused',\r\n 'confusing',\r\n 'confusion',\r\n 'congenial',\r\n 'congested',\r\n 'congrats',\r\n 'congress',\r\n 'conical',\r\n 'conjoined',\r\n 'conjure',\r\n 'conjuror',\r\n 'connected',\r\n 'connector',\r\n 'consensus',\r\n 'consent',\r\n 'console',\r\n 'consoling',\r\n 'consonant',\r\n 'constable',\r\n 'constant',\r\n 'constrain',\r\n 'constrict',\r\n 'construct',\r\n 'consult',\r\n 'consumer',\r\n 'consuming',\r\n 'contact',\r\n 'container',\r\n 'contempt',\r\n 'contend',\r\n 'contented',\r\n 'contently',\r\n 'contents',\r\n 'contest',\r\n 'context',\r\n 'contort',\r\n 'contour',\r\n 'contrite',\r\n 'control',\r\n 'contusion',\r\n 'convene',\r\n 'convent',\r\n 'copartner',\r\n 'cope',\r\n 'copied',\r\n 'copier',\r\n 'copilot',\r\n 'coping',\r\n 'copious',\r\n 'copper',\r\n 'copy',\r\n 'coral',\r\n 'cork',\r\n 'cornball',\r\n 'cornbread',\r\n 'corncob',\r\n 'cornea',\r\n 'corned',\r\n 'corner',\r\n 'cornfield',\r\n 'cornflake',\r\n 'cornhusk',\r\n 'cornmeal',\r\n 'cornstalk',\r\n 'corny',\r\n 'coronary',\r\n 'coroner',\r\n 'corporal',\r\n 'corporate',\r\n 'corral',\r\n 'correct',\r\n 'corridor',\r\n 'corrode',\r\n 'corroding',\r\n 'corrosive',\r\n 'corsage',\r\n 'corset',\r\n 'cortex',\r\n 'cosigner',\r\n 'cosmetics',\r\n 'cosmic',\r\n 'cosmos',\r\n 'cosponsor',\r\n 'cost',\r\n 'cottage',\r\n 'cotton',\r\n 'couch',\r\n 'cough',\r\n 'could',\r\n 'countable',\r\n 'countdown',\r\n 'counting',\r\n 'countless',\r\n 'country',\r\n 'county',\r\n 'courier',\r\n 'covenant',\r\n 'cover',\r\n 'coveted',\r\n 'coveting',\r\n 'coyness',\r\n 'cozily',\r\n 'coziness',\r\n 'cozy',\r\n 'crabbing',\r\n 'crabgrass',\r\n 'crablike',\r\n 'crabmeat',\r\n 'cradle',\r\n 'cradling',\r\n 'crafter',\r\n 'craftily',\r\n 'craftsman',\r\n 'craftwork',\r\n 'crafty',\r\n 'cramp',\r\n 'cranberry',\r\n 'crane',\r\n 'cranial',\r\n 'cranium',\r\n 'crank',\r\n 'crate',\r\n 'crave',\r\n 'craving',\r\n 'crawfish',\r\n 'crawlers',\r\n 'crawling',\r\n 'crayfish',\r\n 'crayon',\r\n 'crazed',\r\n 'crazily',\r\n 'craziness',\r\n 'crazy',\r\n 'creamed',\r\n 'creamer',\r\n 'creamlike',\r\n 'crease',\r\n 'creasing',\r\n 'creatable',\r\n 'create',\r\n 'creation',\r\n 'creative',\r\n 'creature',\r\n 'credible',\r\n 'credibly',\r\n 'credit',\r\n 'creed',\r\n 'creme',\r\n 'creole',\r\n 'crepe',\r\n 'crept',\r\n 'crescent',\r\n 'crested',\r\n 'cresting',\r\n 'crestless',\r\n 'crevice',\r\n 'crewless',\r\n 'crewman',\r\n 'crewmate',\r\n 'crib',\r\n 'cricket',\r\n 'cried',\r\n 'crier',\r\n 'crimp',\r\n 'crimson',\r\n 'cringe',\r\n 'cringing',\r\n 'crinkle',\r\n 'crinkly',\r\n 'crisped',\r\n 'crisping',\r\n 'crisply',\r\n 'crispness',\r\n 'crispy',\r\n 'criteria',\r\n 'critter',\r\n 'croak',\r\n 'crock',\r\n 'crook',\r\n 'croon',\r\n 'crop',\r\n 'cross',\r\n 'crouch',\r\n 'crouton',\r\n 'crowbar',\r\n 'crowd',\r\n 'crown',\r\n 'crucial',\r\n 'crudely',\r\n 'crudeness',\r\n 'cruelly',\r\n 'cruelness',\r\n 'cruelty',\r\n 'crumb',\r\n 'crummiest',\r\n 'crummy',\r\n 'crumpet',\r\n 'crumpled',\r\n 'cruncher',\r\n 'crunching',\r\n 'crunchy',\r\n 'crusader',\r\n 'crushable',\r\n 'crushed',\r\n 'crusher',\r\n 'crushing',\r\n 'crust',\r\n 'crux',\r\n 'crying',\r\n 'cryptic',\r\n 'crystal',\r\n 'cubbyhole',\r\n 'cube',\r\n 'cubical',\r\n 'cubicle',\r\n 'cucumber',\r\n 'cuddle',\r\n 'cuddly',\r\n 'cufflink',\r\n 'culinary',\r\n 'culminate',\r\n 'culpable',\r\n 'culprit',\r\n 'cultivate',\r\n 'cultural',\r\n 'culture',\r\n 'cupbearer',\r\n 'cupcake',\r\n 'cupid',\r\n 'cupped',\r\n 'cupping',\r\n 'curable',\r\n 'curator',\r\n 'curdle',\r\n 'cure',\r\n 'curfew',\r\n 'curing',\r\n 'curled',\r\n 'curler',\r\n 'curliness',\r\n 'curling',\r\n 'curly',\r\n 'curry',\r\n 'curse',\r\n 'cursive',\r\n 'cursor',\r\n 'curtain',\r\n 'curtly',\r\n 'curtsy',\r\n 'curvature',\r\n 'curve',\r\n 'curvy',\r\n 'cushy',\r\n 'cusp',\r\n 'cussed',\r\n 'custard',\r\n 'custodian',\r\n 'custody',\r\n 'customary',\r\n 'customer',\r\n 'customize',\r\n 'customs',\r\n 'cut',\r\n 'cycle',\r\n 'cyclic',\r\n 'cycling',\r\n 'cyclist',\r\n 'cylinder',\r\n 'cymbal',\r\n 'cytoplasm',\r\n 'cytoplast',\r\n 'dab',\r\n 'dad',\r\n 'daffodil',\r\n 'dagger',\r\n 'daily',\r\n 'daintily',\r\n 'dainty',\r\n 'dairy',\r\n 'daisy',\r\n 'dallying',\r\n 'dance',\r\n 'dancing',\r\n 'dandelion',\r\n 'dander',\r\n 'dandruff',\r\n 'dandy',\r\n 'danger',\r\n 'dangle',\r\n 'dangling',\r\n 'daredevil',\r\n 'dares',\r\n 'daringly',\r\n 'darkened',\r\n 'darkening',\r\n 'darkish',\r\n 'darkness',\r\n 'darkroom',\r\n 'darling',\r\n 'darn',\r\n 'dart',\r\n 'darwinism',\r\n 'dash',\r\n 'dastardly',\r\n 'data',\r\n 'datebook',\r\n 'dating',\r\n 'daughter',\r\n 'daunting',\r\n 'dawdler',\r\n 'dawn',\r\n 'daybed',\r\n 'daybreak',\r\n 'daycare',\r\n 'daydream',\r\n 'daylight',\r\n 'daylong',\r\n 'dayroom',\r\n 'daytime',\r\n 'dazzler',\r\n 'dazzling',\r\n 'deacon',\r\n 'deafening',\r\n 'deafness',\r\n 'dealer',\r\n 'dealing',\r\n 'dealmaker',\r\n 'dealt',\r\n 'dean',\r\n 'debatable',\r\n 'debate',\r\n 'debating',\r\n 'debit',\r\n 'debrief',\r\n 'debtless',\r\n 'debtor',\r\n 'debug',\r\n 'debunk',\r\n 'decade',\r\n 'decaf',\r\n 'decal',\r\n 'decathlon',\r\n 'decay',\r\n 'deceased',\r\n 'deceit',\r\n 'deceiver',\r\n 'deceiving',\r\n 'december',\r\n 'decency',\r\n 'decent',\r\n 'deception',\r\n 'deceptive',\r\n 'decibel',\r\n 'decidable',\r\n 'decimal',\r\n 'decimeter',\r\n 'decipher',\r\n 'deck',\r\n 'declared',\r\n 'decline',\r\n 'decode',\r\n 'decompose',\r\n 'decorated',\r\n 'decorator',\r\n 'decoy',\r\n 'decrease',\r\n 'decree',\r\n 'dedicate',\r\n 'dedicator',\r\n 'deduce',\r\n 'deduct',\r\n 'deed',\r\n 'deem',\r\n 'deepen',\r\n 'deeply',\r\n 'deepness',\r\n 'deface',\r\n 'defacing',\r\n 'defame',\r\n 'default',\r\n 'defeat',\r\n 'defection',\r\n 'defective',\r\n 'defendant',\r\n 'defender',\r\n 'defense',\r\n 'defensive',\r\n 'deferral',\r\n 'deferred',\r\n 'defiance',\r\n 'defiant',\r\n 'defile',\r\n 'defiling',\r\n 'define',\r\n 'definite',\r\n 'deflate',\r\n 'deflation',\r\n 'deflator',\r\n 'deflected',\r\n 'deflector',\r\n 'defog',\r\n 'deforest',\r\n 'defraud',\r\n 'defrost',\r\n 'deftly',\r\n 'defuse',\r\n 'defy',\r\n 'degraded',\r\n 'degrading',\r\n 'degrease',\r\n 'degree',\r\n 'dehydrate',\r\n 'deity',\r\n 'dejected',\r\n 'delay',\r\n 'delegate',\r\n 'delegator',\r\n 'delete',\r\n 'deletion',\r\n 'delicacy',\r\n 'delicate',\r\n 'delicious',\r\n 'delighted',\r\n 'delirious',\r\n 'delirium',\r\n 'deliverer',\r\n 'delivery',\r\n 'delouse',\r\n 'delta',\r\n 'deluge',\r\n 'delusion',\r\n 'deluxe',\r\n 'demanding',\r\n 'demeaning',\r\n 'demeanor',\r\n 'demise',\r\n 'democracy',\r\n 'democrat',\r\n 'demote',\r\n 'demotion',\r\n 'demystify',\r\n 'denatured',\r\n 'deniable',\r\n 'denial',\r\n 'denim',\r\n 'denote',\r\n 'dense',\r\n 'density',\r\n 'dental',\r\n 'dentist',\r\n 'denture',\r\n 'deny',\r\n 'deodorant',\r\n 'deodorize',\r\n 'departed',\r\n 'departure',\r\n 'depict',\r\n 'deplete',\r\n 'depletion',\r\n 'deplored',\r\n 'deploy',\r\n 'deport',\r\n 'depose',\r\n 'depraved',\r\n 'depravity',\r\n 'deprecate',\r\n 'depress',\r\n 'deprive',\r\n 'depth',\r\n 'deputize',\r\n 'deputy',\r\n 'derail',\r\n 'deranged',\r\n 'derby',\r\n 'derived',\r\n 'desecrate',\r\n 'deserve',\r\n 'deserving',\r\n 'designate',\r\n 'designed',\r\n 'designer',\r\n 'designing',\r\n 'deskbound',\r\n 'desktop',\r\n 'deskwork',\r\n 'desolate',\r\n 'despair',\r\n 'despise',\r\n 'despite',\r\n 'destiny',\r\n 'destitute',\r\n 'destruct',\r\n 'detached',\r\n 'detail',\r\n 'detection',\r\n 'detective',\r\n 'detector',\r\n 'detention',\r\n 'detergent',\r\n 'detest',\r\n 'detonate',\r\n 'detonator',\r\n 'detoxify',\r\n 'detract',\r\n 'deuce',\r\n 'devalue',\r\n 'deviancy',\r\n 'deviant',\r\n 'deviate',\r\n 'deviation',\r\n 'deviator',\r\n 'device',\r\n 'devious',\r\n 'devotedly',\r\n 'devotee',\r\n 'devotion',\r\n 'devourer',\r\n 'devouring',\r\n 'devoutly',\r\n 'dexterity',\r\n 'dexterous',\r\n 'diabetes',\r\n 'diabetic',\r\n 'diabolic',\r\n 'diagnoses',\r\n 'diagnosis',\r\n 'diagram',\r\n 'dial',\r\n 'diameter',\r\n 'diaper',\r\n 'diaphragm',\r\n 'diary',\r\n 'dice',\r\n 'dicing',\r\n 'dictate',\r\n 'dictation',\r\n 'dictator',\r\n 'difficult',\r\n 'diffused',\r\n 'diffuser',\r\n 'diffusion',\r\n 'diffusive',\r\n 'dig',\r\n 'dilation',\r\n 'diligence',\r\n 'diligent',\r\n 'dill',\r\n 'dilute',\r\n 'dime',\r\n 'diminish',\r\n 'dimly',\r\n 'dimmed',\r\n 'dimmer',\r\n 'dimness',\r\n 'dimple',\r\n 'diner',\r\n 'dingbat',\r\n 'dinghy',\r\n 'dinginess',\r\n 'dingo',\r\n 'dingy',\r\n 'dining',\r\n 'dinner',\r\n 'diocese',\r\n 'dioxide',\r\n 'diploma',\r\n 'dipped',\r\n 'dipper',\r\n 'dipping',\r\n 'directed',\r\n 'direction',\r\n 'directive',\r\n 'directly',\r\n 'directory',\r\n 'direness',\r\n 'dirtiness',\r\n 'disabled',\r\n 'disagree',\r\n 'disallow',\r\n 'disarm',\r\n 'disarray',\r\n 'disaster',\r\n 'disband',\r\n 'disbelief',\r\n 'disburse',\r\n 'discard',\r\n 'discern',\r\n 'discharge',\r\n 'disclose',\r\n 'discolor',\r\n 'discount',\r\n 'discourse',\r\n 'discover',\r\n 'discuss',\r\n 'disdain',\r\n 'disengage',\r\n 'disfigure',\r\n 'disgrace',\r\n 'dish',\r\n 'disinfect',\r\n 'disjoin',\r\n 'disk',\r\n 'dislike',\r\n 'disliking',\r\n 'dislocate',\r\n 'dislodge',\r\n 'disloyal',\r\n 'dismantle',\r\n 'dismay',\r\n 'dismiss',\r\n 'dismount',\r\n 'disobey',\r\n 'disorder',\r\n 'disown',\r\n 'disparate',\r\n 'disparity',\r\n 'dispatch',\r\n 'dispense',\r\n 'dispersal',\r\n 'dispersed',\r\n 'disperser',\r\n 'displace',\r\n 'display',\r\n 'displease',\r\n 'disposal',\r\n 'dispose',\r\n 'disprove',\r\n 'dispute',\r\n 'disregard',\r\n 'disrupt',\r\n 'dissuade',\r\n 'distance',\r\n 'distant',\r\n 'distaste',\r\n 'distill',\r\n 'distinct',\r\n 'distort',\r\n 'distract',\r\n 'distress',\r\n 'district',\r\n 'distrust',\r\n 'ditch',\r\n 'ditto',\r\n 'ditzy',\r\n 'dividable',\r\n 'divided',\r\n 'dividend',\r\n 'dividers',\r\n 'dividing',\r\n 'divinely',\r\n 'diving',\r\n 'divinity',\r\n 'divisible',\r\n 'divisibly',\r\n 'division',\r\n 'divisive',\r\n 'divorcee',\r\n 'dizziness',\r\n 'dizzy',\r\n 'doable',\r\n 'docile',\r\n 'dock',\r\n 'doctrine',\r\n 'document',\r\n 'dodge',\r\n 'dodgy',\r\n 'doily',\r\n 'doing',\r\n 'dole',\r\n 'dollar',\r\n 'dollhouse',\r\n 'dollop',\r\n 'dolly',\r\n 'dolphin',\r\n 'domain',\r\n 'domelike',\r\n 'domestic',\r\n 'dominion',\r\n 'dominoes',\r\n 'donated',\r\n 'donation',\r\n 'donator',\r\n 'donor',\r\n 'donut',\r\n 'doodle',\r\n 'doorbell',\r\n 'doorframe',\r\n 'doorknob',\r\n 'doorman',\r\n 'doormat',\r\n 'doornail',\r\n 'doorpost',\r\n 'doorstep',\r\n 'doorstop',\r\n 'doorway',\r\n 'doozy',\r\n 'dork',\r\n 'dormitory',\r\n 'dorsal',\r\n 'dosage',\r\n 'dose',\r\n 'dotted',\r\n 'doubling',\r\n 'douche',\r\n 'dove',\r\n 'down',\r\n 'dowry',\r\n 'doze',\r\n 'drab',\r\n 'dragging',\r\n 'dragonfly',\r\n 'dragonish',\r\n 'dragster',\r\n 'drainable',\r\n 'drainage',\r\n 'drained',\r\n 'drainer',\r\n 'drainpipe',\r\n 'dramatic',\r\n 'dramatize',\r\n 'drank',\r\n 'drapery',\r\n 'drastic',\r\n 'draw',\r\n 'dreaded',\r\n 'dreadful',\r\n 'dreadlock',\r\n 'dreamboat',\r\n 'dreamily',\r\n 'dreamland',\r\n 'dreamless',\r\n 'dreamlike',\r\n 'dreamt',\r\n 'dreamy',\r\n 'drearily',\r\n 'dreary',\r\n 'drench',\r\n 'dress',\r\n 'drew',\r\n 'dribble',\r\n 'dried',\r\n 'drier',\r\n 'drift',\r\n 'driller',\r\n 'drilling',\r\n 'drinkable',\r\n 'drinking',\r\n 'dripping',\r\n 'drippy',\r\n 'drivable',\r\n 'driven',\r\n 'driver',\r\n 'driveway',\r\n 'driving',\r\n 'drizzle',\r\n 'drizzly',\r\n 'drone',\r\n 'drool',\r\n 'droop',\r\n 'drop-down',\r\n 'dropbox',\r\n 'dropkick',\r\n 'droplet',\r\n 'dropout',\r\n 'dropper',\r\n 'drove',\r\n 'drown',\r\n 'drowsily',\r\n 'drudge',\r\n 'drum',\r\n 'dry',\r\n 'dubbed',\r\n 'dubiously',\r\n 'duchess',\r\n 'duckbill',\r\n 'ducking',\r\n 'duckling',\r\n 'ducktail',\r\n 'ducky',\r\n 'duct',\r\n 'dude',\r\n 'duffel',\r\n 'dugout',\r\n 'duh',\r\n 'duke',\r\n 'duller',\r\n 'dullness',\r\n 'duly',\r\n 'dumping',\r\n 'dumpling',\r\n 'dumpster',\r\n 'duo',\r\n 'dupe',\r\n 'duplex',\r\n 'duplicate',\r\n 'duplicity',\r\n 'durable',\r\n 'durably',\r\n 'duration',\r\n 'duress',\r\n 'during',\r\n 'dusk',\r\n 'dust',\r\n 'dutiful',\r\n 'duty',\r\n 'duvet',\r\n 'dwarf',\r\n 'dweeb',\r\n 'dwelled',\r\n 'dweller',\r\n 'dwelling',\r\n 'dwindle',\r\n 'dwindling',\r\n 'dynamic',\r\n 'dynamite',\r\n 'dynasty',\r\n 'dyslexia',\r\n 'dyslexic',\r\n 'each',\r\n 'eagle',\r\n 'earache',\r\n 'eardrum',\r\n 'earflap',\r\n 'earful',\r\n 'earlobe',\r\n 'early',\r\n 'earmark',\r\n 'earmuff',\r\n 'earphone',\r\n 'earpiece',\r\n 'earplugs',\r\n 'earring',\r\n 'earshot',\r\n 'earthen',\r\n 'earthlike',\r\n 'earthling',\r\n 'earthly',\r\n 'earthworm',\r\n 'earthy',\r\n 'earwig',\r\n 'easeful',\r\n 'easel',\r\n 'easiest',\r\n 'easily',\r\n 'easiness',\r\n 'easing',\r\n 'eastbound',\r\n 'eastcoast',\r\n 'easter',\r\n 'eastward',\r\n 'eatable',\r\n 'eaten',\r\n 'eatery',\r\n 'eating',\r\n 'eats',\r\n 'ebay',\r\n 'ebony',\r\n 'ebook',\r\n 'ecard',\r\n 'eccentric',\r\n 'echo',\r\n 'eclair',\r\n 'eclipse',\r\n 'ecologist',\r\n 'ecology',\r\n 'economic',\r\n 'economist',\r\n 'economy',\r\n 'ecosphere',\r\n 'ecosystem',\r\n 'edge',\r\n 'edginess',\r\n 'edging',\r\n 'edgy',\r\n 'edition',\r\n 'editor',\r\n 'educated',\r\n 'education',\r\n 'educator',\r\n 'eel',\r\n 'effective',\r\n 'effects',\r\n 'efficient',\r\n 'effort',\r\n 'eggbeater',\r\n 'egging',\r\n 'eggnog',\r\n 'eggplant',\r\n 'eggshell',\r\n 'egomaniac',\r\n 'egotism',\r\n 'egotistic',\r\n 'either',\r\n 'eject',\r\n 'elaborate',\r\n 'elastic',\r\n 'elated',\r\n 'elbow',\r\n 'eldercare',\r\n 'elderly',\r\n 'eldest',\r\n 'electable',\r\n 'election',\r\n 'elective',\r\n 'elephant',\r\n 'elevate',\r\n 'elevating',\r\n 'elevation',\r\n 'elevator',\r\n 'eleven',\r\n 'elf',\r\n 'eligible',\r\n 'eligibly',\r\n 'eliminate',\r\n 'elite',\r\n 'elitism',\r\n 'elixir',\r\n 'elk',\r\n 'ellipse',\r\n 'elliptic',\r\n 'elm',\r\n 'elongated',\r\n 'elope',\r\n 'eloquence',\r\n 'eloquent',\r\n 'elsewhere',\r\n 'elude',\r\n 'elusive',\r\n 'elves',\r\n 'email',\r\n 'embargo',\r\n 'embark',\r\n 'embassy',\r\n 'embattled',\r\n 'embellish',\r\n 'ember',\r\n 'embezzle',\r\n 'emblaze',\r\n 'emblem',\r\n 'embody',\r\n 'embolism',\r\n 'emboss',\r\n 'embroider',\r\n 'emcee',\r\n 'emerald',\r\n 'emergency',\r\n 'emission',\r\n 'emit',\r\n 'emote',\r\n 'emoticon',\r\n 'emotion',\r\n 'empathic',\r\n 'empathy',\r\n 'emperor',\r\n 'emphases',\r\n 'emphasis',\r\n 'emphasize',\r\n 'emphatic',\r\n 'empirical',\r\n 'employed',\r\n 'employee',\r\n 'employer',\r\n 'emporium',\r\n 'empower',\r\n 'emptier',\r\n 'emptiness',\r\n 'empty',\r\n 'emu',\r\n 'enable',\r\n 'enactment',\r\n 'enamel',\r\n 'enchanted',\r\n 'enchilada',\r\n 'encircle',\r\n 'enclose',\r\n 'enclosure',\r\n 'encode',\r\n 'encore',\r\n 'encounter',\r\n 'encourage',\r\n 'encroach',\r\n 'encrust',\r\n 'encrypt',\r\n 'endanger',\r\n 'endeared',\r\n 'endearing',\r\n 'ended',\r\n 'ending',\r\n 'endless',\r\n 'endnote',\r\n 'endocrine',\r\n 'endorphin',\r\n 'endorse',\r\n 'endowment',\r\n 'endpoint',\r\n 'endurable',\r\n 'endurance',\r\n 'enduring',\r\n 'energetic',\r\n 'energize',\r\n 'energy',\r\n 'enforced',\r\n 'enforcer',\r\n 'engaged',\r\n 'engaging',\r\n 'engine',\r\n 'engorge',\r\n 'engraved',\r\n 'engraver',\r\n 'engraving',\r\n 'engross',\r\n 'engulf',\r\n 'enhance',\r\n 'enigmatic',\r\n 'enjoyable',\r\n 'enjoyably',\r\n 'enjoyer',\r\n 'enjoying',\r\n 'enjoyment',\r\n 'enlarged',\r\n 'enlarging',\r\n 'enlighten',\r\n 'enlisted',\r\n 'enquirer',\r\n 'enrage',\r\n 'enrich',\r\n 'enroll',\r\n 'enslave',\r\n 'ensnare',\r\n 'ensure',\r\n 'entail',\r\n 'entangled',\r\n 'entering',\r\n 'entertain',\r\n 'enticing',\r\n 'entire',\r\n 'entitle',\r\n 'entity',\r\n 'entomb',\r\n 'entourage',\r\n 'entrap',\r\n 'entree',\r\n 'entrench',\r\n 'entrust',\r\n 'entryway',\r\n 'entwine',\r\n 'enunciate',\r\n 'envelope',\r\n 'enviable',\r\n 'enviably',\r\n 'envious',\r\n 'envision',\r\n 'envoy',\r\n 'envy',\r\n 'enzyme',\r\n 'epic',\r\n 'epidemic',\r\n 'epidermal',\r\n 'epidermis',\r\n 'epidural',\r\n 'epilepsy',\r\n 'epileptic',\r\n 'epilogue',\r\n 'epiphany',\r\n 'episode',\r\n 'equal',\r\n 'equate',\r\n 'equation',\r\n 'equator',\r\n 'equinox',\r\n 'equipment',\r\n 'equity',\r\n 'equivocal',\r\n 'eradicate',\r\n 'erasable',\r\n 'erased',\r\n 'eraser',\r\n 'erasure',\r\n 'ergonomic',\r\n 'errand',\r\n 'errant',\r\n 'erratic',\r\n 'error',\r\n 'erupt',\r\n 'escalate',\r\n 'escalator',\r\n 'escapable',\r\n 'escapade',\r\n 'escapist',\r\n 'escargot',\r\n 'eskimo',\r\n 'esophagus',\r\n 'espionage',\r\n 'espresso',\r\n 'esquire',\r\n 'essay',\r\n 'essence',\r\n 'essential',\r\n 'establish',\r\n 'estate',\r\n 'esteemed',\r\n 'estimate',\r\n 'estimator',\r\n 'estranged',\r\n 'estrogen',\r\n 'etching',\r\n 'eternal',\r\n 'eternity',\r\n 'ethanol',\r\n 'ether',\r\n 'ethically',\r\n 'ethics',\r\n 'euphemism',\r\n 'evacuate',\r\n 'evacuee',\r\n 'evade',\r\n 'evaluate',\r\n 'evaluator',\r\n 'evaporate',\r\n 'evasion',\r\n 'evasive',\r\n 'even',\r\n 'everglade',\r\n 'evergreen',\r\n 'everybody',\r\n 'everyday',\r\n 'everyone',\r\n 'evict',\r\n 'evidence',\r\n 'evident',\r\n 'evil',\r\n 'evoke',\r\n 'evolution',\r\n 'evolve',\r\n 'exact',\r\n 'exalted',\r\n 'example',\r\n 'excavate',\r\n 'excavator',\r\n 'exceeding',\r\n 'exception',\r\n 'excess',\r\n 'exchange',\r\n 'excitable',\r\n 'exciting',\r\n 'exclaim',\r\n 'exclude',\r\n 'excluding',\r\n 'exclusion',\r\n 'exclusive',\r\n 'excretion',\r\n 'excretory',\r\n 'excursion',\r\n 'excusable',\r\n 'excusably',\r\n 'excuse',\r\n 'exemplary',\r\n 'exemplify',\r\n 'exemption',\r\n 'exerciser',\r\n 'exert',\r\n 'exes',\r\n 'exfoliate',\r\n 'exhale',\r\n 'exhaust',\r\n 'exhume',\r\n 'exile',\r\n 'existing',\r\n 'exit',\r\n 'exodus',\r\n 'exonerate',\r\n 'exorcism',\r\n 'exorcist',\r\n 'expand',\r\n 'expanse',\r\n 'expansion',\r\n 'expansive',\r\n 'expectant',\r\n 'expedited',\r\n 'expediter',\r\n 'expel',\r\n 'expend',\r\n 'expenses',\r\n 'expensive',\r\n 'expert',\r\n 'expire',\r\n 'expiring',\r\n 'explain',\r\n 'expletive',\r\n 'explicit',\r\n 'explode',\r\n 'exploit',\r\n 'explore',\r\n 'exploring',\r\n 'exponent',\r\n 'exporter',\r\n 'exposable',\r\n 'expose',\r\n 'exposure',\r\n 'express',\r\n 'expulsion',\r\n 'exquisite',\r\n 'extended',\r\n 'extending',\r\n 'extent',\r\n 'extenuate',\r\n 'exterior',\r\n 'external',\r\n 'extinct',\r\n 'extortion',\r\n 'extradite',\r\n 'extras',\r\n 'extrovert',\r\n 'extrude',\r\n 'extruding',\r\n 'exuberant',\r\n 'fable',\r\n 'fabric',\r\n 'fabulous',\r\n 'facebook',\r\n 'facecloth',\r\n 'facedown',\r\n 'faceless',\r\n 'facelift',\r\n 'faceplate',\r\n 'faceted',\r\n 'facial',\r\n 'facility',\r\n 'facing',\r\n 'facsimile',\r\n 'faction',\r\n 'factoid',\r\n 'factor',\r\n 'factsheet',\r\n 'factual',\r\n 'faculty',\r\n 'fade',\r\n 'fading',\r\n 'failing',\r\n 'falcon',\r\n 'fall',\r\n 'false',\r\n 'falsify',\r\n 'fame',\r\n 'familiar',\r\n 'family',\r\n 'famine',\r\n 'famished',\r\n 'fanatic',\r\n 'fancied',\r\n 'fanciness',\r\n 'fancy',\r\n 'fanfare',\r\n 'fang',\r\n 'fanning',\r\n 'fantasize',\r\n 'fantastic',\r\n 'fantasy',\r\n 'fascism',\r\n 'fastball',\r\n 'faster',\r\n 'fasting',\r\n 'fastness',\r\n 'faucet',\r\n 'favorable',\r\n 'favorably',\r\n 'favored',\r\n 'favoring',\r\n 'favorite',\r\n 'fax',\r\n 'feast',\r\n 'federal',\r\n 'fedora',\r\n 'feeble',\r\n 'feed',\r\n 'feel',\r\n 'feisty',\r\n 'feline',\r\n 'felt-tip',\r\n 'feminine',\r\n 'feminism',\r\n 'feminist',\r\n 'feminize',\r\n 'femur',\r\n 'fence',\r\n 'fencing',\r\n 'fender',\r\n 'ferment',\r\n 'fernlike',\r\n 'ferocious',\r\n 'ferocity',\r\n 'ferret',\r\n 'ferris',\r\n 'ferry',\r\n 'fervor',\r\n 'fester',\r\n 'festival',\r\n 'festive',\r\n 'festivity',\r\n 'fetal',\r\n 'fetch',\r\n 'fever',\r\n 'fiber',\r\n 'fiction',\r\n 'fiddle',\r\n 'fiddling',\r\n 'fidelity',\r\n 'fidgeting',\r\n 'fidgety',\r\n 'fifteen',\r\n 'fifth',\r\n 'fiftieth',\r\n 'fifty',\r\n 'figment',\r\n 'figure',\r\n 'figurine',\r\n 'filing',\r\n 'filled',\r\n 'filler',\r\n 'filling',\r\n 'film',\r\n 'filter',\r\n 'filth',\r\n 'filtrate',\r\n 'finale',\r\n 'finalist',\r\n 'finalize',\r\n 'finally',\r\n 'finance',\r\n 'financial',\r\n 'finch',\r\n 'fineness',\r\n 'finer',\r\n 'finicky',\r\n 'finished',\r\n 'finisher',\r\n 'finishing',\r\n 'finite',\r\n 'finless',\r\n 'finlike',\r\n 'fiscally',\r\n 'fit',\r\n 'five',\r\n 'flaccid',\r\n 'flagman',\r\n 'flagpole',\r\n 'flagship',\r\n 'flagstick',\r\n 'flagstone',\r\n 'flail',\r\n 'flakily',\r\n 'flaky',\r\n 'flame',\r\n 'flammable',\r\n 'flanked',\r\n 'flanking',\r\n 'flannels',\r\n 'flap',\r\n 'flaring',\r\n 'flashback',\r\n 'flashbulb',\r\n 'flashcard',\r\n 'flashily',\r\n 'flashing',\r\n 'flashy',\r\n 'flask',\r\n 'flatbed',\r\n 'flatfoot',\r\n 'flatly',\r\n 'flatness',\r\n 'flatten',\r\n 'flattered',\r\n 'flatterer',\r\n 'flattery',\r\n 'flattop',\r\n 'flatware',\r\n 'flatworm',\r\n 'flavored',\r\n 'flavorful',\r\n 'flavoring',\r\n 'flaxseed',\r\n 'fled',\r\n 'fleshed',\r\n 'fleshy',\r\n 'flick',\r\n 'flier',\r\n 'flight',\r\n 'flinch',\r\n 'fling',\r\n 'flint',\r\n 'flip',\r\n 'flirt',\r\n 'float',\r\n 'flock',\r\n 'flogging',\r\n 'flop',\r\n 'floral',\r\n 'florist',\r\n 'floss',\r\n 'flounder',\r\n 'flyable',\r\n 'flyaway',\r\n 'flyer',\r\n 'flying',\r\n 'flyover',\r\n 'flypaper',\r\n 'foam',\r\n 'foe',\r\n 'fog',\r\n 'foil',\r\n 'folic',\r\n 'folk',\r\n 'follicle',\r\n 'follow',\r\n 'fondling',\r\n 'fondly',\r\n 'fondness',\r\n 'fondue',\r\n 'font',\r\n 'food',\r\n 'fool',\r\n 'footage',\r\n 'football',\r\n 'footbath',\r\n 'footboard',\r\n 'footer',\r\n 'footgear',\r\n 'foothill',\r\n 'foothold',\r\n 'footing',\r\n 'footless',\r\n 'footman',\r\n 'footnote',\r\n 'footpad',\r\n 'footpath',\r\n 'footprint',\r\n 'footrest',\r\n 'footsie',\r\n 'footsore',\r\n 'footwear',\r\n 'footwork',\r\n 'fossil',\r\n 'foster',\r\n 'founder',\r\n 'founding',\r\n 'fountain',\r\n 'fox',\r\n 'foyer',\r\n 'fraction',\r\n 'fracture',\r\n 'fragile',\r\n 'fragility',\r\n 'fragment',\r\n 'fragrance',\r\n 'fragrant',\r\n 'frail',\r\n 'frame',\r\n 'framing',\r\n 'frantic',\r\n 'fraternal',\r\n 'frayed',\r\n 'fraying',\r\n 'frays',\r\n 'freckled',\r\n 'freckles',\r\n 'freebase',\r\n 'freebee',\r\n 'freebie',\r\n 'freedom',\r\n 'freefall',\r\n 'freehand',\r\n 'freeing',\r\n 'freeload',\r\n 'freely',\r\n 'freemason',\r\n 'freeness',\r\n 'freestyle',\r\n 'freeware',\r\n 'freeway',\r\n 'freewill',\r\n 'freezable',\r\n 'freezing',\r\n 'freight',\r\n 'french',\r\n 'frenzied',\r\n 'frenzy',\r\n 'frequency',\r\n 'frequent',\r\n 'fresh',\r\n 'fretful',\r\n 'fretted',\r\n 'friction',\r\n 'friday',\r\n 'fridge',\r\n 'fried',\r\n 'friend',\r\n 'frighten',\r\n 'frightful',\r\n 'frigidity',\r\n 'frigidly',\r\n 'frill',\r\n 'fringe',\r\n 'frisbee',\r\n 'frisk',\r\n 'fritter',\r\n 'frivolous',\r\n 'frolic',\r\n 'from',\r\n 'front',\r\n 'frostbite',\r\n 'frosted',\r\n 'frostily',\r\n 'frosting',\r\n 'frostlike',\r\n 'frosty',\r\n 'froth',\r\n 'frown',\r\n 'frozen',\r\n 'fructose',\r\n 'frugality',\r\n 'frugally',\r\n 'fruit',\r\n 'frustrate',\r\n 'frying',\r\n 'gab',\r\n 'gaffe',\r\n 'gag',\r\n 'gainfully',\r\n 'gaining',\r\n 'gains',\r\n 'gala',\r\n 'gallantly',\r\n 'galleria',\r\n 'gallery',\r\n 'galley',\r\n 'gallon',\r\n 'gallows',\r\n 'gallstone',\r\n 'galore',\r\n 'galvanize',\r\n 'gambling',\r\n 'game',\r\n 'gaming',\r\n 'gamma',\r\n 'gander',\r\n 'gangly',\r\n 'gangrene',\r\n 'gangway',\r\n 'gap',\r\n 'garage',\r\n 'garbage',\r\n 'garden',\r\n 'gargle',\r\n 'garland',\r\n 'garlic',\r\n 'garment',\r\n 'garnet',\r\n 'garnish',\r\n 'garter',\r\n 'gas',\r\n 'gatherer',\r\n 'gathering',\r\n 'gating',\r\n 'gauging',\r\n 'gauntlet',\r\n 'gauze',\r\n 'gave',\r\n 'gawk',\r\n 'gazing',\r\n 'gear',\r\n 'gecko',\r\n 'geek',\r\n 'geiger',\r\n 'gem',\r\n 'gender',\r\n 'generic',\r\n 'generous',\r\n 'genetics',\r\n 'genre',\r\n 'gentile',\r\n 'gentleman',\r\n 'gently',\r\n 'gents',\r\n 'geography',\r\n 'geologic',\r\n 'geologist',\r\n 'geology',\r\n 'geometric',\r\n 'geometry',\r\n 'geranium',\r\n 'gerbil',\r\n 'geriatric',\r\n 'germicide',\r\n 'germinate',\r\n 'germless',\r\n 'germproof',\r\n 'gestate',\r\n 'gestation',\r\n 'gesture',\r\n 'getaway',\r\n 'getting',\r\n 'getup',\r\n 'giant',\r\n 'gibberish',\r\n 'giblet',\r\n 'giddily',\r\n 'giddiness',\r\n 'giddy',\r\n 'gift',\r\n 'gigabyte',\r\n 'gigahertz',\r\n 'gigantic',\r\n 'giggle',\r\n 'giggling',\r\n 'giggly',\r\n 'gigolo',\r\n 'gilled',\r\n 'gills',\r\n 'gimmick',\r\n 'girdle',\r\n 'giveaway',\r\n 'given',\r\n 'giver',\r\n 'giving',\r\n 'gizmo',\r\n 'gizzard',\r\n 'glacial',\r\n 'glacier',\r\n 'glade',\r\n 'gladiator',\r\n 'gladly',\r\n 'glamorous',\r\n 'glamour',\r\n 'glance',\r\n 'glancing',\r\n 'glandular',\r\n 'glare',\r\n 'glaring',\r\n 'glass',\r\n 'glaucoma',\r\n 'glazing',\r\n 'gleaming',\r\n 'gleeful',\r\n 'glider',\r\n 'gliding',\r\n 'glimmer',\r\n 'glimpse',\r\n 'glisten',\r\n 'glitch',\r\n 'glitter',\r\n 'glitzy',\r\n 'gloater',\r\n 'gloating',\r\n 'gloomily',\r\n 'gloomy',\r\n 'glorified',\r\n 'glorifier',\r\n 'glorify',\r\n 'glorious',\r\n 'glory',\r\n 'gloss',\r\n 'glove',\r\n 'glowing',\r\n 'glowworm',\r\n 'glucose',\r\n 'glue',\r\n 'gluten',\r\n 'glutinous',\r\n 'glutton',\r\n 'gnarly',\r\n 'gnat',\r\n 'goal',\r\n 'goatskin',\r\n 'goes',\r\n 'goggles',\r\n 'going',\r\n 'goldfish',\r\n 'goldmine',\r\n 'goldsmith',\r\n 'golf',\r\n 'goliath',\r\n 'gonad',\r\n 'gondola',\r\n 'gone',\r\n 'gong',\r\n 'good',\r\n 'gooey',\r\n 'goofball',\r\n 'goofiness',\r\n 'goofy',\r\n 'google',\r\n 'goon',\r\n 'gopher',\r\n 'gore',\r\n 'gorged',\r\n 'gorgeous',\r\n 'gory',\r\n 'gosling',\r\n 'gossip',\r\n 'gothic',\r\n 'gotten',\r\n 'gout',\r\n 'gown',\r\n 'grab',\r\n 'graceful',\r\n 'graceless',\r\n 'gracious',\r\n 'gradation',\r\n 'graded',\r\n 'grader',\r\n 'gradient',\r\n 'grading',\r\n 'gradually',\r\n 'graduate',\r\n 'graffiti',\r\n 'grafted',\r\n 'grafting',\r\n 'grain',\r\n 'granddad',\r\n 'grandkid',\r\n 'grandly',\r\n 'grandma',\r\n 'grandpa',\r\n 'grandson',\r\n 'granite',\r\n 'granny',\r\n 'granola',\r\n 'grant',\r\n 'granular',\r\n 'grape',\r\n 'graph',\r\n 'grapple',\r\n 'grappling',\r\n 'grasp',\r\n 'grass',\r\n 'gratified',\r\n 'gratify',\r\n 'grating',\r\n 'gratitude',\r\n 'gratuity',\r\n 'gravel',\r\n 'graveness',\r\n 'graves',\r\n 'graveyard',\r\n 'gravitate',\r\n 'gravity',\r\n 'gravy',\r\n 'gray',\r\n 'grazing',\r\n 'greasily',\r\n 'greedily',\r\n 'greedless',\r\n 'greedy',\r\n 'green',\r\n 'greeter',\r\n 'greeting',\r\n 'grew',\r\n 'greyhound',\r\n 'grid',\r\n 'grief',\r\n 'grievance',\r\n 'grieving',\r\n 'grievous',\r\n 'grill',\r\n 'grimace',\r\n 'grimacing',\r\n 'grime',\r\n 'griminess',\r\n 'grimy',\r\n 'grinch',\r\n 'grinning',\r\n 'grip',\r\n 'gristle',\r\n 'grit',\r\n 'groggily',\r\n 'groggy',\r\n 'groin',\r\n 'groom',\r\n 'groove',\r\n 'grooving',\r\n 'groovy',\r\n 'grope',\r\n 'ground',\r\n 'grouped',\r\n 'grout',\r\n 'grove',\r\n 'grower',\r\n 'growing',\r\n 'growl',\r\n 'grub',\r\n 'grudge',\r\n 'grudging',\r\n 'grueling',\r\n 'gruffly',\r\n 'grumble',\r\n 'grumbling',\r\n 'grumbly',\r\n 'grumpily',\r\n 'grunge',\r\n 'grunt',\r\n 'guacamole',\r\n 'guidable',\r\n 'guidance',\r\n 'guide',\r\n 'guiding',\r\n 'guileless',\r\n 'guise',\r\n 'gulf',\r\n 'gullible',\r\n 'gully',\r\n 'gulp',\r\n 'gumball',\r\n 'gumdrop',\r\n 'gumminess',\r\n 'gumming',\r\n 'gummy',\r\n 'gurgle',\r\n 'gurgling',\r\n 'guru',\r\n 'gush',\r\n 'gusto',\r\n 'gusty',\r\n 'gutless',\r\n 'guts',\r\n 'gutter',\r\n 'guy',\r\n 'guzzler',\r\n 'gyration',\r\n 'habitable',\r\n 'habitant',\r\n 'habitat',\r\n 'habitual',\r\n 'hacked',\r\n 'hacker',\r\n 'hacking',\r\n 'hacksaw',\r\n 'had',\r\n 'haggler',\r\n 'haiku',\r\n 'half',\r\n 'halogen',\r\n 'halt',\r\n 'halved',\r\n 'halves',\r\n 'hamburger',\r\n 'hamlet',\r\n 'hammock',\r\n 'hamper',\r\n 'hamster',\r\n 'hamstring',\r\n 'handbag',\r\n 'handball',\r\n 'handbook',\r\n 'handbrake',\r\n 'handcart',\r\n 'handclap',\r\n 'handclasp',\r\n 'handcraft',\r\n 'handcuff',\r\n 'handed',\r\n 'handful',\r\n 'handgrip',\r\n 'handgun',\r\n 'handheld',\r\n 'handiness',\r\n 'handiwork',\r\n 'handlebar',\r\n 'handled',\r\n 'handler',\r\n 'handling',\r\n 'handmade',\r\n 'handoff',\r\n 'handpick',\r\n 'handprint',\r\n 'handrail',\r\n 'handsaw',\r\n 'handset',\r\n 'handsfree',\r\n 'handshake',\r\n 'handstand',\r\n 'handwash',\r\n 'handwork',\r\n 'handwoven',\r\n 'handwrite',\r\n 'handyman',\r\n 'hangnail',\r\n 'hangout',\r\n 'hangover',\r\n 'hangup',\r\n 'hankering',\r\n 'hankie',\r\n 'hanky',\r\n 'haphazard',\r\n 'happening',\r\n 'happier',\r\n 'happiest',\r\n 'happily',\r\n 'happiness',\r\n 'happy',\r\n 'harbor',\r\n 'hardcopy',\r\n 'hardcore',\r\n 'hardcover',\r\n 'harddisk',\r\n 'hardened',\r\n 'hardener',\r\n 'hardening',\r\n 'hardhat',\r\n 'hardhead',\r\n 'hardiness',\r\n 'hardly',\r\n 'hardness',\r\n 'hardship',\r\n 'hardware',\r\n 'hardwired',\r\n 'hardwood',\r\n 'hardy',\r\n 'harmful',\r\n 'harmless',\r\n 'harmonica',\r\n 'harmonics',\r\n 'harmonize',\r\n 'harmony',\r\n 'harness',\r\n 'harpist',\r\n 'harsh',\r\n 'harvest',\r\n 'hash',\r\n 'hassle',\r\n 'haste',\r\n 'hastily',\r\n 'hastiness',\r\n 'hasty',\r\n 'hatbox',\r\n 'hatchback',\r\n 'hatchery',\r\n 'hatchet',\r\n 'hatching',\r\n 'hatchling',\r\n 'hate',\r\n 'hatless',\r\n 'hatred',\r\n 'haunt',\r\n 'haven',\r\n 'hazard',\r\n 'hazelnut',\r\n 'hazily',\r\n 'haziness',\r\n 'hazing',\r\n 'hazy',\r\n 'headache',\r\n 'headband',\r\n 'headboard',\r\n 'headcount',\r\n 'headdress',\r\n 'headed',\r\n 'header',\r\n 'headfirst',\r\n 'headgear',\r\n 'heading',\r\n 'headlamp',\r\n 'headless',\r\n 'headlock',\r\n 'headphone',\r\n 'headpiece',\r\n 'headrest',\r\n 'headroom',\r\n 'headscarf',\r\n 'headset',\r\n 'headsman',\r\n 'headstand',\r\n 'headstone',\r\n 'headway',\r\n 'headwear',\r\n 'heap',\r\n 'heat',\r\n 'heave',\r\n 'heavily',\r\n 'heaviness',\r\n 'heaving',\r\n 'hedge',\r\n 'hedging',\r\n 'heftiness',\r\n 'hefty',\r\n 'helium',\r\n 'helmet',\r\n 'helper',\r\n 'helpful',\r\n 'helping',\r\n 'helpless',\r\n 'helpline',\r\n 'hemlock',\r\n 'hemstitch',\r\n 'hence',\r\n 'henchman',\r\n 'henna',\r\n 'herald',\r\n 'herbal',\r\n 'herbicide',\r\n 'herbs',\r\n 'heritage',\r\n 'hermit',\r\n 'heroics',\r\n 'heroism',\r\n 'herring',\r\n 'herself',\r\n 'hertz',\r\n 'hesitancy',\r\n 'hesitant',\r\n 'hesitate',\r\n 'hexagon',\r\n 'hexagram',\r\n 'hubcap',\r\n 'huddle',\r\n 'huddling',\r\n 'huff',\r\n 'hug',\r\n 'hula',\r\n 'hulk',\r\n 'hull',\r\n 'human',\r\n 'humble',\r\n 'humbling',\r\n 'humbly',\r\n 'humid',\r\n 'humiliate',\r\n 'humility',\r\n 'humming',\r\n 'hummus',\r\n 'humongous',\r\n 'humorist',\r\n 'humorless',\r\n 'humorous',\r\n 'humpback',\r\n 'humped',\r\n 'humvee',\r\n 'hunchback',\r\n 'hundredth',\r\n 'hunger',\r\n 'hungrily',\r\n 'hungry',\r\n 'hunk',\r\n 'hunter',\r\n 'hunting',\r\n 'huntress',\r\n 'huntsman',\r\n 'hurdle',\r\n 'hurled',\r\n 'hurler',\r\n 'hurling',\r\n 'hurray',\r\n 'hurricane',\r\n 'hurried',\r\n 'hurry',\r\n 'hurt',\r\n 'husband',\r\n 'hush',\r\n 'husked',\r\n 'huskiness',\r\n 'hut',\r\n 'hybrid',\r\n 'hydrant',\r\n 'hydrated',\r\n 'hydration',\r\n 'hydrogen',\r\n 'hydroxide',\r\n 'hyperlink',\r\n 'hypertext',\r\n 'hyphen',\r\n 'hypnoses',\r\n 'hypnosis',\r\n 'hypnotic',\r\n 'hypnotism',\r\n 'hypnotist',\r\n 'hypnotize',\r\n 'hypocrisy',\r\n 'hypocrite',\r\n 'ibuprofen',\r\n 'ice',\r\n 'iciness',\r\n 'icing',\r\n 'icky',\r\n 'icon',\r\n 'icy',\r\n 'idealism',\r\n 'idealist',\r\n 'idealize',\r\n 'ideally',\r\n 'idealness',\r\n 'identical',\r\n 'identify',\r\n 'identity',\r\n 'ideology',\r\n 'idiocy',\r\n 'idiom',\r\n 'idly',\r\n 'igloo',\r\n 'ignition',\r\n 'ignore',\r\n 'iguana',\r\n 'illicitly',\r\n 'illusion',\r\n 'illusive',\r\n 'image',\r\n 'imaginary',\r\n 'imagines',\r\n 'imaging',\r\n 'imbecile',\r\n 'imitate',\r\n 'imitation',\r\n 'immature',\r\n 'immerse',\r\n 'immersion',\r\n 'imminent',\r\n 'immobile',\r\n 'immodest',\r\n 'immorally',\r\n 'immortal',\r\n 'immovable',\r\n 'immovably',\r\n 'immunity',\r\n 'immunize',\r\n 'impaired',\r\n 'impale',\r\n 'impart',\r\n 'impatient',\r\n 'impeach',\r\n 'impeding',\r\n 'impending',\r\n 'imperfect',\r\n 'imperial',\r\n 'impish',\r\n 'implant',\r\n 'implement',\r\n 'implicate',\r\n 'implicit',\r\n 'implode',\r\n 'implosion',\r\n 'implosive',\r\n 'imply',\r\n 'impolite',\r\n 'important',\r\n 'importer',\r\n 'impose',\r\n 'imposing',\r\n 'impotence',\r\n 'impotency',\r\n 'impotent',\r\n 'impound',\r\n 'imprecise',\r\n 'imprint',\r\n 'imprison',\r\n 'impromptu',\r\n 'improper',\r\n 'improve',\r\n 'improving',\r\n 'improvise',\r\n 'imprudent',\r\n 'impulse',\r\n 'impulsive',\r\n 'impure',\r\n 'impurity',\r\n 'iodine',\r\n 'iodize',\r\n 'ion',\r\n 'ipad',\r\n 'iphone',\r\n 'ipod',\r\n 'irate',\r\n 'irk',\r\n 'iron',\r\n 'irregular',\r\n 'irrigate',\r\n 'irritable',\r\n 'irritably',\r\n 'irritant',\r\n 'irritate',\r\n 'islamic',\r\n 'islamist',\r\n 'isolated',\r\n 'isolating',\r\n 'isolation',\r\n 'isotope',\r\n 'issue',\r\n 'issuing',\r\n 'italicize',\r\n 'italics',\r\n 'item',\r\n 'itinerary',\r\n 'itunes',\r\n 'ivory',\r\n 'ivy',\r\n 'jab',\r\n 'jackal',\r\n 'jacket',\r\n 'jackknife',\r\n 'jackpot',\r\n 'jailbird',\r\n 'jailbreak',\r\n 'jailer',\r\n 'jailhouse',\r\n 'jalapeno',\r\n 'jam',\r\n 'janitor',\r\n 'january',\r\n 'jargon',\r\n 'jarring',\r\n 'jasmine',\r\n 'jaundice',\r\n 'jaunt',\r\n 'java',\r\n 'jawed',\r\n 'jawless',\r\n 'jawline',\r\n 'jaws',\r\n 'jaybird',\r\n 'jaywalker',\r\n 'jazz',\r\n 'jeep',\r\n 'jeeringly',\r\n 'jellied',\r\n 'jelly',\r\n 'jersey',\r\n 'jester',\r\n 'jet',\r\n 'jiffy',\r\n 'jigsaw',\r\n 'jimmy',\r\n 'jingle',\r\n 'jingling',\r\n 'jinx',\r\n 'jitters',\r\n 'jittery',\r\n 'job',\r\n 'jockey',\r\n 'jockstrap',\r\n 'jogger',\r\n 'jogging',\r\n 'john',\r\n 'joining',\r\n 'jokester',\r\n 'jokingly',\r\n 'jolliness',\r\n 'jolly',\r\n 'jolt',\r\n 'jot',\r\n 'jovial',\r\n 'joyfully',\r\n 'joylessly',\r\n 'joyous',\r\n 'joyride',\r\n 'joystick',\r\n 'jubilance',\r\n 'jubilant',\r\n 'judge',\r\n 'judgingly',\r\n 'judicial',\r\n 'judiciary',\r\n 'judo',\r\n 'juggle',\r\n 'juggling',\r\n 'jugular',\r\n 'juice',\r\n 'juiciness',\r\n 'juicy',\r\n 'jujitsu',\r\n 'jukebox',\r\n 'july',\r\n 'jumble',\r\n 'jumbo',\r\n 'jump',\r\n 'junction',\r\n 'juncture',\r\n 'june',\r\n 'junior',\r\n 'juniper',\r\n 'junkie',\r\n 'junkman',\r\n 'junkyard',\r\n 'jurist',\r\n 'juror',\r\n 'jury',\r\n 'justice',\r\n 'justifier',\r\n 'justify',\r\n 'justly',\r\n 'justness',\r\n 'juvenile',\r\n 'kabob',\r\n 'kangaroo',\r\n 'karaoke',\r\n 'karate',\r\n 'karma',\r\n 'kebab',\r\n 'keenly',\r\n 'keenness',\r\n 'keep',\r\n 'keg',\r\n 'kelp',\r\n 'kennel',\r\n 'kept',\r\n 'kerchief',\r\n 'kerosene',\r\n 'kettle',\r\n 'kick',\r\n 'kiln',\r\n 'kilobyte',\r\n 'kilogram',\r\n 'kilometer',\r\n 'kilowatt',\r\n 'kilt',\r\n 'kimono',\r\n 'kindle',\r\n 'kindling',\r\n 'kindly',\r\n 'kindness',\r\n 'kindred',\r\n 'kinetic',\r\n 'kinfolk',\r\n 'king',\r\n 'kinship',\r\n 'kinsman',\r\n 'kinswoman',\r\n 'kissable',\r\n 'kisser',\r\n 'kissing',\r\n 'kitchen',\r\n 'kite',\r\n 'kitten',\r\n 'kitty',\r\n 'kiwi',\r\n 'kleenex',\r\n 'knapsack',\r\n 'knee',\r\n 'knelt',\r\n 'knickers',\r\n 'knoll',\r\n 'koala',\r\n 'kooky',\r\n 'kosher',\r\n 'krypton',\r\n 'kudos',\r\n 'kung',\r\n 'labored',\r\n 'laborer',\r\n 'laboring',\r\n 'laborious',\r\n 'labrador',\r\n 'ladder',\r\n 'ladies',\r\n 'ladle',\r\n 'ladybug',\r\n 'ladylike',\r\n 'lagged',\r\n 'lagging',\r\n 'lagoon',\r\n 'lair',\r\n 'lake',\r\n 'lance',\r\n 'landed',\r\n 'landfall',\r\n 'landfill',\r\n 'landing',\r\n 'landlady',\r\n 'landless',\r\n 'landline',\r\n 'landlord',\r\n 'landmark',\r\n 'landmass',\r\n 'landmine',\r\n 'landowner',\r\n 'landscape',\r\n 'landside',\r\n 'landslide',\r\n 'language',\r\n 'lankiness',\r\n 'lanky',\r\n 'lantern',\r\n 'lapdog',\r\n 'lapel',\r\n 'lapped',\r\n 'lapping',\r\n 'laptop',\r\n 'lard',\r\n 'large',\r\n 'lark',\r\n 'lash',\r\n 'lasso',\r\n 'last',\r\n 'latch',\r\n 'late',\r\n 'lather',\r\n 'latitude',\r\n 'latrine',\r\n 'latter',\r\n 'latticed',\r\n 'launch',\r\n 'launder',\r\n 'laundry',\r\n 'laurel',\r\n 'lavender',\r\n 'lavish',\r\n 'laxative',\r\n 'lazily',\r\n 'laziness',\r\n 'lazy',\r\n 'lecturer',\r\n 'left',\r\n 'legacy',\r\n 'legal',\r\n 'legend',\r\n 'legged',\r\n 'leggings',\r\n 'legible',\r\n 'legibly',\r\n 'legislate',\r\n 'lego',\r\n 'legroom',\r\n 'legume',\r\n 'legwarmer',\r\n 'legwork',\r\n 'lemon',\r\n 'lend',\r\n 'length',\r\n 'lens',\r\n 'lent',\r\n 'leotard',\r\n 'lesser',\r\n 'letdown',\r\n 'lethargic',\r\n 'lethargy',\r\n 'letter',\r\n 'lettuce',\r\n 'level',\r\n 'leverage',\r\n 'levers',\r\n 'levitate',\r\n 'levitator',\r\n 'liability',\r\n 'liable',\r\n 'liberty',\r\n 'librarian',\r\n 'library',\r\n 'licking',\r\n 'licorice',\r\n 'lid',\r\n 'life',\r\n 'lifter',\r\n 'lifting',\r\n 'liftoff',\r\n 'ligament',\r\n 'likely',\r\n 'likeness',\r\n 'likewise',\r\n 'liking',\r\n 'lilac',\r\n 'lilly',\r\n 'lily',\r\n 'limb',\r\n 'limeade',\r\n 'limelight',\r\n 'limes',\r\n 'limit',\r\n 'limping',\r\n 'limpness',\r\n 'line',\r\n 'lingo',\r\n 'linguini',\r\n 'linguist',\r\n 'lining',\r\n 'linked',\r\n 'linoleum',\r\n 'linseed',\r\n 'lint',\r\n 'lion',\r\n 'lip',\r\n 'liquefy',\r\n 'liqueur',\r\n 'liquid',\r\n 'lisp',\r\n 'list',\r\n 'litigate',\r\n 'litigator',\r\n 'litmus',\r\n 'litter',\r\n 'little',\r\n 'livable',\r\n 'lived',\r\n 'lively',\r\n 'liver',\r\n 'livestock',\r\n 'lividly',\r\n 'living',\r\n 'lizard',\r\n 'lubricant',\r\n 'lubricate',\r\n 'lucid',\r\n 'luckily',\r\n 'luckiness',\r\n 'luckless',\r\n 'lucrative',\r\n 'ludicrous',\r\n 'lugged',\r\n 'lukewarm',\r\n 'lullaby',\r\n 'lumber',\r\n 'luminance',\r\n 'luminous',\r\n 'lumpiness',\r\n 'lumping',\r\n 'lumpish',\r\n 'lunacy',\r\n 'lunar',\r\n 'lunchbox',\r\n 'luncheon',\r\n 'lunchroom',\r\n 'lunchtime',\r\n 'lung',\r\n 'lurch',\r\n 'lure',\r\n 'luridness',\r\n 'lurk',\r\n 'lushly',\r\n 'lushness',\r\n 'luster',\r\n 'lustfully',\r\n 'lustily',\r\n 'lustiness',\r\n 'lustrous',\r\n 'lusty',\r\n 'luxurious',\r\n 'luxury',\r\n 'lying',\r\n 'lyrically',\r\n 'lyricism',\r\n 'lyricist',\r\n 'lyrics',\r\n 'macarena',\r\n 'macaroni',\r\n 'macaw',\r\n 'mace',\r\n 'machine',\r\n 'machinist',\r\n 'magazine',\r\n 'magenta',\r\n 'maggot',\r\n 'magical',\r\n 'magician',\r\n 'magma',\r\n 'magnesium',\r\n 'magnetic',\r\n 'magnetism',\r\n 'magnetize',\r\n 'magnifier',\r\n 'magnify',\r\n 'magnitude',\r\n 'magnolia',\r\n 'mahogany',\r\n 'maimed',\r\n 'majestic',\r\n 'majesty',\r\n 'majorette',\r\n 'majority',\r\n 'makeover',\r\n 'maker',\r\n 'makeshift',\r\n 'making',\r\n 'malformed',\r\n 'malt',\r\n 'mama',\r\n 'mammal',\r\n 'mammary',\r\n 'mammogram',\r\n 'manager',\r\n 'managing',\r\n 'manatee',\r\n 'mandarin',\r\n 'mandate',\r\n 'mandatory',\r\n 'mandolin',\r\n 'manger',\r\n 'mangle',\r\n 'mango',\r\n 'mangy',\r\n 'manhandle',\r\n 'manhole',\r\n 'manhood',\r\n 'manhunt',\r\n 'manicotti',\r\n 'manicure',\r\n 'manifesto',\r\n 'manila',\r\n 'mankind',\r\n 'manlike',\r\n 'manliness',\r\n 'manly',\r\n 'manmade',\r\n 'manned',\r\n 'mannish',\r\n 'manor',\r\n 'manpower',\r\n 'mantis',\r\n 'mantra',\r\n 'manual',\r\n 'many',\r\n 'map',\r\n 'marathon',\r\n 'marauding',\r\n 'marbled',\r\n 'marbles',\r\n 'marbling',\r\n 'march',\r\n 'mardi',\r\n 'margarine',\r\n 'margarita',\r\n 'margin',\r\n 'marigold',\r\n 'marina',\r\n 'marine',\r\n 'marital',\r\n 'maritime',\r\n 'marlin',\r\n 'marmalade',\r\n 'maroon',\r\n 'married',\r\n 'marrow',\r\n 'marry',\r\n 'marshland',\r\n 'marshy',\r\n 'marsupial',\r\n 'marvelous',\r\n 'marxism',\r\n 'mascot',\r\n 'masculine',\r\n 'mashed',\r\n 'mashing',\r\n 'massager',\r\n 'masses',\r\n 'massive',\r\n 'mastiff',\r\n 'matador',\r\n 'matchbook',\r\n 'matchbox',\r\n 'matcher',\r\n 'matching',\r\n 'matchless',\r\n 'material',\r\n 'maternal',\r\n 'maternity',\r\n 'math',\r\n 'mating',\r\n 'matriarch',\r\n 'matrimony',\r\n 'matrix',\r\n 'matron',\r\n 'matted',\r\n 'matter',\r\n 'maturely',\r\n 'maturing',\r\n 'maturity',\r\n 'mauve',\r\n 'maverick',\r\n 'maximize',\r\n 'maximum',\r\n 'maybe',\r\n 'mayday',\r\n 'mayflower',\r\n 'moaner',\r\n 'moaning',\r\n 'mobile',\r\n 'mobility',\r\n 'mobilize',\r\n 'mobster',\r\n 'mocha',\r\n 'mocker',\r\n 'mockup',\r\n 'modified',\r\n 'modify',\r\n 'modular',\r\n 'modulator',\r\n 'module',\r\n 'moisten',\r\n 'moistness',\r\n 'moisture',\r\n 'molar',\r\n 'molasses',\r\n 'mold',\r\n 'molecular',\r\n 'molecule',\r\n 'molehill',\r\n 'mollusk',\r\n 'mom',\r\n 'monastery',\r\n 'monday',\r\n 'monetary',\r\n 'monetize',\r\n 'moneybags',\r\n 'moneyless',\r\n 'moneywise',\r\n 'mongoose',\r\n 'mongrel',\r\n 'monitor',\r\n 'monkhood',\r\n 'monogamy',\r\n 'monogram',\r\n 'monologue',\r\n 'monopoly',\r\n 'monorail',\r\n 'monotone',\r\n 'monotype',\r\n 'monoxide',\r\n 'monsieur',\r\n 'monsoon',\r\n 'monstrous',\r\n 'monthly',\r\n 'monument',\r\n 'moocher',\r\n 'moodiness',\r\n 'moody',\r\n 'mooing',\r\n 'moonbeam',\r\n 'mooned',\r\n 'moonlight',\r\n 'moonlike',\r\n 'moonlit',\r\n 'moonrise',\r\n 'moonscape',\r\n 'moonshine',\r\n 'moonstone',\r\n 'moonwalk',\r\n 'mop',\r\n 'morale',\r\n 'morality',\r\n 'morally',\r\n 'morbidity',\r\n 'morbidly',\r\n 'morphine',\r\n 'morphing',\r\n 'morse',\r\n 'mortality',\r\n 'mortally',\r\n 'mortician',\r\n 'mortified',\r\n 'mortify',\r\n 'mortuary',\r\n 'mosaic',\r\n 'mossy',\r\n 'most',\r\n 'mothball',\r\n 'mothproof',\r\n 'motion',\r\n 'motivate',\r\n 'motivator',\r\n 'motive',\r\n 'motocross',\r\n 'motor',\r\n 'motto',\r\n 'mountable',\r\n 'mountain',\r\n 'mounted',\r\n 'mounting',\r\n 'mourner',\r\n 'mournful',\r\n 'mouse',\r\n 'mousiness',\r\n 'moustache',\r\n 'mousy',\r\n 'mouth',\r\n 'movable',\r\n 'move',\r\n 'movie',\r\n 'moving',\r\n 'mower',\r\n 'mowing',\r\n 'much',\r\n 'muck',\r\n 'mud',\r\n 'mug',\r\n 'mulberry',\r\n 'mulch',\r\n 'mule',\r\n 'mulled',\r\n 'mullets',\r\n 'multiple',\r\n 'multiply',\r\n 'multitask',\r\n 'multitude',\r\n 'mumble',\r\n 'mumbling',\r\n 'mumbo',\r\n 'mummified',\r\n 'mummify',\r\n 'mummy',\r\n 'mumps',\r\n 'munchkin',\r\n 'mundane',\r\n 'municipal',\r\n 'muppet',\r\n 'mural',\r\n 'murkiness',\r\n 'murky',\r\n 'murmuring',\r\n 'muscular',\r\n 'museum',\r\n 'mushily',\r\n 'mushiness',\r\n 'mushroom',\r\n 'mushy',\r\n 'music',\r\n 'musket',\r\n 'muskiness',\r\n 'musky',\r\n 'mustang',\r\n 'mustard',\r\n 'muster',\r\n 'mustiness',\r\n 'musty',\r\n 'mutable',\r\n 'mutate',\r\n 'mutation',\r\n 'mute',\r\n 'mutilated',\r\n 'mutilator',\r\n 'mutiny',\r\n 'mutt',\r\n 'mutual',\r\n 'muzzle',\r\n 'myself',\r\n 'myspace',\r\n 'mystified',\r\n 'mystify',\r\n 'myth',\r\n 'nacho',\r\n 'nag',\r\n 'nail',\r\n 'name',\r\n 'naming',\r\n 'nanny',\r\n 'nanometer',\r\n 'nape',\r\n 'napkin',\r\n 'napped',\r\n 'napping',\r\n 'nappy',\r\n 'narrow',\r\n 'nastily',\r\n 'nastiness',\r\n 'national',\r\n 'native',\r\n 'nativity',\r\n 'natural',\r\n 'nature',\r\n 'naturist',\r\n 'nautical',\r\n 'navigate',\r\n 'navigator',\r\n 'navy',\r\n 'nearby',\r\n 'nearest',\r\n 'nearly',\r\n 'nearness',\r\n 'neatly',\r\n 'neatness',\r\n 'nebula',\r\n 'nebulizer',\r\n 'nectar',\r\n 'negate',\r\n 'negation',\r\n 'negative',\r\n 'neglector',\r\n 'negligee',\r\n 'negligent',\r\n 'negotiate',\r\n 'nemeses',\r\n 'nemesis',\r\n 'neon',\r\n 'nephew',\r\n 'nerd',\r\n 'nervous',\r\n 'nervy',\r\n 'nest',\r\n 'net',\r\n 'neurology',\r\n 'neuron',\r\n 'neurosis',\r\n 'neurotic',\r\n 'neuter',\r\n 'neutron',\r\n 'never',\r\n 'next',\r\n 'nibble',\r\n 'nickname',\r\n 'nicotine',\r\n 'niece',\r\n 'nifty',\r\n 'nimble',\r\n 'nimbly',\r\n 'nineteen',\r\n 'ninetieth',\r\n 'ninja',\r\n 'nintendo',\r\n 'ninth',\r\n 'nuclear',\r\n 'nuclei',\r\n 'nucleus',\r\n 'nugget',\r\n 'nullify',\r\n 'number',\r\n 'numbing',\r\n 'numbly',\r\n 'numbness',\r\n 'numeral',\r\n 'numerate',\r\n 'numerator',\r\n 'numeric',\r\n 'numerous',\r\n 'nuptials',\r\n 'nursery',\r\n 'nursing',\r\n 'nurture',\r\n 'nutcase',\r\n 'nutlike',\r\n 'nutmeg',\r\n 'nutrient',\r\n 'nutshell',\r\n 'nuttiness',\r\n 'nutty',\r\n 'nuzzle',\r\n 'nylon',\r\n 'oaf',\r\n 'oak',\r\n 'oasis',\r\n 'oat',\r\n 'obedience',\r\n 'obedient',\r\n 'obituary',\r\n 'object',\r\n 'obligate',\r\n 'obliged',\r\n 'oblivion',\r\n 'oblivious',\r\n 'oblong',\r\n 'obnoxious',\r\n 'oboe',\r\n 'obscure',\r\n 'obscurity',\r\n 'observant',\r\n 'observer',\r\n 'observing',\r\n 'obsessed',\r\n 'obsession',\r\n 'obsessive',\r\n 'obsolete',\r\n 'obstacle',\r\n 'obstinate',\r\n 'obstruct',\r\n 'obtain',\r\n 'obtrusive',\r\n 'obtuse',\r\n 'obvious',\r\n 'occultist',\r\n 'occupancy',\r\n 'occupant',\r\n 'occupier',\r\n 'occupy',\r\n 'ocean',\r\n 'ocelot',\r\n 'octagon',\r\n 'octane',\r\n 'october',\r\n 'octopus',\r\n 'ogle',\r\n 'oil',\r\n 'oink',\r\n 'ointment',\r\n 'okay',\r\n 'old',\r\n 'olive',\r\n 'olympics',\r\n 'omega',\r\n 'omen',\r\n 'ominous',\r\n 'omission',\r\n 'omit',\r\n 'omnivore',\r\n 'onboard',\r\n 'oncoming',\r\n 'ongoing',\r\n 'onion',\r\n 'online',\r\n 'onlooker',\r\n 'only',\r\n 'onscreen',\r\n 'onset',\r\n 'onshore',\r\n 'onslaught',\r\n 'onstage',\r\n 'onto',\r\n 'onward',\r\n 'onyx',\r\n 'oops',\r\n 'ooze',\r\n 'oozy',\r\n 'opacity',\r\n 'opal',\r\n 'open',\r\n 'operable',\r\n 'operate',\r\n 'operating',\r\n 'operation',\r\n 'operative',\r\n 'operator',\r\n 'opium',\r\n 'opossum',\r\n 'opponent',\r\n 'oppose',\r\n 'opposing',\r\n 'opposite',\r\n 'oppressed',\r\n 'oppressor',\r\n 'opt',\r\n 'opulently',\r\n 'osmosis',\r\n 'other',\r\n 'otter',\r\n 'ouch',\r\n 'ought',\r\n 'ounce',\r\n 'outage',\r\n 'outback',\r\n 'outbid',\r\n 'outboard',\r\n 'outbound',\r\n 'outbreak',\r\n 'outburst',\r\n 'outcast',\r\n 'outclass',\r\n 'outcome',\r\n 'outdated',\r\n 'outdoors',\r\n 'outer',\r\n 'outfield',\r\n 'outfit',\r\n 'outflank',\r\n 'outgoing',\r\n 'outgrow',\r\n 'outhouse',\r\n 'outing',\r\n 'outlast',\r\n 'outlet',\r\n 'outline',\r\n 'outlook',\r\n 'outlying',\r\n 'outmatch',\r\n 'outmost',\r\n 'outnumber',\r\n 'outplayed',\r\n 'outpost',\r\n 'outpour',\r\n 'output',\r\n 'outrage',\r\n 'outrank',\r\n 'outreach',\r\n 'outright',\r\n 'outscore',\r\n 'outsell',\r\n 'outshine',\r\n 'outshoot',\r\n 'outsider',\r\n 'outskirts',\r\n 'outsmart',\r\n 'outsource',\r\n 'outspoken',\r\n 'outtakes',\r\n 'outthink',\r\n 'outward',\r\n 'outweigh',\r\n 'outwit',\r\n 'oval',\r\n 'ovary',\r\n 'oven',\r\n 'overact',\r\n 'overall',\r\n 'overarch',\r\n 'overbid',\r\n 'overbill',\r\n 'overbite',\r\n 'overblown',\r\n 'overboard',\r\n 'overbook',\r\n 'overbuilt',\r\n 'overcast',\r\n 'overcoat',\r\n 'overcome',\r\n 'overcook',\r\n 'overcrowd',\r\n 'overdraft',\r\n 'overdrawn',\r\n 'overdress',\r\n 'overdrive',\r\n 'overdue',\r\n 'overeager',\r\n 'overeater',\r\n 'overexert',\r\n 'overfed',\r\n 'overfeed',\r\n 'overfill',\r\n 'overflow',\r\n 'overfull',\r\n 'overgrown',\r\n 'overhand',\r\n 'overhang',\r\n 'overhaul',\r\n 'overhead',\r\n 'overhear',\r\n 'overheat',\r\n 'overhung',\r\n 'overjoyed',\r\n 'overkill',\r\n 'overlabor',\r\n 'overlaid',\r\n 'overlap',\r\n 'overlay',\r\n 'overload',\r\n 'overlook',\r\n 'overlord',\r\n 'overlying',\r\n 'overnight',\r\n 'overpass',\r\n 'overpay',\r\n 'overplant',\r\n 'overplay',\r\n 'overpower',\r\n 'overprice',\r\n 'overrate',\r\n 'overreach',\r\n 'overreact',\r\n 'override',\r\n 'overripe',\r\n 'overrule',\r\n 'overrun',\r\n 'overshoot',\r\n 'overshot',\r\n 'oversight',\r\n 'oversized',\r\n 'oversleep',\r\n 'oversold',\r\n 'overspend',\r\n 'overstate',\r\n 'overstay',\r\n 'overstep',\r\n 'overstock',\r\n 'overstuff',\r\n 'oversweet',\r\n 'overtake',\r\n 'overthrow',\r\n 'overtime',\r\n 'overtly',\r\n 'overtone',\r\n 'overture',\r\n 'overturn',\r\n 'overuse',\r\n 'overvalue',\r\n 'overview',\r\n 'overwrite',\r\n 'owl',\r\n 'oxford',\r\n 'oxidant',\r\n 'oxidation',\r\n 'oxidize',\r\n 'oxidizing',\r\n 'oxygen',\r\n 'oxymoron',\r\n 'oyster',\r\n 'ozone',\r\n 'paced',\r\n 'pacemaker',\r\n 'pacific',\r\n 'pacifier',\r\n 'pacifism',\r\n 'pacifist',\r\n 'pacify',\r\n 'padded',\r\n 'padding',\r\n 'paddle',\r\n 'paddling',\r\n 'padlock',\r\n 'pagan',\r\n 'pager',\r\n 'paging',\r\n 'pajamas',\r\n 'palace',\r\n 'palatable',\r\n 'palm',\r\n 'palpable',\r\n 'palpitate',\r\n 'paltry',\r\n 'pampered',\r\n 'pamperer',\r\n 'pampers',\r\n 'pamphlet',\r\n 'panama',\r\n 'pancake',\r\n 'pancreas',\r\n 'panda',\r\n 'pandemic',\r\n 'pang',\r\n 'panhandle',\r\n 'panic',\r\n 'panning',\r\n 'panorama',\r\n 'panoramic',\r\n 'panther',\r\n 'pantomime',\r\n 'pantry',\r\n 'pants',\r\n 'pantyhose',\r\n 'paparazzi',\r\n 'papaya',\r\n 'paper',\r\n 'paprika',\r\n 'papyrus',\r\n 'parabola',\r\n 'parachute',\r\n 'parade',\r\n 'paradox',\r\n 'paragraph',\r\n 'parakeet',\r\n 'paralegal',\r\n 'paralyses',\r\n 'paralysis',\r\n 'paralyze',\r\n 'paramedic',\r\n 'parameter',\r\n 'paramount',\r\n 'parasail',\r\n 'parasite',\r\n 'parasitic',\r\n 'parcel',\r\n 'parched',\r\n 'parchment',\r\n 'pardon',\r\n 'parish',\r\n 'parka',\r\n 'parking',\r\n 'parkway',\r\n 'parlor',\r\n 'parmesan',\r\n 'parole',\r\n 'parrot',\r\n 'parsley',\r\n 'parsnip',\r\n 'partake',\r\n 'parted',\r\n 'parting',\r\n 'partition',\r\n 'partly',\r\n 'partner',\r\n 'partridge',\r\n 'party',\r\n 'passable',\r\n 'passably',\r\n 'passage',\r\n 'passcode',\r\n 'passenger',\r\n 'passerby',\r\n 'passing',\r\n 'passion',\r\n 'passive',\r\n 'passivism',\r\n 'passover',\r\n 'passport',\r\n 'password',\r\n 'pasta',\r\n 'pasted',\r\n 'pastel',\r\n 'pastime',\r\n 'pastor',\r\n 'pastrami',\r\n 'pasture',\r\n 'pasty',\r\n 'patchwork',\r\n 'patchy',\r\n 'paternal',\r\n 'paternity',\r\n 'path',\r\n 'patience',\r\n 'patient',\r\n 'patio',\r\n 'patriarch',\r\n 'patriot',\r\n 'patrol',\r\n 'patronage',\r\n 'patronize',\r\n 'pauper',\r\n 'pavement',\r\n 'paver',\r\n 'pavestone',\r\n 'pavilion',\r\n 'paving',\r\n 'pawing',\r\n 'payable',\r\n 'payback',\r\n 'paycheck',\r\n 'payday',\r\n 'payee',\r\n 'payer',\r\n 'paying',\r\n 'payment',\r\n 'payphone',\r\n 'payroll',\r\n 'pebble',\r\n 'pebbly',\r\n 'pecan',\r\n 'pectin',\r\n 'peculiar',\r\n 'peddling',\r\n 'pediatric',\r\n 'pedicure',\r\n 'pedigree',\r\n 'pedometer',\r\n 'pegboard',\r\n 'pelican',\r\n 'pellet',\r\n 'pelt',\r\n 'pelvis',\r\n 'penalize',\r\n 'penalty',\r\n 'pencil',\r\n 'pendant',\r\n 'pending',\r\n 'penholder',\r\n 'penknife',\r\n 'pennant',\r\n 'penniless',\r\n 'penny',\r\n 'penpal',\r\n 'pension',\r\n 'pentagon',\r\n 'pentagram',\r\n 'pep',\r\n 'perceive',\r\n 'percent',\r\n 'perch',\r\n 'percolate',\r\n 'perennial',\r\n 'perfected',\r\n 'perfectly',\r\n 'perfume',\r\n 'periscope',\r\n 'perish',\r\n 'perjurer',\r\n 'perjury',\r\n 'perkiness',\r\n 'perky',\r\n 'perm',\r\n 'peroxide',\r\n 'perpetual',\r\n 'perplexed',\r\n 'persecute',\r\n 'persevere',\r\n 'persuaded',\r\n 'persuader',\r\n 'pesky',\r\n 'peso',\r\n 'pessimism',\r\n 'pessimist',\r\n 'pester',\r\n 'pesticide',\r\n 'petal',\r\n 'petite',\r\n 'petition',\r\n 'petri',\r\n 'petroleum',\r\n 'petted',\r\n 'petticoat',\r\n 'pettiness',\r\n 'petty',\r\n 'petunia',\r\n 'phantom',\r\n 'phobia',\r\n 'phoenix',\r\n 'phonebook',\r\n 'phoney',\r\n 'phonics',\r\n 'phoniness',\r\n 'phony',\r\n 'phosphate',\r\n 'photo',\r\n 'phrase',\r\n 'phrasing',\r\n 'placard',\r\n 'placate',\r\n 'placidly',\r\n 'plank',\r\n 'planner',\r\n 'plant',\r\n 'plasma',\r\n 'plaster',\r\n 'plastic',\r\n 'plated',\r\n 'platform',\r\n 'plating',\r\n 'platinum',\r\n 'platonic',\r\n 'platter',\r\n 'platypus',\r\n 'plausible',\r\n 'plausibly',\r\n 'playable',\r\n 'playback',\r\n 'player',\r\n 'playful',\r\n 'playgroup',\r\n 'playhouse',\r\n 'playing',\r\n 'playlist',\r\n 'playmaker',\r\n 'playmate',\r\n 'playoff',\r\n 'playpen',\r\n 'playroom',\r\n 'playset',\r\n 'plaything',\r\n 'playtime',\r\n 'plaza',\r\n 'pleading',\r\n 'pleat',\r\n 'pledge',\r\n 'plentiful',\r\n 'plenty',\r\n 'plethora',\r\n 'plexiglas',\r\n 'pliable',\r\n 'plod',\r\n 'plop',\r\n 'plot',\r\n 'plow',\r\n 'ploy',\r\n 'pluck',\r\n 'plug',\r\n 'plunder',\r\n 'plunging',\r\n 'plural',\r\n 'plus',\r\n 'plutonium',\r\n 'plywood',\r\n 'poach',\r\n 'pod',\r\n 'poem',\r\n 'poet',\r\n 'pogo',\r\n 'pointed',\r\n 'pointer',\r\n 'pointing',\r\n 'pointless',\r\n 'pointy',\r\n 'poise',\r\n 'poison',\r\n 'poker',\r\n 'poking',\r\n 'polar',\r\n 'police',\r\n 'policy',\r\n 'polio',\r\n 'polish',\r\n 'politely',\r\n 'polka',\r\n 'polo',\r\n 'polyester',\r\n 'polygon',\r\n 'polygraph',\r\n 'polymer',\r\n 'poncho',\r\n 'pond',\r\n 'pony',\r\n 'popcorn',\r\n 'pope',\r\n 'poplar',\r\n 'popper',\r\n 'poppy',\r\n 'popsicle',\r\n 'populace',\r\n 'popular',\r\n 'populate',\r\n 'porcupine',\r\n 'pork',\r\n 'porous',\r\n 'porridge',\r\n 'portable',\r\n 'portal',\r\n 'portfolio',\r\n 'porthole',\r\n 'portion',\r\n 'portly',\r\n 'portside',\r\n 'poser',\r\n 'posh',\r\n 'posing',\r\n 'possible',\r\n 'possibly',\r\n 'possum',\r\n 'postage',\r\n 'postal',\r\n 'postbox',\r\n 'postcard',\r\n 'posted',\r\n 'poster',\r\n 'posting',\r\n 'postnasal',\r\n 'posture',\r\n 'postwar',\r\n 'pouch',\r\n 'pounce',\r\n 'pouncing',\r\n 'pound',\r\n 'pouring',\r\n 'pout',\r\n 'powdered',\r\n 'powdering',\r\n 'powdery',\r\n 'power',\r\n 'powwow',\r\n 'pox',\r\n 'praising',\r\n 'prance',\r\n 'prancing',\r\n 'pranker',\r\n 'prankish',\r\n 'prankster',\r\n 'prayer',\r\n 'praying',\r\n 'preacher',\r\n 'preaching',\r\n 'preachy',\r\n 'preamble',\r\n 'precinct',\r\n 'precise',\r\n 'precision',\r\n 'precook',\r\n 'precut',\r\n 'predator',\r\n 'predefine',\r\n 'predict',\r\n 'preface',\r\n 'prefix',\r\n 'preflight',\r\n 'preformed',\r\n 'pregame',\r\n 'pregnancy',\r\n 'pregnant',\r\n 'preheated',\r\n 'prelaunch',\r\n 'prelaw',\r\n 'prelude',\r\n 'premiere',\r\n 'premises',\r\n 'premium',\r\n 'prenatal',\r\n 'preoccupy',\r\n 'preorder',\r\n 'prepaid',\r\n 'prepay',\r\n 'preplan',\r\n 'preppy',\r\n 'preschool',\r\n 'prescribe',\r\n 'preseason',\r\n 'preset',\r\n 'preshow',\r\n 'president',\r\n 'presoak',\r\n 'press',\r\n 'presume',\r\n 'presuming',\r\n 'preteen',\r\n 'pretended',\r\n 'pretender',\r\n 'pretense',\r\n 'pretext',\r\n 'pretty',\r\n 'pretzel',\r\n 'prevail',\r\n 'prevalent',\r\n 'prevent',\r\n 'preview',\r\n 'previous',\r\n 'prewar',\r\n 'prewashed',\r\n 'prideful',\r\n 'pried',\r\n 'primal',\r\n 'primarily',\r\n 'primary',\r\n 'primate',\r\n 'primer',\r\n 'primp',\r\n 'princess',\r\n 'print',\r\n 'prior',\r\n 'prism',\r\n 'prison',\r\n 'prissy',\r\n 'pristine',\r\n 'privacy',\r\n 'private',\r\n 'privatize',\r\n 'prize',\r\n 'proactive',\r\n 'probable',\r\n 'probably',\r\n 'probation',\r\n 'probe',\r\n 'probing',\r\n 'probiotic',\r\n 'problem',\r\n 'procedure',\r\n 'process',\r\n 'proclaim',\r\n 'procreate',\r\n 'procurer',\r\n 'prodigal',\r\n 'prodigy',\r\n 'produce',\r\n 'product',\r\n 'profane',\r\n 'profanity',\r\n 'professed',\r\n 'professor',\r\n 'profile',\r\n 'profound',\r\n 'profusely',\r\n 'progeny',\r\n 'prognosis',\r\n 'program',\r\n 'progress',\r\n 'projector',\r\n 'prologue',\r\n 'prolonged',\r\n 'promenade',\r\n 'prominent',\r\n 'promoter',\r\n 'promotion',\r\n 'prompter',\r\n 'promptly',\r\n 'prone',\r\n 'prong',\r\n 'pronounce',\r\n 'pronto',\r\n 'proofing',\r\n 'proofread',\r\n 'proofs',\r\n 'propeller',\r\n 'properly',\r\n 'property',\r\n 'proponent',\r\n 'proposal',\r\n 'propose',\r\n 'props',\r\n 'prorate',\r\n 'protector',\r\n 'protegee',\r\n 'proton',\r\n 'prototype',\r\n 'protozoan',\r\n 'protract',\r\n 'protrude',\r\n 'proud',\r\n 'provable',\r\n 'proved',\r\n 'proven',\r\n 'provided',\r\n 'provider',\r\n 'providing',\r\n 'province',\r\n 'proving',\r\n 'provoke',\r\n 'provoking',\r\n 'provolone',\r\n 'prowess',\r\n 'prowler',\r\n 'prowling',\r\n 'proximity',\r\n 'proxy',\r\n 'prozac',\r\n 'prude',\r\n 'prudishly',\r\n 'prune',\r\n 'pruning',\r\n 'pry',\r\n 'psychic',\r\n 'public',\r\n 'publisher',\r\n 'pucker',\r\n 'pueblo',\r\n 'pug',\r\n 'pull',\r\n 'pulmonary',\r\n 'pulp',\r\n 'pulsate',\r\n 'pulse',\r\n 'pulverize',\r\n 'puma',\r\n 'pumice',\r\n 'pummel',\r\n 'punch',\r\n 'punctual',\r\n 'punctuate',\r\n 'punctured',\r\n 'pungent',\r\n 'punisher',\r\n 'punk',\r\n 'pupil',\r\n 'puppet',\r\n 'puppy',\r\n 'purchase',\r\n 'pureblood',\r\n 'purebred',\r\n 'purely',\r\n 'pureness',\r\n 'purgatory',\r\n 'purge',\r\n 'purging',\r\n 'purifier',\r\n 'purify',\r\n 'purist',\r\n 'puritan',\r\n 'purity',\r\n 'purple',\r\n 'purplish',\r\n 'purposely',\r\n 'purr',\r\n 'purse',\r\n 'pursuable',\r\n 'pursuant',\r\n 'pursuit',\r\n 'purveyor',\r\n 'pushcart',\r\n 'pushchair',\r\n 'pusher',\r\n 'pushiness',\r\n 'pushing',\r\n 'pushover',\r\n 'pushpin',\r\n 'pushup',\r\n 'pushy',\r\n 'putdown',\r\n 'putt',\r\n 'puzzle',\r\n 'puzzling',\r\n 'pyramid',\r\n 'pyromania',\r\n 'python',\r\n 'quack',\r\n 'quadrant',\r\n 'quail',\r\n 'quaintly',\r\n 'quake',\r\n 'quaking',\r\n 'qualified',\r\n 'qualifier',\r\n 'qualify',\r\n 'quality',\r\n 'qualm',\r\n 'quantum',\r\n 'quarrel',\r\n 'quarry',\r\n 'quartered',\r\n 'quarterly',\r\n 'quarters',\r\n 'quartet',\r\n 'quench',\r\n 'query',\r\n 'quicken',\r\n 'quickly',\r\n 'quickness',\r\n 'quicksand',\r\n 'quickstep',\r\n 'quiet',\r\n 'quill',\r\n 'quilt',\r\n 'quintet',\r\n 'quintuple',\r\n 'quirk',\r\n 'quit',\r\n 'quiver',\r\n 'quizzical',\r\n 'quotable',\r\n 'quotation',\r\n 'quote',\r\n 'rabid',\r\n 'race',\r\n 'racing',\r\n 'racism',\r\n 'rack',\r\n 'racoon',\r\n 'radar',\r\n 'radial',\r\n 'radiance',\r\n 'radiantly',\r\n 'radiated',\r\n 'radiation',\r\n 'radiator',\r\n 'radio',\r\n 'radish',\r\n 'raffle',\r\n 'raft',\r\n 'rage',\r\n 'ragged',\r\n 'raging',\r\n 'ragweed',\r\n 'raider',\r\n 'railcar',\r\n 'railing',\r\n 'railroad',\r\n 'railway',\r\n 'raisin',\r\n 'rake',\r\n 'raking',\r\n 'rally',\r\n 'ramble',\r\n 'rambling',\r\n 'ramp',\r\n 'ramrod',\r\n 'ranch',\r\n 'rancidity',\r\n 'random',\r\n 'ranged',\r\n 'ranger',\r\n 'ranging',\r\n 'ranked',\r\n 'ranking',\r\n 'ransack',\r\n 'ranting',\r\n 'rants',\r\n 'rare',\r\n 'rarity',\r\n 'rascal',\r\n 'rash',\r\n 'rasping',\r\n 'ravage',\r\n 'raven',\r\n 'ravine',\r\n 'raving',\r\n 'ravioli',\r\n 'ravishing',\r\n 'reabsorb',\r\n 'reach',\r\n 'reacquire',\r\n 'reaction',\r\n 'reactive',\r\n 'reactor',\r\n 'reaffirm',\r\n 'ream',\r\n 'reanalyze',\r\n 'reappear',\r\n 'reapply',\r\n 'reappoint',\r\n 'reapprove',\r\n 'rearrange',\r\n 'rearview',\r\n 'reason',\r\n 'reassign',\r\n 'reassure',\r\n 'reattach',\r\n 'reawake',\r\n 'rebalance',\r\n 'rebate',\r\n 'rebel',\r\n 'rebirth',\r\n 'reboot',\r\n 'reborn',\r\n 'rebound',\r\n 'rebuff',\r\n 'rebuild',\r\n 'rebuilt',\r\n 'reburial',\r\n 'rebuttal',\r\n 'recall',\r\n 'recant',\r\n 'recapture',\r\n 'recast',\r\n 'recede',\r\n 'recent',\r\n 'recess',\r\n 'recharger',\r\n 'recipient',\r\n 'recital',\r\n 'recite',\r\n 'reckless',\r\n 'reclaim',\r\n 'recliner',\r\n 'reclining',\r\n 'recluse',\r\n 'reclusive',\r\n 'recognize',\r\n 'recoil',\r\n 'recollect',\r\n 'recolor',\r\n 'reconcile',\r\n 'reconfirm',\r\n 'reconvene',\r\n 'recopy',\r\n 'record',\r\n 'recount',\r\n 'recoup',\r\n 'recovery',\r\n 'recreate',\r\n 'rectal',\r\n 'rectangle',\r\n 'rectified',\r\n 'rectify',\r\n 'recycled',\r\n 'recycler',\r\n 'recycling',\r\n 'reemerge',\r\n 'reenact',\r\n 'reenter',\r\n 'reentry',\r\n 'reexamine',\r\n 'referable',\r\n 'referee',\r\n 'reference',\r\n 'refill',\r\n 'refinance',\r\n 'refined',\r\n 'refinery',\r\n 'refining',\r\n 'refinish',\r\n 'reflected',\r\n 'reflector',\r\n 'reflex',\r\n 'reflux',\r\n 'refocus',\r\n 'refold',\r\n 'reforest',\r\n 'reformat',\r\n 'reformed',\r\n 'reformer',\r\n 'reformist',\r\n 'refract',\r\n 'refrain',\r\n 'refreeze',\r\n 'refresh',\r\n 'refried',\r\n 'refueling',\r\n 'refund',\r\n 'refurbish',\r\n 'refurnish',\r\n 'refusal',\r\n 'refuse',\r\n 'refusing',\r\n 'refutable',\r\n 'refute',\r\n 'regain',\r\n 'regalia',\r\n 'regally',\r\n 'reggae',\r\n 'regime',\r\n 'region',\r\n 'register',\r\n 'registrar',\r\n 'registry',\r\n 'regress',\r\n 'regretful',\r\n 'regroup',\r\n 'regular',\r\n 'regulate',\r\n 'regulator',\r\n 'rehab',\r\n 'reheat',\r\n 'rehire',\r\n 'rehydrate',\r\n 'reimburse',\r\n 'reissue',\r\n 'reiterate',\r\n 'rejoice',\r\n 'rejoicing',\r\n 'rejoin',\r\n 'rekindle',\r\n 'relapse',\r\n 'relapsing',\r\n 'relatable',\r\n 'related',\r\n 'relation',\r\n 'relative',\r\n 'relax',\r\n 'relay',\r\n 'relearn',\r\n 'release',\r\n 'relenting',\r\n 'reliable',\r\n 'reliably',\r\n 'reliance',\r\n 'reliant',\r\n 'relic',\r\n 'relieve',\r\n 'relieving',\r\n 'relight',\r\n 'relish',\r\n 'relive',\r\n 'reload',\r\n 'relocate',\r\n 'relock',\r\n 'reluctant',\r\n 'rely',\r\n 'remake',\r\n 'remark',\r\n 'remarry',\r\n 'rematch',\r\n 'remedial',\r\n 'remedy',\r\n 'remember',\r\n 'reminder',\r\n 'remindful',\r\n 'remission',\r\n 'remix',\r\n 'remnant',\r\n 'remodeler',\r\n 'remold',\r\n 'remorse',\r\n 'remote',\r\n 'removable',\r\n 'removal',\r\n 'removed',\r\n 'remover',\r\n 'removing',\r\n 'rename',\r\n 'renderer',\r\n 'rendering',\r\n 'rendition',\r\n 'renegade',\r\n 'renewable',\r\n 'renewably',\r\n 'renewal',\r\n 'renewed',\r\n 'renounce',\r\n 'renovate',\r\n 'renovator',\r\n 'rentable',\r\n 'rental',\r\n 'rented',\r\n 'renter',\r\n 'reoccupy',\r\n 'reoccur',\r\n 'reopen',\r\n 'reorder',\r\n 'repackage',\r\n 'repacking',\r\n 'repaint',\r\n 'repair',\r\n 'repave',\r\n 'repaying',\r\n 'repayment',\r\n 'repeal',\r\n 'repeated',\r\n 'repeater',\r\n 'repent',\r\n 'rephrase',\r\n 'replace',\r\n 'replay',\r\n 'replica',\r\n 'reply',\r\n 'reporter',\r\n 'repose',\r\n 'repossess',\r\n 'repost',\r\n 'repressed',\r\n 'reprimand',\r\n 'reprint',\r\n 'reprise',\r\n 'reproach',\r\n 'reprocess',\r\n 'reproduce',\r\n 'reprogram',\r\n 'reps',\r\n 'reptile',\r\n 'reptilian',\r\n 'repugnant',\r\n 'repulsion',\r\n 'repulsive',\r\n 'repurpose',\r\n 'reputable',\r\n 'reputably',\r\n 'request',\r\n 'require',\r\n 'requisite',\r\n 'reroute',\r\n 'rerun',\r\n 'resale',\r\n 'resample',\r\n 'rescuer',\r\n 'reseal',\r\n 'research',\r\n 'reselect',\r\n 'reseller',\r\n 'resemble',\r\n 'resend',\r\n 'resent',\r\n 'reset',\r\n 'reshape',\r\n 'reshoot',\r\n 'reshuffle',\r\n 'residence',\r\n 'residency',\r\n 'resident',\r\n 'residual',\r\n 'residue',\r\n 'resigned',\r\n 'resilient',\r\n 'resistant',\r\n 'resisting',\r\n 'resize',\r\n 'resolute',\r\n 'resolved',\r\n 'resonant',\r\n 'resonate',\r\n 'resort',\r\n 'resource',\r\n 'respect',\r\n 'resubmit',\r\n 'result',\r\n 'resume',\r\n 'resupply',\r\n 'resurface',\r\n 'resurrect',\r\n 'retail',\r\n 'retainer',\r\n 'retaining',\r\n 'retake',\r\n 'retaliate',\r\n 'retention',\r\n 'rethink',\r\n 'retinal',\r\n 'retired',\r\n 'retiree',\r\n 'retiring',\r\n 'retold',\r\n 'retool',\r\n 'retorted',\r\n 'retouch',\r\n 'retrace',\r\n 'retract',\r\n 'retrain',\r\n 'retread',\r\n 'retreat',\r\n 'retrial',\r\n 'retrieval',\r\n 'retriever',\r\n 'retry',\r\n 'return',\r\n 'retying',\r\n 'retype',\r\n 'reunion',\r\n 'reunite',\r\n 'reusable',\r\n 'reuse',\r\n 'reveal',\r\n 'reveler',\r\n 'revenge',\r\n 'revenue',\r\n 'reverb',\r\n 'revered',\r\n 'reverence',\r\n 'reverend',\r\n 'reversal',\r\n 'reverse',\r\n 'reversing',\r\n 'reversion',\r\n 'revert',\r\n 'revisable',\r\n 'revise',\r\n 'revision',\r\n 'revisit',\r\n 'revivable',\r\n 'revival',\r\n 'reviver',\r\n 'reviving',\r\n 'revocable',\r\n 'revoke',\r\n 'revolt',\r\n 'revolver',\r\n 'revolving',\r\n 'reward',\r\n 'rewash',\r\n 'rewind',\r\n 'rewire',\r\n 'reword',\r\n 'rework',\r\n 'rewrap',\r\n 'rewrite',\r\n 'rhyme',\r\n 'ribbon',\r\n 'ribcage',\r\n 'rice',\r\n 'riches',\r\n 'richly',\r\n 'richness',\r\n 'rickety',\r\n 'ricotta',\r\n 'riddance',\r\n 'ridden',\r\n 'ride',\r\n 'riding',\r\n 'rifling',\r\n 'rift',\r\n 'rigging',\r\n 'rigid',\r\n 'rigor',\r\n 'rimless',\r\n 'rimmed',\r\n 'rind',\r\n 'rink',\r\n 'rinse',\r\n 'rinsing',\r\n 'riot',\r\n 'ripcord',\r\n 'ripeness',\r\n 'ripening',\r\n 'ripping',\r\n 'ripple',\r\n 'rippling',\r\n 'riptide',\r\n 'rise',\r\n 'rising',\r\n 'risk',\r\n 'risotto',\r\n 'ritalin',\r\n 'ritzy',\r\n 'rival',\r\n 'riverbank',\r\n 'riverbed',\r\n 'riverboat',\r\n 'riverside',\r\n 'riveter',\r\n 'riveting',\r\n 'roamer',\r\n 'roaming',\r\n 'roast',\r\n 'robbing',\r\n 'robe',\r\n 'robin',\r\n 'robotics',\r\n 'robust',\r\n 'rockband',\r\n 'rocker',\r\n 'rocket',\r\n 'rockfish',\r\n 'rockiness',\r\n 'rocking',\r\n 'rocklike',\r\n 'rockslide',\r\n 'rockstar',\r\n 'rocky',\r\n 'rogue',\r\n 'roman',\r\n 'romp',\r\n 'rope',\r\n 'roping',\r\n 'roster',\r\n 'rosy',\r\n 'rotten',\r\n 'rotting',\r\n 'rotunda',\r\n 'roulette',\r\n 'rounding',\r\n 'roundish',\r\n 'roundness',\r\n 'roundup',\r\n 'roundworm',\r\n 'routine',\r\n 'routing',\r\n 'rover',\r\n 'roving',\r\n 'royal',\r\n 'rubbed',\r\n 'rubber',\r\n 'rubbing',\r\n 'rubble',\r\n 'rubdown',\r\n 'ruby',\r\n 'ruckus',\r\n 'rudder',\r\n 'rug',\r\n 'ruined',\r\n 'rule',\r\n 'rumble',\r\n 'rumbling',\r\n 'rummage',\r\n 'rumor',\r\n 'runaround',\r\n 'rundown',\r\n 'runner',\r\n 'running',\r\n 'runny',\r\n 'runt',\r\n 'runway',\r\n 'rupture',\r\n 'rural',\r\n 'ruse',\r\n 'rush',\r\n 'rust',\r\n 'rut',\r\n 'sabbath',\r\n 'sabotage',\r\n 'sacrament',\r\n 'sacred',\r\n 'sacrifice',\r\n 'sadden',\r\n 'saddlebag',\r\n 'saddled',\r\n 'saddling',\r\n 'sadly',\r\n 'sadness',\r\n 'safari',\r\n 'safeguard',\r\n 'safehouse',\r\n 'safely',\r\n 'safeness',\r\n 'saffron',\r\n 'saga',\r\n 'sage',\r\n 'sagging',\r\n 'saggy',\r\n 'said',\r\n 'saint',\r\n 'sake',\r\n 'salad',\r\n 'salami',\r\n 'salaried',\r\n 'salary',\r\n 'saline',\r\n 'salon',\r\n 'saloon',\r\n 'salsa',\r\n 'salt',\r\n 'salutary',\r\n 'salute',\r\n 'salvage',\r\n 'salvaging',\r\n 'salvation',\r\n 'same',\r\n 'sample',\r\n 'sampling',\r\n 'sanction',\r\n 'sanctity',\r\n 'sanctuary',\r\n 'sandal',\r\n 'sandbag',\r\n 'sandbank',\r\n 'sandbar',\r\n 'sandblast',\r\n 'sandbox',\r\n 'sanded',\r\n 'sandfish',\r\n 'sanding',\r\n 'sandlot',\r\n 'sandpaper',\r\n 'sandpit',\r\n 'sandstone',\r\n 'sandstorm',\r\n 'sandworm',\r\n 'sandy',\r\n 'sanitary',\r\n 'sanitizer',\r\n 'sank',\r\n 'santa',\r\n 'sapling',\r\n 'sappiness',\r\n 'sappy',\r\n 'sarcasm',\r\n 'sarcastic',\r\n 'sardine',\r\n 'sash',\r\n 'sasquatch',\r\n 'sassy',\r\n 'satchel',\r\n 'satiable',\r\n 'satin',\r\n 'satirical',\r\n 'satisfied',\r\n 'satisfy',\r\n 'saturate',\r\n 'saturday',\r\n 'sauciness',\r\n 'saucy',\r\n 'sauna',\r\n 'savage',\r\n 'savanna',\r\n 'saved',\r\n 'savings',\r\n 'savior',\r\n 'savor',\r\n 'saxophone',\r\n 'say',\r\n 'scabbed',\r\n 'scabby',\r\n 'scalded',\r\n 'scalding',\r\n 'scale',\r\n 'scaling',\r\n 'scallion',\r\n 'scallop',\r\n 'scalping',\r\n 'scam',\r\n 'scandal',\r\n 'scanner',\r\n 'scanning',\r\n 'scant',\r\n 'scapegoat',\r\n 'scarce',\r\n 'scarcity',\r\n 'scarecrow',\r\n 'scared',\r\n 'scarf',\r\n 'scarily',\r\n 'scariness',\r\n 'scarring',\r\n 'scary',\r\n 'scavenger',\r\n 'scenic',\r\n 'schedule',\r\n 'schematic',\r\n 'scheme',\r\n 'scheming',\r\n 'schilling',\r\n 'schnapps',\r\n 'scholar',\r\n 'science',\r\n 'scientist',\r\n 'scion',\r\n 'scoff',\r\n 'scolding',\r\n 'scone',\r\n 'scoop',\r\n 'scooter',\r\n 'scope',\r\n 'scorch',\r\n 'scorebook',\r\n 'scorecard',\r\n 'scored',\r\n 'scoreless',\r\n 'scorer',\r\n 'scoring',\r\n 'scorn',\r\n 'scorpion',\r\n 'scotch',\r\n 'scoundrel',\r\n 'scoured',\r\n 'scouring',\r\n 'scouting',\r\n 'scouts',\r\n 'scowling',\r\n 'scrabble',\r\n 'scraggly',\r\n 'scrambled',\r\n 'scrambler',\r\n 'scrap',\r\n 'scratch',\r\n 'scrawny',\r\n 'screen',\r\n 'scribble',\r\n 'scribe',\r\n 'scribing',\r\n 'scrimmage',\r\n 'script',\r\n 'scroll',\r\n 'scrooge',\r\n 'scrounger',\r\n 'scrubbed',\r\n 'scrubber',\r\n 'scruffy',\r\n 'scrunch',\r\n 'scrutiny',\r\n 'scuba',\r\n 'scuff',\r\n 'sculptor',\r\n 'sculpture',\r\n 'scurvy',\r\n 'scuttle',\r\n 'secluded',\r\n 'secluding',\r\n 'seclusion',\r\n 'second',\r\n 'secrecy',\r\n 'secret',\r\n 'sectional',\r\n 'sector',\r\n 'secular',\r\n 'securely',\r\n 'security',\r\n 'sedan',\r\n 'sedate',\r\n 'sedation',\r\n 'sedative',\r\n 'sediment',\r\n 'seduce',\r\n 'seducing',\r\n 'segment',\r\n 'seismic',\r\n 'seizing',\r\n 'seldom',\r\n 'selected',\r\n 'selection',\r\n 'selective',\r\n 'selector',\r\n 'self',\r\n 'seltzer',\r\n 'semantic',\r\n 'semester',\r\n 'semicolon',\r\n 'semifinal',\r\n 'seminar',\r\n 'semisoft',\r\n 'semisweet',\r\n 'senate',\r\n 'senator',\r\n 'send',\r\n 'senior',\r\n 'senorita',\r\n 'sensation',\r\n 'sensitive',\r\n 'sensitize',\r\n 'sensually',\r\n 'sensuous',\r\n 'sepia',\r\n 'september',\r\n 'septic',\r\n 'septum',\r\n 'sequel',\r\n 'sequence',\r\n 'sequester',\r\n 'series',\r\n 'sermon',\r\n 'serotonin',\r\n 'serpent',\r\n 'serrated',\r\n 'serve',\r\n 'service',\r\n 'serving',\r\n 'sesame',\r\n 'sessions',\r\n 'setback',\r\n 'setting',\r\n 'settle',\r\n 'settling',\r\n 'setup',\r\n 'sevenfold',\r\n 'seventeen',\r\n 'seventh',\r\n 'seventy',\r\n 'severity',\r\n 'shabby',\r\n 'shack',\r\n 'shaded',\r\n 'shadily',\r\n 'shadiness',\r\n 'shading',\r\n 'shadow',\r\n 'shady',\r\n 'shaft',\r\n 'shakable',\r\n 'shakily',\r\n 'shakiness',\r\n 'shaking',\r\n 'shaky',\r\n 'shale',\r\n 'shallot',\r\n 'shallow',\r\n 'shame',\r\n 'shampoo',\r\n 'shamrock',\r\n 'shank',\r\n 'shanty',\r\n 'shape',\r\n 'shaping',\r\n 'share',\r\n 'sharpener',\r\n 'sharper',\r\n 'sharpie',\r\n 'sharply',\r\n 'sharpness',\r\n 'shawl',\r\n 'sheath',\r\n 'shed',\r\n 'sheep',\r\n 'sheet',\r\n 'shelf',\r\n 'shell',\r\n 'shelter',\r\n 'shelve',\r\n 'shelving',\r\n 'sherry',\r\n 'shield',\r\n 'shifter',\r\n 'shifting',\r\n 'shiftless',\r\n 'shifty',\r\n 'shimmer',\r\n 'shimmy',\r\n 'shindig',\r\n 'shine',\r\n 'shingle',\r\n 'shininess',\r\n 'shining',\r\n 'shiny',\r\n 'ship',\r\n 'shirt',\r\n 'shivering',\r\n 'shock',\r\n 'shone',\r\n 'shoplift',\r\n 'shopper',\r\n 'shopping',\r\n 'shoptalk',\r\n 'shore',\r\n 'shortage',\r\n 'shortcake',\r\n 'shortcut',\r\n 'shorten',\r\n 'shorter',\r\n 'shorthand',\r\n 'shortlist',\r\n 'shortly',\r\n 'shortness',\r\n 'shorts',\r\n 'shortwave',\r\n 'shorty',\r\n 'shout',\r\n 'shove',\r\n 'showbiz',\r\n 'showcase',\r\n 'showdown',\r\n 'shower',\r\n 'showgirl',\r\n 'showing',\r\n 'showman',\r\n 'shown',\r\n 'showoff',\r\n 'showpiece',\r\n 'showplace',\r\n 'showroom',\r\n 'showy',\r\n 'shrank',\r\n 'shrapnel',\r\n 'shredder',\r\n 'shredding',\r\n 'shrewdly',\r\n 'shriek',\r\n 'shrill',\r\n 'shrimp',\r\n 'shrine',\r\n 'shrink',\r\n 'shrivel',\r\n 'shrouded',\r\n 'shrubbery',\r\n 'shrubs',\r\n 'shrug',\r\n 'shrunk',\r\n 'shucking',\r\n 'shudder',\r\n 'shuffle',\r\n 'shuffling',\r\n 'shun',\r\n 'shush',\r\n 'shut',\r\n 'shy',\r\n 'siamese',\r\n 'siberian',\r\n 'sibling',\r\n 'siding',\r\n 'sierra',\r\n 'siesta',\r\n 'sift',\r\n 'sighing',\r\n 'silenced',\r\n 'silencer',\r\n 'silent',\r\n 'silica',\r\n 'silicon',\r\n 'silk',\r\n 'silliness',\r\n 'silly',\r\n 'silo',\r\n 'silt',\r\n 'silver',\r\n 'similarly',\r\n 'simile',\r\n 'simmering',\r\n 'simple',\r\n 'simplify',\r\n 'simply',\r\n 'sincere',\r\n 'sincerity',\r\n 'singer',\r\n 'singing',\r\n 'single',\r\n 'singular',\r\n 'sinister',\r\n 'sinless',\r\n 'sinner',\r\n 'sinuous',\r\n 'sip',\r\n 'siren',\r\n 'sister',\r\n 'sitcom',\r\n 'sitter',\r\n 'sitting',\r\n 'situated',\r\n 'situation',\r\n 'sixfold',\r\n 'sixteen',\r\n 'sixth',\r\n 'sixties',\r\n 'sixtieth',\r\n 'sixtyfold',\r\n 'sizable',\r\n 'sizably',\r\n 'size',\r\n 'sizing',\r\n 'sizzle',\r\n 'sizzling',\r\n 'skater',\r\n 'skating',\r\n 'skedaddle',\r\n 'skeletal',\r\n 'skeleton',\r\n 'skeptic',\r\n 'sketch',\r\n 'skewed',\r\n 'skewer',\r\n 'skid',\r\n 'skied',\r\n 'skier',\r\n 'skies',\r\n 'skiing',\r\n 'skilled',\r\n 'skillet',\r\n 'skillful',\r\n 'skimmed',\r\n 'skimmer',\r\n 'skimming',\r\n 'skimpily',\r\n 'skincare',\r\n 'skinhead',\r\n 'skinless',\r\n 'skinning',\r\n 'skinny',\r\n 'skintight',\r\n 'skipper',\r\n 'skipping',\r\n 'skirmish',\r\n 'skirt',\r\n 'skittle',\r\n 'skydiver',\r\n 'skylight',\r\n 'skyline',\r\n 'skype',\r\n 'skyrocket',\r\n 'skyward',\r\n 'slab',\r\n 'slacked',\r\n 'slacker',\r\n 'slacking',\r\n 'slackness',\r\n 'slacks',\r\n 'slain',\r\n 'slam',\r\n 'slander',\r\n 'slang',\r\n 'slapping',\r\n 'slapstick',\r\n 'slashed',\r\n 'slashing',\r\n 'slate',\r\n 'slather',\r\n 'slaw',\r\n 'sled',\r\n 'sleek',\r\n 'sleep',\r\n 'sleet',\r\n 'sleeve',\r\n 'slept',\r\n 'sliceable',\r\n 'sliced',\r\n 'slicer',\r\n 'slicing',\r\n 'slick',\r\n 'slider',\r\n 'slideshow',\r\n 'sliding',\r\n 'slighted',\r\n 'slighting',\r\n 'slightly',\r\n 'slimness',\r\n 'slimy',\r\n 'slinging',\r\n 'slingshot',\r\n 'slinky',\r\n 'slip',\r\n 'slit',\r\n 'sliver',\r\n 'slobbery',\r\n 'slogan',\r\n 'sloped',\r\n 'sloping',\r\n 'sloppily',\r\n 'sloppy',\r\n 'slot',\r\n 'slouching',\r\n 'slouchy',\r\n 'sludge',\r\n 'slug',\r\n 'slum',\r\n 'slurp',\r\n 'slush',\r\n 'sly',\r\n 'small',\r\n 'smartly',\r\n 'smartness',\r\n 'smasher',\r\n 'smashing',\r\n 'smashup',\r\n 'smell',\r\n 'smelting',\r\n 'smile',\r\n 'smilingly',\r\n 'smirk',\r\n 'smite',\r\n 'smith',\r\n 'smitten',\r\n 'smock',\r\n 'smog',\r\n 'smoked',\r\n 'smokeless',\r\n 'smokiness',\r\n 'smoking',\r\n 'smoky',\r\n 'smolder',\r\n 'smooth',\r\n 'smother',\r\n 'smudge',\r\n 'smudgy',\r\n 'smuggler',\r\n 'smuggling',\r\n 'smugly',\r\n 'smugness',\r\n 'snack',\r\n 'snagged',\r\n 'snaking',\r\n 'snap',\r\n 'snare',\r\n 'snarl',\r\n 'snazzy',\r\n 'sneak',\r\n 'sneer',\r\n 'sneeze',\r\n 'sneezing',\r\n 'snide',\r\n 'sniff',\r\n 'snippet',\r\n 'snipping',\r\n 'snitch',\r\n 'snooper',\r\n 'snooze',\r\n 'snore',\r\n 'snoring',\r\n 'snorkel',\r\n 'snort',\r\n 'snout',\r\n 'snowbird',\r\n 'snowboard',\r\n 'snowbound',\r\n 'snowcap',\r\n 'snowdrift',\r\n 'snowdrop',\r\n 'snowfall',\r\n 'snowfield',\r\n 'snowflake',\r\n 'snowiness',\r\n 'snowless',\r\n 'snowman',\r\n 'snowplow',\r\n 'snowshoe',\r\n 'snowstorm',\r\n 'snowsuit',\r\n 'snowy',\r\n 'snub',\r\n 'snuff',\r\n 'snuggle',\r\n 'snugly',\r\n 'snugness',\r\n 'speak',\r\n 'spearfish',\r\n 'spearhead',\r\n 'spearman',\r\n 'spearmint',\r\n 'species',\r\n 'specimen',\r\n 'specked',\r\n 'speckled',\r\n 'specks',\r\n 'spectacle',\r\n 'spectator',\r\n 'spectrum',\r\n 'speculate',\r\n 'speech',\r\n 'speed',\r\n 'spellbind',\r\n 'speller',\r\n 'spelling',\r\n 'spendable',\r\n 'spender',\r\n 'spending',\r\n 'spent',\r\n 'spew',\r\n 'sphere',\r\n 'spherical',\r\n 'sphinx',\r\n 'spider',\r\n 'spied',\r\n 'spiffy',\r\n 'spill',\r\n 'spilt',\r\n 'spinach',\r\n 'spinal',\r\n 'spindle',\r\n 'spinner',\r\n 'spinning',\r\n 'spinout',\r\n 'spinster',\r\n 'spiny',\r\n 'spiral',\r\n 'spirited',\r\n 'spiritism',\r\n 'spirits',\r\n 'spiritual',\r\n 'splashed',\r\n 'splashing',\r\n 'splashy',\r\n 'splatter',\r\n 'spleen',\r\n 'splendid',\r\n 'splendor',\r\n 'splice',\r\n 'splicing',\r\n 'splinter',\r\n 'splotchy',\r\n 'splurge',\r\n 'spoilage',\r\n 'spoiled',\r\n 'spoiler',\r\n 'spoiling',\r\n 'spoils',\r\n 'spoken',\r\n 'spokesman',\r\n 'sponge',\r\n 'spongy',\r\n 'sponsor',\r\n 'spoof',\r\n 'spookily',\r\n 'spooky',\r\n 'spool',\r\n 'spoon',\r\n 'spore',\r\n 'sporting',\r\n 'sports',\r\n 'sporty',\r\n 'spotless',\r\n 'spotlight',\r\n 'spotted',\r\n 'spotter',\r\n 'spotting',\r\n 'spotty',\r\n 'spousal',\r\n 'spouse',\r\n 'spout',\r\n 'sprain',\r\n 'sprang',\r\n 'sprawl',\r\n 'spray',\r\n 'spree',\r\n 'sprig',\r\n 'spring',\r\n 'sprinkled',\r\n 'sprinkler',\r\n 'sprint',\r\n 'sprite',\r\n 'sprout',\r\n 'spruce',\r\n 'sprung',\r\n 'spry',\r\n 'spud',\r\n 'spur',\r\n 'sputter',\r\n 'spyglass',\r\n 'squabble',\r\n 'squad',\r\n 'squall',\r\n 'squander',\r\n 'squash',\r\n 'squatted',\r\n 'squatter',\r\n 'squatting',\r\n 'squeak',\r\n 'squealer',\r\n 'squealing',\r\n 'squeamish',\r\n 'squeegee',\r\n 'squeeze',\r\n 'squeezing',\r\n 'squid',\r\n 'squiggle',\r\n 'squiggly',\r\n 'squint',\r\n 'squire',\r\n 'squirt',\r\n 'squishier',\r\n 'squishy',\r\n 'stability',\r\n 'stabilize',\r\n 'stable',\r\n 'stack',\r\n 'stadium',\r\n 'staff',\r\n 'stage',\r\n 'staging',\r\n 'stagnant',\r\n 'stagnate',\r\n 'stainable',\r\n 'stained',\r\n 'staining',\r\n 'stainless',\r\n 'stalemate',\r\n 'staleness',\r\n 'stalling',\r\n 'stallion',\r\n 'stamina',\r\n 'stammer',\r\n 'stamp',\r\n 'stand',\r\n 'stank',\r\n 'staple',\r\n 'stapling',\r\n 'starboard',\r\n 'starch',\r\n 'stardom',\r\n 'stardust',\r\n 'starfish',\r\n 'stargazer',\r\n 'staring',\r\n 'stark',\r\n 'starless',\r\n 'starlet',\r\n 'starlight',\r\n 'starlit',\r\n 'starring',\r\n 'starry',\r\n 'starship',\r\n 'starter',\r\n 'starting',\r\n 'startle',\r\n 'startling',\r\n 'startup',\r\n 'starved',\r\n 'starving',\r\n 'stash',\r\n 'state',\r\n 'static',\r\n 'statistic',\r\n 'statue',\r\n 'stature',\r\n 'status',\r\n 'statute',\r\n 'statutory',\r\n 'staunch',\r\n 'stays',\r\n 'steadfast',\r\n 'steadier',\r\n 'steadily',\r\n 'steadying',\r\n 'steam',\r\n 'steed',\r\n 'steep',\r\n 'steerable',\r\n 'steering',\r\n 'steersman',\r\n 'stegosaur',\r\n 'stellar',\r\n 'stem',\r\n 'stench',\r\n 'stencil',\r\n 'step',\r\n 'stereo',\r\n 'sterile',\r\n 'sterility',\r\n 'sterilize',\r\n 'sterling',\r\n 'sternness',\r\n 'sternum',\r\n 'stew',\r\n 'stick',\r\n 'stiffen',\r\n 'stiffly',\r\n 'stiffness',\r\n 'stifle',\r\n 'stifling',\r\n 'stillness',\r\n 'stilt',\r\n 'stimulant',\r\n 'stimulate',\r\n 'stimuli',\r\n 'stimulus',\r\n 'stinger',\r\n 'stingily',\r\n 'stinging',\r\n 'stingray',\r\n 'stingy',\r\n 'stinking',\r\n 'stinky',\r\n 'stipend',\r\n 'stipulate',\r\n 'stir',\r\n 'stitch',\r\n 'stock',\r\n 'stoic',\r\n 'stoke',\r\n 'stole',\r\n 'stomp',\r\n 'stonewall',\r\n 'stoneware',\r\n 'stonework',\r\n 'stoning',\r\n 'stony',\r\n 'stood',\r\n 'stooge',\r\n 'stool',\r\n 'stoop',\r\n 'stoplight',\r\n 'stoppable',\r\n 'stoppage',\r\n 'stopped',\r\n 'stopper',\r\n 'stopping',\r\n 'stopwatch',\r\n 'storable',\r\n 'storage',\r\n 'storeroom',\r\n 'storewide',\r\n 'storm',\r\n 'stout',\r\n 'stove',\r\n 'stowaway',\r\n 'stowing',\r\n 'straddle',\r\n 'straggler',\r\n 'strained',\r\n 'strainer',\r\n 'straining',\r\n 'strangely',\r\n 'stranger',\r\n 'strangle',\r\n 'strategic',\r\n 'strategy',\r\n 'stratus',\r\n 'straw',\r\n 'stray',\r\n 'streak',\r\n 'stream',\r\n 'street',\r\n 'strength',\r\n 'strenuous',\r\n 'strep',\r\n 'stress',\r\n 'stretch',\r\n 'strewn',\r\n 'stricken',\r\n 'strict',\r\n 'stride',\r\n 'strife',\r\n 'strike',\r\n 'striking',\r\n 'strive',\r\n 'striving',\r\n 'strobe',\r\n 'strode',\r\n 'stroller',\r\n 'strongbox',\r\n 'strongly',\r\n 'strongman',\r\n 'struck',\r\n 'structure',\r\n 'strudel',\r\n 'struggle',\r\n 'strum',\r\n 'strung',\r\n 'strut',\r\n 'stubbed',\r\n 'stubble',\r\n 'stubbly',\r\n 'stubborn',\r\n 'stucco',\r\n 'stuck',\r\n 'student',\r\n 'studied',\r\n 'studio',\r\n 'study',\r\n 'stuffed',\r\n 'stuffing',\r\n 'stuffy',\r\n 'stumble',\r\n 'stumbling',\r\n 'stump',\r\n 'stung',\r\n 'stunned',\r\n 'stunner',\r\n 'stunning',\r\n 'stunt',\r\n 'stupor',\r\n 'sturdily',\r\n 'sturdy',\r\n 'styling',\r\n 'stylishly',\r\n 'stylist',\r\n 'stylized',\r\n 'stylus',\r\n 'suave',\r\n 'subarctic',\r\n 'subatomic',\r\n 'subdivide',\r\n 'subdued',\r\n 'subduing',\r\n 'subfloor',\r\n 'subgroup',\r\n 'subheader',\r\n 'subject',\r\n 'sublease',\r\n 'sublet',\r\n 'sublevel',\r\n 'sublime',\r\n 'submarine',\r\n 'submerge',\r\n 'submersed',\r\n 'submitter',\r\n 'subpanel',\r\n 'subpar',\r\n 'subplot',\r\n 'subprime',\r\n 'subscribe',\r\n 'subscript',\r\n 'subsector',\r\n 'subside',\r\n 'subsiding',\r\n 'subsidize',\r\n 'subsidy',\r\n 'subsoil',\r\n 'subsonic',\r\n 'substance',\r\n 'subsystem',\r\n 'subtext',\r\n 'subtitle',\r\n 'subtly',\r\n 'subtotal',\r\n 'subtract',\r\n 'subtype',\r\n 'suburb',\r\n 'subway',\r\n 'subwoofer',\r\n 'subzero',\r\n 'succulent',\r\n 'such',\r\n 'suction',\r\n 'sudden',\r\n 'sudoku',\r\n 'suds',\r\n 'sufferer',\r\n 'suffering',\r\n 'suffice',\r\n 'suffix',\r\n 'suffocate',\r\n 'suffrage',\r\n 'sugar',\r\n 'suggest',\r\n 'suing',\r\n 'suitable',\r\n 'suitably',\r\n 'suitcase',\r\n 'suitor',\r\n 'sulfate',\r\n 'sulfide',\r\n 'sulfite',\r\n 'sulfur',\r\n 'sulk',\r\n 'sullen',\r\n 'sulphate',\r\n 'sulphuric',\r\n 'sultry',\r\n 'superbowl',\r\n 'superglue',\r\n 'superhero',\r\n 'superior',\r\n 'superjet',\r\n 'superman',\r\n 'supermom',\r\n 'supernova',\r\n 'supervise',\r\n 'supper',\r\n 'supplier',\r\n 'supply',\r\n 'support',\r\n 'supremacy',\r\n 'supreme',\r\n 'surcharge',\r\n 'surely',\r\n 'sureness',\r\n 'surface',\r\n 'surfacing',\r\n 'surfboard',\r\n 'surfer',\r\n 'surgery',\r\n 'surgical',\r\n 'surging',\r\n 'surname',\r\n 'surpass',\r\n 'surplus',\r\n 'surprise',\r\n 'surreal',\r\n 'surrender',\r\n 'surrogate',\r\n 'surround',\r\n 'survey',\r\n 'survival',\r\n 'survive',\r\n 'surviving',\r\n 'survivor',\r\n 'sushi',\r\n 'suspect',\r\n 'suspend',\r\n 'suspense',\r\n 'sustained',\r\n 'sustainer',\r\n 'swab',\r\n 'swaddling',\r\n 'swagger',\r\n 'swampland',\r\n 'swan',\r\n 'swapping',\r\n 'swarm',\r\n 'sway',\r\n 'swear',\r\n 'sweat',\r\n 'sweep',\r\n 'swell',\r\n 'swept',\r\n 'swerve',\r\n 'swifter',\r\n 'swiftly',\r\n 'swiftness',\r\n 'swimmable',\r\n 'swimmer',\r\n 'swimming',\r\n 'swimsuit',\r\n 'swimwear',\r\n 'swinger',\r\n 'swinging',\r\n 'swipe',\r\n 'swirl',\r\n 'switch',\r\n 'swivel',\r\n 'swizzle',\r\n 'swooned',\r\n 'swoop',\r\n 'swoosh',\r\n 'swore',\r\n 'sworn',\r\n 'swung',\r\n 'sycamore',\r\n 'sympathy',\r\n 'symphonic',\r\n 'symphony',\r\n 'symptom',\r\n 'synapse',\r\n 'syndrome',\r\n 'synergy',\r\n 'synopses',\r\n 'synopsis',\r\n 'synthesis',\r\n 'synthetic',\r\n 'syrup',\r\n 'system',\r\n 't-shirt',\r\n 'tabasco',\r\n 'tabby',\r\n 'tableful',\r\n 'tables',\r\n 'tablet',\r\n 'tableware',\r\n 'tabloid',\r\n 'tackiness',\r\n 'tacking',\r\n 'tackle',\r\n 'tackling',\r\n 'tacky',\r\n 'taco',\r\n 'tactful',\r\n 'tactical',\r\n 'tactics',\r\n 'tactile',\r\n 'tactless',\r\n 'tadpole',\r\n 'taekwondo',\r\n 'tag',\r\n 'tainted',\r\n 'take',\r\n 'taking',\r\n 'talcum',\r\n 'talisman',\r\n 'tall',\r\n 'talon',\r\n 'tamale',\r\n 'tameness',\r\n 'tamer',\r\n 'tamper',\r\n 'tank',\r\n 'tanned',\r\n 'tannery',\r\n 'tanning',\r\n 'tantrum',\r\n 'tapeless',\r\n 'tapered',\r\n 'tapering',\r\n 'tapestry',\r\n 'tapioca',\r\n 'tapping',\r\n 'taps',\r\n 'tarantula',\r\n 'target',\r\n 'tarmac',\r\n 'tarnish',\r\n 'tarot',\r\n 'tartar',\r\n 'tartly',\r\n 'tartness',\r\n 'task',\r\n 'tassel',\r\n 'taste',\r\n 'tastiness',\r\n 'tasting',\r\n 'tasty',\r\n 'tattered',\r\n 'tattle',\r\n 'tattling',\r\n 'tattoo',\r\n 'taunt',\r\n 'tavern',\r\n 'thank',\r\n 'that',\r\n 'thaw',\r\n 'theater',\r\n 'theatrics',\r\n 'thee',\r\n 'theft',\r\n 'theme',\r\n 'theology',\r\n 'theorize',\r\n 'thermal',\r\n 'thermos',\r\n 'thesaurus',\r\n 'these',\r\n 'thesis',\r\n 'thespian',\r\n 'thicken',\r\n 'thicket',\r\n 'thickness',\r\n 'thieving',\r\n 'thievish',\r\n 'thigh',\r\n 'thimble',\r\n 'thing',\r\n 'think',\r\n 'thinly',\r\n 'thinner',\r\n 'thinness',\r\n 'thinning',\r\n 'thirstily',\r\n 'thirsting',\r\n 'thirsty',\r\n 'thirteen',\r\n 'thirty',\r\n 'thong',\r\n 'thorn',\r\n 'those',\r\n 'thousand',\r\n 'thrash',\r\n 'thread',\r\n 'threaten',\r\n 'threefold',\r\n 'thrift',\r\n 'thrill',\r\n 'thrive',\r\n 'thriving',\r\n 'throat',\r\n 'throbbing',\r\n 'throng',\r\n 'throttle',\r\n 'throwaway',\r\n 'throwback',\r\n 'thrower',\r\n 'throwing',\r\n 'thud',\r\n 'thumb',\r\n 'thumping',\r\n 'thursday',\r\n 'thus',\r\n 'thwarting',\r\n 'thyself',\r\n 'tiara',\r\n 'tibia',\r\n 'tidal',\r\n 'tidbit',\r\n 'tidiness',\r\n 'tidings',\r\n 'tidy',\r\n 'tiger',\r\n 'tighten',\r\n 'tightly',\r\n 'tightness',\r\n 'tightrope',\r\n 'tightwad',\r\n 'tigress',\r\n 'tile',\r\n 'tiling',\r\n 'till',\r\n 'tilt',\r\n 'timid',\r\n 'timing',\r\n 'timothy',\r\n 'tinderbox',\r\n 'tinfoil',\r\n 'tingle',\r\n 'tingling',\r\n 'tingly',\r\n 'tinker',\r\n 'tinkling',\r\n 'tinsel',\r\n 'tinsmith',\r\n 'tint',\r\n 'tinwork',\r\n 'tiny',\r\n 'tipoff',\r\n 'tipped',\r\n 'tipper',\r\n 'tipping',\r\n 'tiptoeing',\r\n 'tiptop',\r\n 'tiring',\r\n 'tissue',\r\n 'trace',\r\n 'tracing',\r\n 'track',\r\n 'traction',\r\n 'tractor',\r\n 'trade',\r\n 'trading',\r\n 'tradition',\r\n 'traffic',\r\n 'tragedy',\r\n 'trailing',\r\n 'trailside',\r\n 'train',\r\n 'traitor',\r\n 'trance',\r\n 'tranquil',\r\n 'transfer',\r\n 'transform',\r\n 'translate',\r\n 'transpire',\r\n 'transport',\r\n 'transpose',\r\n 'trapdoor',\r\n 'trapeze',\r\n 'trapezoid',\r\n 'trapped',\r\n 'trapper',\r\n 'trapping',\r\n 'traps',\r\n 'trash',\r\n 'travel',\r\n 'traverse',\r\n 'travesty',\r\n 'tray',\r\n 'treachery',\r\n 'treading',\r\n 'treadmill',\r\n 'treason',\r\n 'treat',\r\n 'treble',\r\n 'tree',\r\n 'trekker',\r\n 'tremble',\r\n 'trembling',\r\n 'tremor',\r\n 'trench',\r\n 'trend',\r\n 'trespass',\r\n 'triage',\r\n 'trial',\r\n 'triangle',\r\n 'tribesman',\r\n 'tribunal',\r\n 'tribune',\r\n 'tributary',\r\n 'tribute',\r\n 'triceps',\r\n 'trickery',\r\n 'trickily',\r\n 'tricking',\r\n 'trickle',\r\n 'trickster',\r\n 'tricky',\r\n 'tricolor',\r\n 'tricycle',\r\n 'trident',\r\n 'tried',\r\n 'trifle',\r\n 'trifocals',\r\n 'trillion',\r\n 'trilogy',\r\n 'trimester',\r\n 'trimmer',\r\n 'trimming',\r\n 'trimness',\r\n 'trinity',\r\n 'trio',\r\n 'tripod',\r\n 'tripping',\r\n 'triumph',\r\n 'trivial',\r\n 'trodden',\r\n 'trolling',\r\n 'trombone',\r\n 'trophy',\r\n 'tropical',\r\n 'tropics',\r\n 'trouble',\r\n 'troubling',\r\n 'trough',\r\n 'trousers',\r\n 'trout',\r\n 'trowel',\r\n 'truce',\r\n 'truck',\r\n 'truffle',\r\n 'trump',\r\n 'trunks',\r\n 'trustable',\r\n 'trustee',\r\n 'trustful',\r\n 'trusting',\r\n 'trustless',\r\n 'truth',\r\n 'try',\r\n 'tubby',\r\n 'tubeless',\r\n 'tubular',\r\n 'tucking',\r\n 'tuesday',\r\n 'tug',\r\n 'tuition',\r\n 'tulip',\r\n 'tumble',\r\n 'tumbling',\r\n 'tummy',\r\n 'turban',\r\n 'turbine',\r\n 'turbofan',\r\n 'turbojet',\r\n 'turbulent',\r\n 'turf',\r\n 'turkey',\r\n 'turmoil',\r\n 'turret',\r\n 'turtle',\r\n 'tusk',\r\n 'tutor',\r\n 'tutu',\r\n 'tux',\r\n 'tweak',\r\n 'tweed',\r\n 'tweet',\r\n 'tweezers',\r\n 'twelve',\r\n 'twentieth',\r\n 'twenty',\r\n 'twerp',\r\n 'twice',\r\n 'twiddle',\r\n 'twiddling',\r\n 'twig',\r\n 'twilight',\r\n 'twine',\r\n 'twins',\r\n 'twirl',\r\n 'twistable',\r\n 'twisted',\r\n 'twister',\r\n 'twisting',\r\n 'twisty',\r\n 'twitch',\r\n 'twitter',\r\n 'tycoon',\r\n 'tying',\r\n 'tyke',\r\n 'udder',\r\n 'ultimate',\r\n 'ultimatum',\r\n 'ultra',\r\n 'umbilical',\r\n 'umbrella',\r\n 'umpire',\r\n 'unabashed',\r\n 'unable',\r\n 'unadorned',\r\n 'unadvised',\r\n 'unafraid',\r\n 'unaired',\r\n 'unaligned',\r\n 'unaltered',\r\n 'unarmored',\r\n 'unashamed',\r\n 'unaudited',\r\n 'unawake',\r\n 'unaware',\r\n 'unbaked',\r\n 'unbalance',\r\n 'unbeaten',\r\n 'unbend',\r\n 'unbent',\r\n 'unbiased',\r\n 'unbitten',\r\n 'unblended',\r\n 'unblessed',\r\n 'unblock',\r\n 'unbolted',\r\n 'unbounded',\r\n 'unboxed',\r\n 'unbraided',\r\n 'unbridle',\r\n 'unbroken',\r\n 'unbuckled',\r\n 'unbundle',\r\n 'unburned',\r\n 'unbutton',\r\n 'uncanny',\r\n 'uncapped',\r\n 'uncaring',\r\n 'uncertain',\r\n 'unchain',\r\n 'unchanged',\r\n 'uncharted',\r\n 'uncheck',\r\n 'uncivil',\r\n 'unclad',\r\n 'unclaimed',\r\n 'unclamped',\r\n 'unclasp',\r\n 'uncle',\r\n 'unclip',\r\n 'uncloak',\r\n 'unclog',\r\n 'unclothed',\r\n 'uncoated',\r\n 'uncoiled',\r\n 'uncolored',\r\n 'uncombed',\r\n 'uncommon',\r\n 'uncooked',\r\n 'uncork',\r\n 'uncorrupt',\r\n 'uncounted',\r\n 'uncouple',\r\n 'uncouth',\r\n 'uncover',\r\n 'uncross',\r\n 'uncrown',\r\n 'uncrushed',\r\n 'uncured',\r\n 'uncurious',\r\n 'uncurled',\r\n 'uncut',\r\n 'undamaged',\r\n 'undated',\r\n 'undaunted',\r\n 'undead',\r\n 'undecided',\r\n 'undefined',\r\n 'underage',\r\n 'underarm',\r\n 'undercoat',\r\n 'undercook',\r\n 'undercut',\r\n 'underdog',\r\n 'underdone',\r\n 'underfed',\r\n 'underfeed',\r\n 'underfoot',\r\n 'undergo',\r\n 'undergrad',\r\n 'underhand',\r\n 'underline',\r\n 'underling',\r\n 'undermine',\r\n 'undermost',\r\n 'underpaid',\r\n 'underpass',\r\n 'underpay',\r\n 'underrate',\r\n 'undertake',\r\n 'undertone',\r\n 'undertook',\r\n 'undertow',\r\n 'underuse',\r\n 'underwear',\r\n 'underwent',\r\n 'underwire',\r\n 'undesired',\r\n 'undiluted',\r\n 'undivided',\r\n 'undocked',\r\n 'undoing',\r\n 'undone',\r\n 'undrafted',\r\n 'undress',\r\n 'undrilled',\r\n 'undusted',\r\n 'undying',\r\n 'unearned',\r\n 'unearth',\r\n 'unease',\r\n 'uneasily',\r\n 'uneasy',\r\n 'uneatable',\r\n 'uneaten',\r\n 'unedited',\r\n 'unelected',\r\n 'unending',\r\n 'unengaged',\r\n 'unenvied',\r\n 'unequal',\r\n 'unethical',\r\n 'uneven',\r\n 'unexpired',\r\n 'unexposed',\r\n 'unfailing',\r\n 'unfair',\r\n 'unfasten',\r\n 'unfazed',\r\n 'unfeeling',\r\n 'unfiled',\r\n 'unfilled',\r\n 'unfitted',\r\n 'unfitting',\r\n 'unfixable',\r\n 'unfixed',\r\n 'unflawed',\r\n 'unfocused',\r\n 'unfold',\r\n 'unfounded',\r\n 'unframed',\r\n 'unfreeze',\r\n 'unfrosted',\r\n 'unfrozen',\r\n 'unfunded',\r\n 'unglazed',\r\n 'ungloved',\r\n 'unglue',\r\n 'ungodly',\r\n 'ungraded',\r\n 'ungreased',\r\n 'unguarded',\r\n 'unguided',\r\n 'unhappily',\r\n 'unhappy',\r\n 'unharmed',\r\n 'unhealthy',\r\n 'unheard',\r\n 'unhearing',\r\n 'unheated',\r\n 'unhelpful',\r\n 'unhidden',\r\n 'unhinge',\r\n 'unhitched',\r\n 'unholy',\r\n 'unhook',\r\n 'unicorn',\r\n 'unicycle',\r\n 'unified',\r\n 'unifier',\r\n 'uniformed',\r\n 'uniformly',\r\n 'unify',\r\n 'unimpeded',\r\n 'uninjured',\r\n 'uninstall',\r\n 'uninsured',\r\n 'uninvited',\r\n 'union',\r\n 'uniquely',\r\n 'unisexual',\r\n 'unison',\r\n 'unissued',\r\n 'unit',\r\n 'universal',\r\n 'universe',\r\n 'unjustly',\r\n 'unkempt',\r\n 'unkind',\r\n 'unknotted',\r\n 'unknowing',\r\n 'unknown',\r\n 'unlaced',\r\n 'unlatch',\r\n 'unlawful',\r\n 'unleaded',\r\n 'unlearned',\r\n 'unleash',\r\n 'unless',\r\n 'unleveled',\r\n 'unlighted',\r\n 'unlikable',\r\n 'unlimited',\r\n 'unlined',\r\n 'unlinked',\r\n 'unlisted',\r\n 'unlit',\r\n 'unlivable',\r\n 'unloaded',\r\n 'unloader',\r\n 'unlocked',\r\n 'unlocking',\r\n 'unlovable',\r\n 'unloved',\r\n 'unlovely',\r\n 'unloving',\r\n 'unluckily',\r\n 'unlucky',\r\n 'unmade',\r\n 'unmanaged',\r\n 'unmanned',\r\n 'unmapped',\r\n 'unmarked',\r\n 'unmasked',\r\n 'unmasking',\r\n 'unmatched',\r\n 'unmindful',\r\n 'unmixable',\r\n 'unmixed',\r\n 'unmolded',\r\n 'unmoral',\r\n 'unmovable',\r\n 'unmoved',\r\n 'unmoving',\r\n 'unnamable',\r\n 'unnamed',\r\n 'unnatural',\r\n 'unneeded',\r\n 'unnerve',\r\n 'unnerving',\r\n 'unnoticed',\r\n 'unopened',\r\n 'unopposed',\r\n 'unpack',\r\n 'unpadded',\r\n 'unpaid',\r\n 'unpainted',\r\n 'unpaired',\r\n 'unpaved',\r\n 'unpeeled',\r\n 'unpicked',\r\n 'unpiloted',\r\n 'unpinned',\r\n 'unplanned',\r\n 'unplanted',\r\n 'unpleased',\r\n 'unpledged',\r\n 'unplowed',\r\n 'unplug',\r\n 'unpopular',\r\n 'unproven',\r\n 'unquote',\r\n 'unranked',\r\n 'unrated',\r\n 'unraveled',\r\n 'unreached',\r\n 'unread',\r\n 'unreal',\r\n 'unreeling',\r\n 'unrefined',\r\n 'unrelated',\r\n 'unrented',\r\n 'unrest',\r\n 'unretired',\r\n 'unrevised',\r\n 'unrigged',\r\n 'unripe',\r\n 'unrivaled',\r\n 'unroasted',\r\n 'unrobed',\r\n 'unroll',\r\n 'unruffled',\r\n 'unruly',\r\n 'unrushed',\r\n 'unsaddle',\r\n 'unsafe',\r\n 'unsaid',\r\n 'unsalted',\r\n 'unsaved',\r\n 'unsavory',\r\n 'unscathed',\r\n 'unscented',\r\n 'unscrew',\r\n 'unsealed',\r\n 'unseated',\r\n 'unsecured',\r\n 'unseeing',\r\n 'unseemly',\r\n 'unseen',\r\n 'unselect',\r\n 'unselfish',\r\n 'unsent',\r\n 'unsettled',\r\n 'unshackle',\r\n 'unshaken',\r\n 'unshaved',\r\n 'unshaven',\r\n 'unsheathe',\r\n 'unshipped',\r\n 'unsightly',\r\n 'unsigned',\r\n 'unskilled',\r\n 'unsliced',\r\n 'unsmooth',\r\n 'unsnap',\r\n 'unsocial',\r\n 'unsoiled',\r\n 'unsold',\r\n 'unsolved',\r\n 'unsorted',\r\n 'unspoiled',\r\n 'unspoken',\r\n 'unstable',\r\n 'unstaffed',\r\n 'unstamped',\r\n 'unsteady',\r\n 'unsterile',\r\n 'unstirred',\r\n 'unstitch',\r\n 'unstopped',\r\n 'unstuck',\r\n 'unstuffed',\r\n 'unstylish',\r\n 'unsubtle',\r\n 'unsubtly',\r\n 'unsuited',\r\n 'unsure',\r\n 'unsworn',\r\n 'untagged',\r\n 'untainted',\r\n 'untaken',\r\n 'untamed',\r\n 'untangled',\r\n 'untapped',\r\n 'untaxed',\r\n 'unthawed',\r\n 'unthread',\r\n 'untidy',\r\n 'untie',\r\n 'until',\r\n 'untimed',\r\n 'untimely',\r\n 'untitled',\r\n 'untoasted',\r\n 'untold',\r\n 'untouched',\r\n 'untracked',\r\n 'untrained',\r\n 'untreated',\r\n 'untried',\r\n 'untrimmed',\r\n 'untrue',\r\n 'untruth',\r\n 'unturned',\r\n 'untwist',\r\n 'untying',\r\n 'unusable',\r\n 'unused',\r\n 'unusual',\r\n 'unvalued',\r\n 'unvaried',\r\n 'unvarying',\r\n 'unveiled',\r\n 'unveiling',\r\n 'unvented',\r\n 'unviable',\r\n 'unvisited',\r\n 'unvocal',\r\n 'unwanted',\r\n 'unwarlike',\r\n 'unwary',\r\n 'unwashed',\r\n 'unwatched',\r\n 'unweave',\r\n 'unwed',\r\n 'unwelcome',\r\n 'unwell',\r\n 'unwieldy',\r\n 'unwilling',\r\n 'unwind',\r\n 'unwired',\r\n 'unwitting',\r\n 'unwomanly',\r\n 'unworldly',\r\n 'unworn',\r\n 'unworried',\r\n 'unworthy',\r\n 'unwound',\r\n 'unwoven',\r\n 'unwrapped',\r\n 'unwritten',\r\n 'unzip',\r\n 'upbeat',\r\n 'upchuck',\r\n 'upcoming',\r\n 'upcountry',\r\n 'update',\r\n 'upfront',\r\n 'upgrade',\r\n 'upheaval',\r\n 'upheld',\r\n 'uphill',\r\n 'uphold',\r\n 'uplifted',\r\n 'uplifting',\r\n 'upload',\r\n 'upon',\r\n 'upper',\r\n 'upright',\r\n 'uprising',\r\n 'upriver',\r\n 'uproar',\r\n 'uproot',\r\n 'upscale',\r\n 'upside',\r\n 'upstage',\r\n 'upstairs',\r\n 'upstart',\r\n 'upstate',\r\n 'upstream',\r\n 'upstroke',\r\n 'upswing',\r\n 'uptake',\r\n 'uptight',\r\n 'uptown',\r\n 'upturned',\r\n 'upward',\r\n 'upwind',\r\n 'uranium',\r\n 'urban',\r\n 'urchin',\r\n 'urethane',\r\n 'urgency',\r\n 'urgent',\r\n 'urging',\r\n 'urologist',\r\n 'urology',\r\n 'usable',\r\n 'usage',\r\n 'useable',\r\n 'used',\r\n 'uselessly',\r\n 'user',\r\n 'usher',\r\n 'usual',\r\n 'utensil',\r\n 'utility',\r\n 'utilize',\r\n 'utmost',\r\n 'utopia',\r\n 'utter',\r\n 'vacancy',\r\n 'vacant',\r\n 'vacate',\r\n 'vacation',\r\n 'vagabond',\r\n 'vagrancy',\r\n 'vagrantly',\r\n 'vaguely',\r\n 'vagueness',\r\n 'valiant',\r\n 'valid',\r\n 'valium',\r\n 'valley',\r\n 'valuables',\r\n 'value',\r\n 'vanilla',\r\n 'vanish',\r\n 'vanity',\r\n 'vanquish',\r\n 'vantage',\r\n 'vaporizer',\r\n 'variable',\r\n 'variably',\r\n 'varied',\r\n 'variety',\r\n 'various',\r\n 'varmint',\r\n 'varnish',\r\n 'varsity',\r\n 'varying',\r\n 'vascular',\r\n 'vaseline',\r\n 'vastly',\r\n 'vastness',\r\n 'veal',\r\n 'vegan',\r\n 'veggie',\r\n 'vehicular',\r\n 'velcro',\r\n 'velocity',\r\n 'velvet',\r\n 'vendetta',\r\n 'vending',\r\n 'vendor',\r\n 'veneering',\r\n 'vengeful',\r\n 'venomous',\r\n 'ventricle',\r\n 'venture',\r\n 'venue',\r\n 'venus',\r\n 'verbalize',\r\n 'verbally',\r\n 'verbose',\r\n 'verdict',\r\n 'verify',\r\n 'verse',\r\n 'version',\r\n 'versus',\r\n 'vertebrae',\r\n 'vertical',\r\n 'vertigo',\r\n 'very',\r\n 'vessel',\r\n 'vest',\r\n 'veteran',\r\n 'veto',\r\n 'vexingly',\r\n 'viability',\r\n 'viable',\r\n 'vibes',\r\n 'vice',\r\n 'vicinity',\r\n 'victory',\r\n 'video',\r\n 'viewable',\r\n 'viewer',\r\n 'viewing',\r\n 'viewless',\r\n 'viewpoint',\r\n 'vigorous',\r\n 'village',\r\n 'villain',\r\n 'vindicate',\r\n 'vineyard',\r\n 'vintage',\r\n 'violate',\r\n 'violation',\r\n 'violator',\r\n 'violet',\r\n 'violin',\r\n 'viper',\r\n 'viral',\r\n 'virtual',\r\n 'virtuous',\r\n 'virus',\r\n 'visa',\r\n 'viscosity',\r\n 'viscous',\r\n 'viselike',\r\n 'visible',\r\n 'visibly',\r\n 'vision',\r\n 'visiting',\r\n 'visitor',\r\n 'visor',\r\n 'vista',\r\n 'vitality',\r\n 'vitalize',\r\n 'vitally',\r\n 'vitamins',\r\n 'vivacious',\r\n 'vividly',\r\n 'vividness',\r\n 'vixen',\r\n 'vocalist',\r\n 'vocalize',\r\n 'vocally',\r\n 'vocation',\r\n 'voice',\r\n 'voicing',\r\n 'void',\r\n 'volatile',\r\n 'volley',\r\n 'voltage',\r\n 'volumes',\r\n 'voter',\r\n 'voting',\r\n 'voucher',\r\n 'vowed',\r\n 'vowel',\r\n 'voyage',\r\n 'wackiness',\r\n 'wad',\r\n 'wafer',\r\n 'waffle',\r\n 'waged',\r\n 'wager',\r\n 'wages',\r\n 'waggle',\r\n 'wagon',\r\n 'wake',\r\n 'waking',\r\n 'walk',\r\n 'walmart',\r\n 'walnut',\r\n 'walrus',\r\n 'waltz',\r\n 'wand',\r\n 'wannabe',\r\n 'wanted',\r\n 'wanting',\r\n 'wasabi',\r\n 'washable',\r\n 'washbasin',\r\n 'washboard',\r\n 'washbowl',\r\n 'washcloth',\r\n 'washday',\r\n 'washed',\r\n 'washer',\r\n 'washhouse',\r\n 'washing',\r\n 'washout',\r\n 'washroom',\r\n 'washstand',\r\n 'washtub',\r\n 'wasp',\r\n 'wasting',\r\n 'watch',\r\n 'water',\r\n 'waviness',\r\n 'waving',\r\n 'wavy',\r\n 'whacking',\r\n 'whacky',\r\n 'wham',\r\n 'wharf',\r\n 'wheat',\r\n 'whenever',\r\n 'whiff',\r\n 'whimsical',\r\n 'whinny',\r\n 'whiny',\r\n 'whisking',\r\n 'whoever',\r\n 'whole',\r\n 'whomever',\r\n 'whoopee',\r\n 'whooping',\r\n 'whoops',\r\n 'why',\r\n 'wick',\r\n 'widely',\r\n 'widen',\r\n 'widget',\r\n 'widow',\r\n 'width',\r\n 'wieldable',\r\n 'wielder',\r\n 'wife',\r\n 'wifi',\r\n 'wikipedia',\r\n 'wildcard',\r\n 'wildcat',\r\n 'wilder',\r\n 'wildfire',\r\n 'wildfowl',\r\n 'wildland',\r\n 'wildlife',\r\n 'wildly',\r\n 'wildness',\r\n 'willed',\r\n 'willfully',\r\n 'willing',\r\n 'willow',\r\n 'willpower',\r\n 'wilt',\r\n 'wimp',\r\n 'wince',\r\n 'wincing',\r\n 'wind',\r\n 'wing',\r\n 'winking',\r\n 'winner',\r\n 'winnings',\r\n 'winter',\r\n 'wipe',\r\n 'wired',\r\n 'wireless',\r\n 'wiring',\r\n 'wiry',\r\n 'wisdom',\r\n 'wise',\r\n 'wish',\r\n 'wisplike',\r\n 'wispy',\r\n 'wistful',\r\n 'wizard',\r\n 'wobble',\r\n 'wobbling',\r\n 'wobbly',\r\n 'wok',\r\n 'wolf',\r\n 'wolverine',\r\n 'womanhood',\r\n 'womankind',\r\n 'womanless',\r\n 'womanlike',\r\n 'womanly',\r\n 'womb',\r\n 'woof',\r\n 'wooing',\r\n 'wool',\r\n 'woozy',\r\n 'word',\r\n 'work',\r\n 'worried',\r\n 'worrier',\r\n 'worrisome',\r\n 'worry',\r\n 'worsening',\r\n 'worshiper',\r\n 'worst',\r\n 'wound',\r\n 'woven',\r\n 'wow',\r\n 'wrangle',\r\n 'wrath',\r\n 'wreath',\r\n 'wreckage',\r\n 'wrecker',\r\n 'wrecking',\r\n 'wrench',\r\n 'wriggle',\r\n 'wriggly',\r\n 'wrinkle',\r\n 'wrinkly',\r\n 'wrist',\r\n 'writing',\r\n 'written',\r\n 'wrongdoer',\r\n 'wronged',\r\n 'wrongful',\r\n 'wrongly',\r\n 'wrongness',\r\n 'wrought',\r\n 'xbox',\r\n 'xerox',\r\n 'yahoo',\r\n 'yam',\r\n 'yanking',\r\n 'yapping',\r\n 'yard',\r\n 'yarn',\r\n 'yeah',\r\n 'yearbook',\r\n 'yearling',\r\n 'yearly',\r\n 'yearning',\r\n 'yeast',\r\n 'yelling',\r\n 'yelp',\r\n 'yen',\r\n 'yesterday',\r\n 'yiddish',\r\n 'yield',\r\n 'yin',\r\n 'yippee',\r\n 'yo-yo',\r\n 'yodel',\r\n 'yoga',\r\n 'yogurt',\r\n 'yonder',\r\n 'yoyo',\r\n 'yummy',\r\n 'zap',\r\n 'zealous',\r\n 'zebra',\r\n 'zen',\r\n 'zeppelin',\r\n 'zero',\r\n 'zestfully',\r\n 'zesty',\r\n 'zigzagged',\r\n 'zipfile',\r\n 'zipping',\r\n 'zippy',\r\n 'zips',\r\n 'zit',\r\n 'zodiac',\r\n 'zombie',\r\n 'zone',\r\n 'zoning',\r\n 'zookeeper',\r\n 'zoologist',\r\n 'zoology',\r\n 'zoom',\r\n];\r\n","import { EnvironmentUrls } from '../models/domain/environmentUrls';\n\nimport { ConstantsService } from './constants.service';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { EnvironmentService as EnvironmentServiceAbstraction } from '../abstractions/environment.service';\nimport { NotificationsService } from '../abstractions/notifications.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nexport class EnvironmentService implements EnvironmentServiceAbstraction {\n baseUrl: string;\n webVaultUrl: string;\n apiUrl: string;\n identityUrl: string;\n iconsUrl: string;\n notificationsUrl: string;\n\n constructor(private apiService: ApiService, private storageService: StorageService,\n private notificationsService: NotificationsService) { }\n\n getWebVaultUrl(): string {\n if (this.webVaultUrl != null) {\n return this.webVaultUrl;\n } else if (this.baseUrl) {\n return this.baseUrl;\n }\n return null;\n }\n\n async setUrlsFromStorage(): Promise {\n const urlsObj: any = await this.storageService.get(ConstantsService.environmentUrlsKey);\n const urls = urlsObj || {\n base: null,\n api: null,\n identity: null,\n icons: null,\n notifications: null,\n webVault: null,\n };\n\n const envUrls = new EnvironmentUrls();\n\n if (urls.base) {\n this.baseUrl = envUrls.base = urls.base;\n this.apiService.setUrls(envUrls);\n return;\n }\n\n this.webVaultUrl = urls.webVault;\n this.apiUrl = envUrls.api = urls.api;\n this.identityUrl = envUrls.identity = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n this.apiService.setUrls(envUrls);\n }\n\n async setUrls(urls: any): Promise {\n urls.base = this.formatUrl(urls.base);\n urls.webVault = this.formatUrl(urls.webVault);\n urls.api = this.formatUrl(urls.api);\n urls.identity = this.formatUrl(urls.identity);\n urls.icons = this.formatUrl(urls.icons);\n urls.notifications = this.formatUrl(urls.notifications);\n\n await this.storageService.save(ConstantsService.environmentUrlsKey, {\n base: urls.base,\n api: urls.api,\n identity: urls.identity,\n webVault: urls.webVault,\n icons: urls.icons,\n notifications: urls.notifications,\n });\n\n this.baseUrl = urls.base;\n this.webVaultUrl = urls.webVault;\n this.apiUrl = urls.api;\n this.identityUrl = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n\n const envUrls = new EnvironmentUrls();\n if (this.baseUrl) {\n envUrls.base = this.baseUrl;\n } else {\n envUrls.api = this.apiUrl;\n envUrls.identity = this.identityUrl;\n }\n\n this.apiService.setUrls(envUrls);\n if (this.notificationsService != null) {\n this.notificationsService.init(this);\n }\n return urls;\n }\n\n private formatUrl(url: string): string {\n if (url == null || url === '') {\n return null;\n }\n\n url = url.replace(/\\/+$/g, '');\n if (!url.startsWith('http://') && !url.startsWith('https://')) {\n url = 'https://' + url;\n }\n\n return url;\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\n\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService as FolderServiceAbstraction } from '../abstractions/folder.service';\r\nimport { I18nService } from '../abstractions/i18n.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { ServiceUtils } from '../misc/serviceUtils';\r\nimport { Utils } from '../misc/utils';\r\n\r\nconst Keys = {\r\n foldersPrefix: 'folders_',\r\n ciphersPrefix: 'ciphers_',\r\n};\r\nconst NestingDelimiter = '/';\r\n\r\nexport class FolderService implements FolderServiceAbstraction {\r\n decryptedFolderCache: FolderView[];\r\n\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private apiService: ApiService, private storageService: StorageService,\r\n private i18nService: I18nService, private cipherService: CipherService) { }\r\n\r\n clearCache(): void {\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async encrypt(model: FolderView, key?: SymmetricCryptoKey): Promise {\r\n const folder = new Folder();\r\n folder.id = model.id;\r\n folder.name = await this.cryptoService.encrypt(model.name, key);\r\n return folder;\r\n }\r\n\r\n async get(id: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null || !folders.hasOwnProperty(id)) {\r\n return null;\r\n }\r\n\r\n return new Folder(folders[id]);\r\n }\r\n\r\n async getAll(): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n const response: Folder[] = [];\r\n for (const id in folders) {\r\n if (folders.hasOwnProperty(id)) {\r\n response.push(new Folder(folders[id]));\r\n }\r\n }\r\n return response;\r\n }\r\n\r\n async getAllDecrypted(): Promise {\r\n if (this.decryptedFolderCache != null) {\r\n return this.decryptedFolderCache;\r\n }\r\n\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n throw new Error('No key.');\r\n }\r\n\r\n const decFolders: FolderView[] = [];\r\n const promises: Array> = [];\r\n const folders = await this.getAll();\r\n folders.forEach((folder) => {\r\n promises.push(folder.decrypt().then((f) => decFolders.push(f)));\r\n });\r\n\r\n await Promise.all(promises);\r\n decFolders.sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n\r\n const noneFolder = new FolderView();\r\n noneFolder.name = this.i18nService.t('noneFolder');\r\n decFolders.push(noneFolder);\r\n\r\n this.decryptedFolderCache = decFolders;\r\n return this.decryptedFolderCache;\r\n }\r\n\r\n async getAllNested(): Promise>> {\r\n const folders = await this.getAllDecrypted();\r\n const nodes: Array> = [];\r\n folders.forEach((f) => {\r\n const folderCopy = new FolderView();\r\n folderCopy.id = f.id;\r\n folderCopy.revisionDate = f.revisionDate;\r\n ServiceUtils.nestedTraverse(nodes, 0, f.name.split(NestingDelimiter), folderCopy,\r\n null, NestingDelimiter);\r\n });\r\n return nodes;\r\n }\r\n\r\n async getNested(id: string): Promise> {\r\n const folders = await this.getAllNested();\r\n return ServiceUtils.getTreeNodeObject(folders, id) as TreeNode;\r\n }\r\n\r\n async saveWithServer(folder: Folder): Promise {\r\n const request = new FolderRequest(folder);\r\n\r\n let response: FolderResponse;\r\n if (folder.id == null) {\r\n response = await this.apiService.postFolder(request);\r\n folder.id = response.id;\r\n } else {\r\n response = await this.apiService.putFolder(folder.id, request);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const data = new FolderData(response, userId);\r\n await this.upsert(data);\r\n }\r\n\r\n async upsert(folder: FolderData | FolderData[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n let folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null) {\r\n folders = {};\r\n }\r\n\r\n if (folder instanceof FolderData) {\r\n const f = folder as FolderData;\r\n folders[f.id] = f;\r\n } else {\r\n (folder as FolderData[]).forEach((f) => {\r\n folders[f.id] = f;\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async replace(folders: { [id: string]: FolderData; }): Promise {\r\n const userId = await this.userService.getUserId();\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.foldersPrefix + userId);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async delete(id: string | string[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null) {\r\n return;\r\n }\r\n\r\n if (typeof id === 'string') {\r\n if (folders[id] == null) {\r\n return;\r\n }\r\n delete folders[id];\r\n } else {\r\n (id as string[]).forEach((i) => {\r\n delete folders[i];\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n\r\n // Items in a deleted folder are re-assigned to \"No Folder\"\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(Keys.ciphersPrefix + userId);\r\n if (ciphers != null) {\r\n const updates: CipherData[] = [];\r\n for (const cId in ciphers) {\r\n if (ciphers[cId].folderId === id) {\r\n ciphers[cId].folderId = null;\r\n updates.push(ciphers[cId]);\r\n }\r\n }\r\n if (updates.length > 0) {\r\n this.cipherService.upsert(updates);\r\n }\r\n }\r\n }\r\n\r\n async deleteWithServer(id: string): Promise {\r\n await this.apiService.deleteFolder(id);\r\n await this.delete(id);\r\n }\r\n}\r\n","import { FolderResponse } from '../response/folderResponse';\r\n\r\nexport class FolderData {\r\n id: string;\r\n userId: string;\r\n name: string;\r\n revisionDate: string;\r\n\r\n constructor(response: FolderResponse, userId: string) {\r\n this.userId = userId;\r\n this.name = response.name;\r\n this.id = response.id;\r\n this.revisionDate = response.revisionDate;\r\n }\r\n}\r\n","import { I18nService as I18nServiceAbstraction } from '../abstractions/i18n.service';\n\nexport class I18nService implements I18nServiceAbstraction {\n locale: string;\n // First locale is the default (English)\n supportedTranslationLocales: string[] = ['en'];\n translationLocale: string;\n collator: Intl.Collator;\n\n protected inited: boolean;\n protected defaultMessages: any = {};\n protected localeMessages: any = {};\n\n constructor(protected systemLanguage: string, protected localesDirectory: string,\n protected getLocalesJson: (formattedLocale: string) => Promise) {\n this.systemLanguage = systemLanguage.replace('_', '-');\n }\n\n async init(locale?: string) {\n if (this.inited) {\n throw new Error('i18n already initialized.');\n }\n if (this.supportedTranslationLocales == null || this.supportedTranslationLocales.length === 0) {\n throw new Error('supportedTranslationLocales not set.');\n }\n\n this.inited = true;\n this.locale = this.translationLocale = locale != null ? locale : this.systemLanguage;\n\n try {\n this.collator = new Intl.Collator(this.locale, { numeric: true, sensitivity: 'base' });\n } catch {\n this.collator = null;\n }\n\n if (this.supportedTranslationLocales.indexOf(this.translationLocale) === -1) {\n this.translationLocale = this.translationLocale.slice(0, 2);\n\n if (this.supportedTranslationLocales.indexOf(this.translationLocale) === -1) {\n this.translationLocale = this.supportedTranslationLocales[0];\n }\n }\n\n if (this.localesDirectory != null) {\n await this.loadMessages(this.translationLocale, this.localeMessages);\n if (this.translationLocale !== this.supportedTranslationLocales[0]) {\n await this.loadMessages(this.supportedTranslationLocales[0], this.defaultMessages);\n }\n }\n }\n\n t(id: string, p1?: string, p2?: string, p3?: string): string {\n return this.translate(id, p1, p2, p3);\n }\n\n translate(id: string, p1?: string, p2?: string, p3?: string): string {\n let result: string;\n if (this.localeMessages.hasOwnProperty(id) && this.localeMessages[id]) {\n result = this.localeMessages[id];\n } else if (this.defaultMessages.hasOwnProperty(id) && this.defaultMessages[id]) {\n result = this.defaultMessages[id];\n } else {\n result = '';\n }\n\n if (result !== '') {\n if (p1 != null) {\n result = result.split('__$1__').join(p1);\n }\n if (p2 != null) {\n result = result.split('__$2__').join(p2);\n }\n if (p3 != null) {\n result = result.split('__$3__').join(p3);\n }\n }\n\n return result;\n }\n\n private async loadMessages(locale: string, messagesObj: any): Promise {\n const formattedLocale = locale.replace('-', '_');\n const locales = await this.getLocalesJson(formattedLocale);\n for (const prop in locales) {\n if (!locales.hasOwnProperty(prop)) {\n continue;\n }\n messagesObj[prop] = locales[prop].message;\n\n if (locales[prop].placeholders) {\n for (const placeProp in locales[prop].placeholders) {\n if (!locales[prop].placeholders.hasOwnProperty(placeProp) ||\n !locales[prop].placeholders[placeProp].content) {\n continue;\n }\n\n const replaceToken = '\\\\$' + placeProp.toUpperCase() + '\\\\$';\n let replaceContent = locales[prop].placeholders[placeProp].content;\n if (replaceContent === '$1' || replaceContent === '$2' || replaceContent === '$3') {\n replaceContent = '__' + replaceContent + '__';\n }\n messagesObj[prop] = messagesObj[prop].replace(new RegExp(replaceToken, 'g'), replaceContent);\n }\n }\n }\n }\n\n}\n","import { ConstantsService } from './constants.service';\r\n\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CollectionService } from '../abstractions/collection.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\nimport { LockService as LockServiceAbstraction } from '../abstractions/lock.service';\r\nimport { MessagingService } from '../abstractions/messaging.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { SearchService } from '../abstractions/search.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nexport class LockService implements LockServiceAbstraction {\r\n private inited = false;\r\n\r\n constructor(private cipherService: CipherService, private folderService: FolderService,\r\n private collectionService: CollectionService, private cryptoService: CryptoService,\r\n private platformUtilsService: PlatformUtilsService, private storageService: StorageService,\r\n private messagingService: MessagingService, private searchService: SearchService,\r\n private lockedCallback: () => Promise) {\r\n }\r\n\r\n init(checkOnInterval: boolean) {\r\n if (this.inited) {\r\n return;\r\n }\r\n\r\n this.inited = true;\r\n if (checkOnInterval) {\r\n this.checkLock();\r\n setInterval(() => this.checkLock(), 10 * 1000); // check every 10 seconds\r\n }\r\n }\r\n\r\n async checkLock(): Promise {\r\n if (this.platformUtilsService.isViewOpen()) {\r\n // Do not lock\r\n return;\r\n }\r\n\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n // no key so no need to lock\r\n return;\r\n }\r\n\r\n let lockOption = this.platformUtilsService.lockTimeout();\r\n if (lockOption == null) {\r\n lockOption = await this.storageService.get(ConstantsService.lockOptionKey);\r\n }\r\n if (lockOption == null || lockOption < 0) {\r\n return;\r\n }\r\n\r\n const lastActive = await this.storageService.get(ConstantsService.lastActiveKey);\r\n if (lastActive == null) {\r\n return;\r\n }\r\n\r\n const lockOptionSeconds = lockOption * 60;\r\n const diffSeconds = ((new Date()).getTime() - lastActive) / 1000;\r\n if (diffSeconds >= lockOptionSeconds) {\r\n // need to lock now\r\n await this.lock();\r\n }\r\n }\r\n\r\n async lock(): Promise {\r\n await Promise.all([\r\n this.cryptoService.clearKey(),\r\n this.cryptoService.clearOrgKeys(true),\r\n this.cryptoService.clearKeyPair(true),\r\n this.cryptoService.clearEncKey(true),\r\n ]);\r\n\r\n this.folderService.clearCache();\r\n this.cipherService.clearCache();\r\n this.collectionService.clearCache();\r\n this.searchService.clearIndex();\r\n this.messagingService.send('locked');\r\n if (this.lockedCallback != null) {\r\n await this.lockedCallback();\r\n }\r\n }\r\n\r\n async setLockOption(lockOption: number): Promise {\r\n await this.storageService.save(ConstantsService.lockOptionKey, lockOption);\r\n await this.cryptoService.toggleKey();\r\n }\r\n}\r\n","import * as zxcvbn from 'zxcvbn';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport {\r\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\r\n} from '../abstractions/passwordGeneration.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst DefaultOptions = {\r\n length: 14,\r\n ambiguous: false,\r\n number: true,\r\n minNumber: 1,\r\n uppercase: true,\r\n minUppercase: 0,\r\n lowercase: true,\r\n minLowercase: 0,\r\n special: false,\r\n minSpecial: 1,\r\n type: 'password',\r\n numWords: 3,\r\n wordSeparator: '-',\r\n};\r\n\r\nconst Keys = {\r\n options: 'passwordGenerationOptions',\r\n history: 'generatedPasswordHistory',\r\n};\r\n\r\nconst MaxPasswordsInHistory = 100;\r\n\r\nexport class PasswordGenerationService implements PasswordGenerationServiceAbstraction {\r\n private optionsCache: any;\r\n private history: GeneratedPasswordHistory[];\r\n\r\n constructor(private cryptoService: CryptoService, private storageService: StorageService) { }\r\n\r\n async generatePassword(options: any): Promise {\r\n // overload defaults with given options\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.type === 'passphrase') {\r\n return this.generatePassphrase(options);\r\n }\r\n\r\n // sanitize\r\n if (o.uppercase && o.minUppercase <= 0) {\r\n o.minUppercase = 1;\r\n }\r\n if (o.lowercase && o.minLowercase <= 0) {\r\n o.minLowercase = 1;\r\n }\r\n if (o.number && o.minNumber <= 0) {\r\n o.minNumber = 1;\r\n }\r\n if (o.special && o.minSpecial <= 0) {\r\n o.minSpecial = 1;\r\n }\r\n\r\n if (!o.length || o.length < 1) {\r\n o.length = 10;\r\n }\r\n\r\n const minLength: number = o.minUppercase + o.minLowercase + o.minNumber + o.minSpecial;\r\n if (o.length < minLength) {\r\n o.length = minLength;\r\n }\r\n\r\n const positions: string[] = [];\r\n if (o.lowercase && o.minLowercase > 0) {\r\n for (let i = 0; i < o.minLowercase; i++) {\r\n positions.push('l');\r\n }\r\n }\r\n if (o.uppercase && o.minUppercase > 0) {\r\n for (let i = 0; i < o.minUppercase; i++) {\r\n positions.push('u');\r\n }\r\n }\r\n if (o.number && o.minNumber > 0) {\r\n for (let i = 0; i < o.minNumber; i++) {\r\n positions.push('n');\r\n }\r\n }\r\n if (o.special && o.minSpecial > 0) {\r\n for (let i = 0; i < o.minSpecial; i++) {\r\n positions.push('s');\r\n }\r\n }\r\n while (positions.length < o.length) {\r\n positions.push('a');\r\n }\r\n\r\n // shuffle\r\n await this.shuffleArray(positions);\r\n\r\n // build out the char sets\r\n let allCharSet = '';\r\n\r\n let lowercaseCharSet = 'abcdefghijkmnopqrstuvwxyz';\r\n if (o.ambiguous) {\r\n lowercaseCharSet += 'l';\r\n }\r\n if (o.lowercase) {\r\n allCharSet += lowercaseCharSet;\r\n }\r\n\r\n let uppercaseCharSet = 'ABCDEFGHIJKLMNPQRSTUVWXYZ';\r\n if (o.ambiguous) {\r\n uppercaseCharSet += 'O';\r\n }\r\n if (o.uppercase) {\r\n allCharSet += uppercaseCharSet;\r\n }\r\n\r\n let numberCharSet = '23456789';\r\n if (o.ambiguous) {\r\n numberCharSet += '01';\r\n }\r\n if (o.number) {\r\n allCharSet += numberCharSet;\r\n }\r\n\r\n const specialCharSet = '!@#$%^&*';\r\n if (o.special) {\r\n allCharSet += specialCharSet;\r\n }\r\n\r\n let password = '';\r\n for (let i = 0; i < o.length; i++) {\r\n let positionChars: string;\r\n switch (positions[i]) {\r\n case 'l':\r\n positionChars = lowercaseCharSet;\r\n break;\r\n case 'u':\r\n positionChars = uppercaseCharSet;\r\n break;\r\n case 'n':\r\n positionChars = numberCharSet;\r\n break;\r\n case 's':\r\n positionChars = specialCharSet;\r\n break;\r\n case 'a':\r\n positionChars = allCharSet;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n const randomCharIndex = await this.cryptoService.randomNumber(0, positionChars.length - 1);\r\n password += positionChars.charAt(randomCharIndex);\r\n }\r\n\r\n return password;\r\n }\r\n\r\n async generatePassphrase(options: any): Promise {\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.numWords == null || o.numWords <= 2) {\r\n o.numWords = DefaultOptions.numWords;\r\n }\r\n if (o.wordSeparator == null || o.wordSeparator.length === 0 || o.wordSeparator.length > 1) {\r\n o.wordSeparator = ' ';\r\n }\r\n\r\n const listLength = EEFLongWordList.length - 1;\r\n const wordList = new Array(o.numWords);\r\n for (let i = 0; i < o.numWords; i++) {\r\n const wordIndex = await this.cryptoService.randomNumber(0, listLength);\r\n wordList[i] = EEFLongWordList[wordIndex];\r\n }\r\n return wordList.join(o.wordSeparator);\r\n }\r\n\r\n async getOptions() {\r\n if (this.optionsCache == null) {\r\n const options = await this.storageService.get(Keys.options);\r\n if (options == null) {\r\n this.optionsCache = DefaultOptions;\r\n } else {\r\n this.optionsCache = Object.assign({}, DefaultOptions, options);\r\n }\r\n }\r\n\r\n return this.optionsCache;\r\n }\r\n\r\n async saveOptions(options: any) {\r\n await this.storageService.save(Keys.options, options);\r\n this.optionsCache = options;\r\n }\r\n\r\n async getHistory(): Promise {\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return new Array();\r\n }\r\n\r\n if (!this.history) {\r\n const encrypted = await this.storageService.get(Keys.history);\r\n this.history = await this.decryptHistory(encrypted);\r\n }\r\n\r\n return this.history || new Array();\r\n }\r\n\r\n async addHistory(password: string): Promise {\r\n // Cannot add new history if no key is available\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return;\r\n }\r\n\r\n const currentHistory = await this.getHistory();\r\n\r\n // Prevent duplicates\r\n if (this.matchesPrevious(password, currentHistory)) {\r\n return;\r\n }\r\n\r\n currentHistory.unshift(new GeneratedPasswordHistory(password, Date.now()));\r\n\r\n // Remove old items.\r\n if (currentHistory.length > MaxPasswordsInHistory) {\r\n currentHistory.pop();\r\n }\r\n\r\n const newHistory = await this.encryptHistory(currentHistory);\r\n return await this.storageService.save(Keys.history, newHistory);\r\n }\r\n\r\n async clear(): Promise {\r\n this.history = [];\r\n return await this.storageService.remove(Keys.history);\r\n }\r\n\r\n passwordStrength(password: string, userInputs: string[] = null): zxcvbn.ZXCVBNResult {\r\n if (password == null || password.length === 0) {\r\n return null;\r\n }\r\n let globalUserInputs = ['bitwarden', 'bit', 'warden'];\r\n if (userInputs != null && userInputs.length > 0) {\r\n globalUserInputs = globalUserInputs.concat(userInputs);\r\n }\r\n // Use a hash set to get rid of any duplicate user inputs\r\n const finalUserInputs = Array.from(new Set(globalUserInputs));\r\n const result = zxcvbn(password, finalUserInputs);\r\n return result;\r\n }\r\n\r\n private async encryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const encrypted = await this.cryptoService.encrypt(item.password);\r\n return new GeneratedPasswordHistory(encrypted.encryptedString, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private async decryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const decrypted = await this.cryptoService.decryptToUtf8(new CipherString(item.password));\r\n return new GeneratedPasswordHistory(decrypted, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private matchesPrevious(password: string, history: GeneratedPasswordHistory[]): boolean {\r\n if (history == null || history.length === 0) {\r\n return false;\r\n }\r\n\r\n return history[history.length - 1].password === password;\r\n }\r\n\r\n // ref: https://stackoverflow.com/a/12646864/1090359\r\n private async shuffleArray(array: string[]) {\r\n for (let i = array.length - 1; i > 0; i--) {\r\n const j = await this.cryptoService.randomNumber(0, i);\r\n [array[i], array[j]] = [array[j], array[i]];\r\n }\r\n }\r\n}\r\n","import { SettingsService as SettingsServiceAbstraction } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nconst Keys = {\r\n settingsPrefix: 'settings_',\r\n equivalentDomains: 'equivalentDomains',\r\n};\r\n\r\nexport class SettingsService implements SettingsServiceAbstraction {\r\n private settingsCache: any;\r\n\r\n constructor(private userService: UserService, private storageService: StorageService) {\r\n }\r\n\r\n clearCache(): void {\r\n this.settingsCache = null;\r\n }\r\n\r\n getEquivalentDomains(): Promise {\r\n return this.getSettingsKey(Keys.equivalentDomains);\r\n }\r\n\r\n async setEquivalentDomains(equivalentDomains: string[][]): Promise {\r\n await this.setSettingsKey(Keys.equivalentDomains, equivalentDomains);\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.settingsPrefix + userId);\r\n this.settingsCache = null;\r\n }\r\n\r\n // Helpers\r\n\r\n private async getSettings(): Promise {\r\n if (this.settingsCache == null) {\r\n const userId = await this.userService.getUserId();\r\n this.settingsCache = this.storageService.get(Keys.settingsPrefix + userId);\r\n }\r\n return this.settingsCache;\r\n }\r\n\r\n private async getSettingsKey(key: string): Promise {\r\n const settings = await this.getSettings();\r\n if (settings != null && settings[key]) {\r\n return settings[key];\r\n }\r\n return null;\r\n }\r\n\r\n private async setSettingsKey(key: string, value: any): Promise {\r\n const userId = await this.userService.getUserId();\r\n let settings = await this.getSettings();\r\n if (!settings) {\r\n settings = {};\r\n }\r\n\r\n settings[key] = value;\r\n await this.storageService.save(Keys.settingsPrefix + userId, settings);\r\n this.settingsCache = settings;\r\n }\r\n}\r\n","import { StateService as StateServiceAbstraction } from '../abstractions/state.service';\r\n\r\nexport class StateService implements StateServiceAbstraction {\r\n private state: any = {};\r\n\r\n get(key: string): Promise {\r\n if (this.state.hasOwnProperty(key)) {\r\n return Promise.resolve(this.state[key]);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n this.state[key] = obj;\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n delete this.state[key];\r\n return Promise.resolve();\r\n }\r\n\r\n purge(): Promise {\r\n this.state = {};\r\n return Promise.resolve();\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CollectionService } from '../abstractions/collection.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\nimport { MessagingService } from '../abstractions/messaging.service';\r\nimport { SettingsService } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { SyncService as SyncServiceAbstraction } from '../abstractions/sync.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { FolderData } from '../models/data/folderData';\r\nimport { OrganizationData } from '../models/data/organizationData';\r\n\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\n\r\nconst Keys = {\r\n lastSyncPrefix: 'lastSync_',\r\n};\r\n\r\nexport class SyncService implements SyncServiceAbstraction {\r\n syncInProgress: boolean = false;\r\n\r\n constructor(private userService: UserService, private apiService: ApiService,\r\n private settingsService: SettingsService, private folderService: FolderService,\r\n private cipherService: CipherService, private cryptoService: CryptoService,\r\n private collectionService: CollectionService, private storageService: StorageService,\r\n private messagingService: MessagingService, private logoutCallback: (expired: boolean) => Promise) {\r\n }\r\n\r\n async getLastSync(): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return null;\r\n }\r\n\r\n const lastSync = await this.storageService.get(Keys.lastSyncPrefix + userId);\r\n if (lastSync) {\r\n return new Date(lastSync);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n async setLastSync(date: Date): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.lastSyncPrefix + userId, date.toJSON());\r\n }\r\n\r\n async fullSync(forceSync: boolean): Promise {\r\n this.syncStarted();\r\n const isAuthenticated = await this.userService.isAuthenticated();\r\n if (!isAuthenticated) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const now = new Date();\r\n const needsSyncResult = await this.needsSyncing(forceSync);\r\n const needsSync = needsSyncResult[0];\r\n const skipped = needsSyncResult[1];\r\n\r\n if (skipped) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n if (!needsSync) {\r\n await this.setLastSync(now);\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n try {\r\n const response = await this.apiService.getSync();\r\n\r\n await this.syncProfile(response.profile);\r\n await this.syncFolders(userId, response.folders);\r\n await this.syncCollections(response.collections);\r\n await this.syncCiphers(userId, response.ciphers);\r\n await this.syncSettings(userId, response.domains);\r\n\r\n await this.setLastSync(now);\r\n return this.syncCompleted(true);\r\n } catch (e) {\r\n return this.syncCompleted(false);\r\n }\r\n }\r\n\r\n async syncUpsertFolder(notification: SyncFolderNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n const localFolder = await this.folderService.get(notification.id);\r\n if ((!isEdit && localFolder == null) ||\r\n (isEdit && localFolder != null && localFolder.revisionDate < notification.revisionDate)) {\r\n const remoteFolder = await this.apiService.getFolder(notification.id);\r\n if (remoteFolder != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.folderService.upsert(new FolderData(remoteFolder, userId));\r\n this.messagingService.send('syncedUpsertedFolder', { folderId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch { }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteFolder(notification: SyncFolderNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.folderService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedFolder', { folderId: notification.id });\r\n this.syncCompleted(true);\r\n return true;\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncUpsertCipher(notification: SyncCipherNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n let shouldUpdate = true;\r\n const localCipher = await this.cipherService.get(notification.id);\r\n if (localCipher != null && localCipher.revisionDate >= notification.revisionDate) {\r\n shouldUpdate = false;\r\n }\r\n\r\n let checkCollections = false;\r\n if (shouldUpdate) {\r\n if (isEdit) {\r\n shouldUpdate = localCipher != null;\r\n checkCollections = true;\r\n } else {\r\n if (notification.collectionIds == null || notification.organizationId == null) {\r\n shouldUpdate = localCipher == null;\r\n } else {\r\n shouldUpdate = false;\r\n checkCollections = true;\r\n }\r\n }\r\n }\r\n\r\n if (!shouldUpdate && checkCollections && notification.organizationId != null &&\r\n notification.collectionIds != null && notification.collectionIds.length > 0) {\r\n const collections = await this.collectionService.getAll();\r\n if (collections != null) {\r\n for (let i = 0; i < collections.length; i++) {\r\n if (notification.collectionIds.indexOf(collections[i].id)) {\r\n shouldUpdate = true;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (shouldUpdate) {\r\n const remoteCipher = await this.apiService.getCipher(notification.id);\r\n if (remoteCipher != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.cipherService.upsert(new CipherData(remoteCipher, userId));\r\n this.messagingService.send('syncedUpsertedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch (e) {\r\n if (e != null && e.statusCode === 404 && isEdit) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteCipher(notification: SyncCipherNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n // Helpers\r\n\r\n private syncStarted() {\r\n this.syncInProgress = true;\r\n this.messagingService.send('syncStarted');\r\n }\r\n\r\n private syncCompleted(successfully: boolean): boolean {\r\n this.syncInProgress = false;\r\n this.messagingService.send('syncCompleted', { successfully: successfully });\r\n return successfully;\r\n }\r\n\r\n private async needsSyncing(forceSync: boolean) {\r\n if (forceSync) {\r\n return [true, false];\r\n }\r\n\r\n const lastSync = await this.getLastSync();\r\n if (lastSync == null || lastSync.getTime() === 0) {\r\n return [true, false];\r\n }\r\n\r\n try {\r\n const response = await this.apiService.getAccountRevisionDate();\r\n if (new Date(response) <= lastSync) {\r\n return [false, false];\r\n }\r\n return [true, false];\r\n } catch (e) {\r\n return [false, true];\r\n }\r\n }\r\n\r\n private async syncProfile(response: ProfileResponse) {\r\n const stamp = await this.userService.getSecurityStamp();\r\n if (stamp != null && stamp !== response.securityStamp) {\r\n if (this.logoutCallback != null) {\r\n await this.logoutCallback(true);\r\n }\r\n\r\n throw new Error('Stamp has changed');\r\n }\r\n\r\n await this.cryptoService.setEncKey(response.key);\r\n await this.cryptoService.setEncPrivateKey(response.privateKey);\r\n await this.cryptoService.setOrgKeys(response.organizations);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n\r\n const organizations: { [id: string]: OrganizationData; } = {};\r\n response.organizations.forEach((o) => {\r\n organizations[o.id] = new OrganizationData(o);\r\n });\r\n return await this.userService.replaceOrganizations(organizations);\r\n }\r\n\r\n private async syncFolders(userId: string, response: FolderResponse[]) {\r\n const folders: { [id: string]: FolderData; } = {};\r\n response.forEach((f) => {\r\n folders[f.id] = new FolderData(f, userId);\r\n });\r\n return await this.folderService.replace(folders);\r\n }\r\n\r\n private async syncCollections(response: CollectionDetailsResponse[]) {\r\n const collections: { [id: string]: CollectionData; } = {};\r\n response.forEach((c) => {\r\n collections[c.id] = new CollectionData(c);\r\n });\r\n return await this.collectionService.replace(collections);\r\n }\r\n\r\n private async syncCiphers(userId: string, response: CipherResponse[]) {\r\n const ciphers: { [id: string]: CipherData; } = {};\r\n response.forEach((c) => {\r\n ciphers[c.id] = new CipherData(c, userId);\r\n });\r\n return await this.cipherService.replace(ciphers);\r\n }\r\n\r\n private async syncSettings(userId: string, response: DomainsResponse) {\r\n let eqDomains: string[][] = [];\r\n if (response != null && response.equivalentDomains != null) {\r\n eqDomains = eqDomains.concat(response.equivalentDomains);\r\n }\r\n\r\n if (response != null && response.globalEquivalentDomains != null) {\r\n response.globalEquivalentDomains.forEach((global) => {\r\n if (global.domains.length > 0) {\r\n eqDomains.push(global.domains);\r\n }\r\n });\r\n }\r\n\r\n return this.settingsService.setEquivalentDomains(eqDomains);\r\n }\r\n}\r\n","import { ConstantsService } from './constants.service';\n\nimport { StorageService } from '../abstractions/storage.service';\nimport { TokenService as TokenServiceAbstraction } from '../abstractions/token.service';\n\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n accessToken: 'accessToken',\n refreshToken: 'refreshToken',\n twoFactorTokenPrefix: 'twoFactorToken_',\n};\n\nexport class TokenService implements TokenServiceAbstraction {\n token: string;\n decodedToken: any;\n refreshToken: string;\n\n constructor(private storageService: StorageService) {\n }\n\n setTokens(accessToken: string, refreshToken: string): Promise {\n return Promise.all([\n this.setToken(accessToken),\n this.setRefreshToken(refreshToken),\n ]);\n }\n\n setToken(token: string): Promise {\n this.token = token;\n this.decodedToken = null;\n return this.storageService.save(Keys.accessToken, token);\n }\n\n async getToken(): Promise {\n if (this.token != null) {\n return this.token;\n }\n\n this.token = await this.storageService.get(Keys.accessToken);\n return this.token;\n }\n\n setRefreshToken(refreshToken: string): Promise {\n this.refreshToken = refreshToken;\n return this.storageService.save(Keys.refreshToken, refreshToken);\n }\n\n async getRefreshToken(): Promise {\n if (this.refreshToken != null) {\n return this.refreshToken;\n }\n\n this.refreshToken = await this.storageService.get(Keys.refreshToken);\n return this.refreshToken;\n }\n\n setTwoFactorToken(token: string, email: string): Promise {\n return this.storageService.save(Keys.twoFactorTokenPrefix + email, token);\n }\n\n getTwoFactorToken(email: string): Promise {\n return this.storageService.get(Keys.twoFactorTokenPrefix + email);\n }\n\n clearTwoFactorToken(email: string): Promise {\n return this.storageService.remove(Keys.twoFactorTokenPrefix + email);\n }\n\n clearToken(): Promise {\n this.token = null;\n this.decodedToken = null;\n this.refreshToken = null;\n\n return Promise.all([\n this.storageService.remove(Keys.accessToken),\n this.storageService.remove(Keys.refreshToken),\n ]);\n }\n\n // jwthelper methods\n // ref https://github.com/auth0/angular-jwt/blob/master/src/angularJwt/services/jwt.js\n\n decodeToken(): any {\n if (this.decodedToken) {\n return this.decodedToken;\n }\n\n if (this.token == null) {\n throw new Error('Token not found.');\n }\n\n const parts = this.token.split('.');\n if (parts.length !== 3) {\n throw new Error('JWT must have 3 parts');\n }\n\n const decoded = Utils.fromUrlB64ToUtf8(parts[1]);\n if (decoded == null) {\n throw new Error('Cannot decode the token');\n }\n\n this.decodedToken = JSON.parse(decoded);\n return this.decodedToken;\n }\n\n getTokenExpirationDate(): Date {\n const decoded = this.decodeToken();\n if (typeof decoded.exp === 'undefined') {\n return null;\n }\n\n const d = new Date(0); // The 0 here is the key, which sets the date to the epoch\n d.setUTCSeconds(decoded.exp);\n return d;\n }\n\n tokenSecondsRemaining(offsetSeconds: number = 0): number {\n const d = this.getTokenExpirationDate();\n if (d == null) {\n return 0;\n }\n\n const msRemaining = d.valueOf() - (new Date().valueOf() + (offsetSeconds * 1000));\n return Math.round(msRemaining / 1000);\n }\n\n tokenNeedsRefresh(minutes: number = 5): boolean {\n const sRemaining = this.tokenSecondsRemaining();\n return sRemaining < (60 * minutes);\n }\n\n getUserId(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.sub === 'undefined') {\n throw new Error('No user id found');\n }\n\n return decoded.sub as string;\n }\n\n getEmail(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.email === 'undefined') {\n throw new Error('No email found');\n }\n\n return decoded.email as string;\n }\n\n getEmailVerified(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.email_verified === 'undefined') {\n throw new Error('No email verification found');\n }\n\n return decoded.email_verified as boolean;\n }\n\n getName(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.name === 'undefined') {\n return null;\n }\n\n return decoded.name as string;\n }\n\n getPremium(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.premium === 'undefined') {\n return false;\n }\n\n return decoded.premium as boolean;\n }\n\n getIssuer(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.iss === 'undefined') {\n throw new Error('No issuer found');\n }\n\n return decoded.iss as string;\n }\n}\n","import { ConstantsService } from './constants.service';\n\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { TotpService as TotpServiceAbstraction } from '../abstractions/totp.service';\n\nimport { Utils } from '../misc/utils';\n\nconst B32Chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';\nconst SteamChars = '23456789BCDFGHJKMNPQRTVWXY';\n\nexport class TotpService implements TotpServiceAbstraction {\n constructor(private storageService: StorageService, private cryptoFunctionService: CryptoFunctionService) { }\n\n async getCode(key: string): Promise {\n if (key == null) {\n return null;\n }\n let period = 30;\n let alg: 'sha1' | 'sha256' | 'sha512' = 'sha1';\n let digits = 6;\n let keyB32 = key;\n const isOtpAuth = key.toLowerCase().indexOf('otpauth://') === 0;\n const isSteamAuth = !isOtpAuth && key.toLowerCase().indexOf('steam://') === 0;\n if (isOtpAuth) {\n const params = Utils.getQueryParams(key);\n if (params.has('digits') && params.get('digits') != null) {\n try {\n const digitParams = parseInt(params.get('digits').trim(), null);\n if (digitParams > 10) {\n digits = 10;\n } else if (digitParams > 0) {\n digits = digitParams;\n }\n } catch { }\n }\n if (params.has('period') && params.get('period') != null) {\n try {\n const periodParam = parseInt(params.get('period').trim(), null);\n if (periodParam > 0) {\n period = periodParam;\n }\n } catch { }\n }\n if (params.has('secret') && params.get('secret') != null) {\n keyB32 = params.get('secret');\n }\n if (params.has('algorithm') && params.get('algorithm') != null) {\n const algParam = params.get('algorithm').toLowerCase();\n if (algParam === 'sha1' || algParam === 'sha256' || algParam === 'sha512') {\n alg = algParam;\n }\n }\n } else if (isSteamAuth) {\n keyB32 = key.substr('steam://'.length);\n digits = 5;\n }\n\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const timeHex = this.leftPad(this.decToHex(Math.floor(epoch / period)), 16, '0');\n const timeBytes = Utils.fromHexToArray(timeHex);\n const keyBytes = this.b32ToBytes(keyB32);\n\n if (!keyBytes.length || !timeBytes.length) {\n return null;\n }\n\n const hash = await this.sign(keyBytes, timeBytes, alg);\n if (hash.length === 0) {\n return null;\n }\n\n /* tslint:disable */\n const offset = (hash[hash.length - 1] & 0xf);\n const binary = ((hash[offset] & 0x7f) << 24) | ((hash[offset + 1] & 0xff) << 16) |\n ((hash[offset + 2] & 0xff) << 8) | (hash[offset + 3] & 0xff);\n /* tslint:enable */\n\n let otp = '';\n if (isSteamAuth) {\n // tslint:disable-next-line\n let fullCode = binary & 0x7fffffff;\n for (let i = 0; i < digits; i++) {\n otp += SteamChars[fullCode % SteamChars.length];\n fullCode = Math.trunc(fullCode / SteamChars.length);\n }\n } else {\n otp = (binary % Math.pow(10, digits)).toString();\n otp = this.leftPad(otp, digits, '0');\n }\n\n return otp;\n }\n\n getTimeInterval(key: string): number {\n let period = 30;\n if (key != null && key.toLowerCase().indexOf('otpauth://') === 0) {\n const params = Utils.getQueryParams(key);\n if (params.has('period') && params.get('period') != null) {\n try {\n period = parseInt(params.get('period').trim(), null);\n } catch { }\n }\n }\n return period;\n }\n\n async isAutoCopyEnabled(): Promise {\n return !(await this.storageService.get(ConstantsService.disableAutoTotpCopyKey));\n }\n\n // Helpers\n\n private leftPad(s: string, l: number, p: string): string {\n if (l + 1 >= s.length) {\n s = Array(l + 1 - s.length).join(p) + s;\n }\n return s;\n }\n\n private decToHex(d: number): string {\n return (d < 15.5 ? '0' : '') + Math.round(d).toString(16);\n }\n\n private b32ToHex(s: string): string {\n s = s.toUpperCase();\n let cleanedInput = '';\n\n for (let i = 0; i < s.length; i++) {\n if (B32Chars.indexOf(s[i]) < 0) {\n continue;\n }\n\n cleanedInput += s[i];\n }\n s = cleanedInput;\n\n let bits = '';\n let hex = '';\n for (let i = 0; i < s.length; i++) {\n const byteIndex = B32Chars.indexOf(s.charAt(i));\n if (byteIndex < 0) {\n continue;\n }\n bits += this.leftPad(byteIndex.toString(2), 5, '0');\n }\n for (let i = 0; i + 4 <= bits.length; i += 4) {\n const chunk = bits.substr(i, 4);\n hex = hex + parseInt(chunk, 2).toString(16);\n }\n return hex;\n }\n\n private b32ToBytes(s: string): Uint8Array {\n return Utils.fromHexToArray(this.b32ToHex(s));\n }\n\n private async sign(keyBytes: Uint8Array, timeBytes: Uint8Array, alg: 'sha1' | 'sha256' | 'sha512') {\n const signature = await this.cryptoFunctionService.hmac(timeBytes.buffer, keyBytes.buffer, alg);\n return new Uint8Array(signature);\n }\n}\n","import { StorageService } from '../abstractions/storage.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService as UserServiceAbstraction } from '../abstractions/user.service';\n\nimport { OrganizationData } from '../models/data/organizationData';\nimport { Organization } from '../models/domain/organization';\n\nimport { KdfType } from '../enums/kdfType';\n\nconst Keys = {\n userId: 'userId',\n userEmail: 'userEmail',\n stamp: 'securityStamp',\n kdf: 'kdf',\n kdfIterations: 'kdfIterations',\n organizationsPrefix: 'organizations_',\n};\n\nexport class UserService implements UserServiceAbstraction {\n private userId: string;\n private email: string;\n private stamp: string;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private tokenService: TokenService, private storageService: StorageService) { }\n\n setInformation(userId: string, email: string, kdf: KdfType, kdfIterations: number): Promise {\n this.email = email;\n this.userId = userId;\n this.kdf = kdf;\n this.kdfIterations = kdfIterations;\n\n return Promise.all([\n this.storageService.save(Keys.userEmail, email),\n this.storageService.save(Keys.userId, userId),\n this.storageService.save(Keys.kdf, kdf),\n this.storageService.save(Keys.kdfIterations, kdfIterations),\n ]);\n }\n\n setSecurityStamp(stamp: string): Promise {\n this.stamp = stamp;\n return this.storageService.save(Keys.stamp, stamp);\n }\n\n async getUserId(): Promise {\n if (this.userId != null) {\n return this.userId;\n }\n\n this.userId = await this.storageService.get(Keys.userId);\n return this.userId;\n }\n\n async getEmail(): Promise {\n if (this.email != null) {\n return this.email;\n }\n\n this.email = await this.storageService.get(Keys.userEmail);\n return this.email;\n }\n\n async getSecurityStamp(): Promise {\n if (this.stamp != null) {\n return this.stamp;\n }\n\n this.stamp = await this.storageService.get(Keys.stamp);\n return this.stamp;\n }\n\n async getKdf(): Promise {\n if (this.kdf != null) {\n return this.kdf;\n }\n\n this.kdf = await this.storageService.get(Keys.kdf);\n return this.kdf;\n }\n\n async getKdfIterations(): Promise {\n if (this.kdfIterations != null) {\n return this.kdfIterations;\n }\n\n this.kdfIterations = await this.storageService.get(Keys.kdfIterations);\n return this.kdfIterations;\n }\n\n async clear(): Promise {\n const userId = await this.getUserId();\n\n await Promise.all([\n this.storageService.remove(Keys.userId),\n this.storageService.remove(Keys.userEmail),\n this.storageService.remove(Keys.stamp),\n this.storageService.remove(Keys.kdf),\n this.storageService.remove(Keys.kdfIterations),\n this.clearOrganizations(userId),\n ]);\n\n this.userId = this.email = this.stamp = null;\n this.kdf = null;\n this.kdfIterations = null;\n }\n\n async isAuthenticated(): Promise {\n const token = await this.tokenService.getToken();\n if (token == null) {\n return false;\n }\n\n const userId = await this.getUserId();\n return userId != null;\n }\n\n async canAccessPremium(): Promise {\n const tokenPremium = await this.tokenService.getPremium();\n if (tokenPremium) {\n return true;\n }\n\n const orgs = await this.getAllOrganizations();\n for (let i = 0; i < orgs.length; i++) {\n if (orgs[i].usersGetPremium && orgs[i].enabled) {\n return true;\n }\n }\n return false;\n }\n\n async getOrganization(id: string): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n if (organizations == null || !organizations.hasOwnProperty(id)) {\n return null;\n }\n\n return new Organization(organizations[id]);\n }\n\n async getAllOrganizations(): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n const response: Organization[] = [];\n for (const id in organizations) {\n if (organizations.hasOwnProperty(id)) {\n response.push(new Organization(organizations[id]));\n }\n }\n return response;\n }\n\n async replaceOrganizations(organizations: { [id: string]: OrganizationData; }): Promise {\n const userId = await this.getUserId();\n await this.storageService.save(Keys.organizationsPrefix + userId, organizations);\n }\n\n async clearOrganizations(userId: string): Promise {\n await this.storageService.remove(Keys.organizationsPrefix + userId);\n }\n}\n","import { Cipher } from './cipher';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nexport class CipherWithIds extends Cipher {\r\n id: string;\r\n collectionIds: string[];\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.id = o.id;\r\n super.build(o);\r\n this.collectionIds = o.collectionIds;\r\n }\r\n}\r\n","import { Collection } from './collection';\r\n\r\nimport { CollectionView } from '../view/collectionView';\r\n\r\nexport class CollectionWithId extends Collection {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","import { Folder } from './folder';\r\n\r\nimport { FolderView } from '../view/folderView';\r\n\r\nexport class FolderWithId extends Folder {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","export enum NotificationType {\n SyncCipherUpdate = 0,\n SyncCipherCreate = 1,\n SyncLoginDelete = 2,\n SyncFolderDelete = 3,\n SyncCiphers = 4,\n\n SyncVault = 5,\n SyncOrgKeys = 6,\n SyncFolderCreate = 7,\n SyncFolderUpdate = 8,\n SyncCipherDelete = 9,\n SyncSettings = 10,\n\n LogOut = 11,\n}\n","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { CryptoService } from '../../abstractions/crypto.service';\nimport { MessagingService } from '../../abstractions/messaging.service';\nimport { UserService } from '../../abstractions/user.service';\n\n@Injectable()\nexport class AuthGuardService implements CanActivate {\n constructor(private cryptoService: CryptoService, private userService: UserService, private router: Router,\n private messagingService: MessagingService) { }\n\n async canActivate() {\n const isAuthed = await this.userService.isAuthenticated();\n if (!isAuthed) {\n this.messagingService.send('logout');\n return false;\n }\n\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n this.router.navigate(['lock']);\n return false;\n }\n\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Injectable()\nexport class OrganizationGuardService implements CanActivate {\n constructor(private userService: UserService, private router: Router,\n private toasterService: ToasterService, private i18nService: I18nService) { }\n\n async canActivate(route: ActivatedRouteSnapshot) {\n const org = await this.userService.getOrganization(route.params.organizationId);\n if (org == null) {\n this.router.navigate(['/']);\n return false;\n }\n if (!org.isOwner && !org.enabled) {\n this.toasterService.popAsync('error', null, this.i18nService.t('organizationIsDisabled'));\n this.router.navigate(['/']);\n return false;\n }\n\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport {\r\n ActivatedRouteSnapshot,\r\n CanActivate,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\r\n\r\n@Injectable()\r\nexport class OrganizationTypeGuardService implements CanActivate {\r\n constructor(private userService: UserService, private router: Router) { }\r\n\r\n async canActivate(route: ActivatedRouteSnapshot) {\r\n const org = await this.userService.getOrganization(route.parent.params.organizationId);\r\n const allowedTypes = route.data == null ? null : route.data.allowedTypes as OrganizationUserType[];\r\n if (allowedTypes == null || allowedTypes.indexOf(org.type) === -1) {\r\n this.router.navigate(['/organizations', org.id]);\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n CanActivate,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\n@Injectable()\r\nexport class UnauthGuardService implements CanActivate {\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private router: Router) { }\r\n\r\n async canActivate() {\r\n const isAuthed = await this.userService.isAuthenticated();\r\n if (isAuthed) {\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n this.router.navigate(['lock']);\r\n } else {\r\n this.router.navigate(['vault']);\r\n }\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport 'bootstrap';\nimport 'jquery';\nimport 'popper.js';\n\n// tslint:disable-next-line\nrequire('../scss/styles.scss');\n\nimport { AppModule } from './app.module';\n\nif (process.env.ENV === 'production') {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule, { preserveWhitespaces: true });\n","import 'core-js';\n\nimport { ToasterModule } from 'angular2-toaster';\nimport { Angulartics2Module } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport { AppRoutingModule } from './app-routing.module';\n\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { ServicesModule } from './services/services.module';\n\nimport { AppComponent } from './app.component';\nimport { ModalComponent } from './modal.component';\n\nimport { AvatarComponent } from './components/avatar.component';\nimport { CalloutComponent } from './components/callout.component';\nimport { PasswordStrengthComponent } from './components/password-strength.component';\n\nimport { FooterComponent } from './layouts/footer.component';\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { NavbarComponent } from './layouts/navbar.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorOptionsComponent } from './accounts/two-factor-options.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport {\n CollectionAddEditComponent as OrgCollectionAddEditComponent,\n} from './organizations/manage/collection-add-edit.component';\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EntityEventsComponent as OrgEntityEventsComponent } from './organizations/manage/entity-events.component';\nimport { EntityUsersComponent as OrgEntityUsersComponent } from './organizations/manage/entity-users.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupAddEditComponent as OrgGroupAddEditComponent } from './organizations/manage/group-add-edit.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\nimport { UserAddEditComponent as OrgUserAddEditComponent } from './organizations/manage/user-add-edit.component';\nimport { UserConfirmComponent as OrgUserConfirmComponent } from './organizations/manage/user-confirm.component';\nimport { UserGroupsComponent as OrgUserGroupsComponent } from './organizations/manage/user-groups.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { AdjustSeatsComponent } from './organizations/settings/adjust-seats.component';\nimport { DeleteOrganizationComponent } from './organizations/settings/delete-organization.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { AddEditComponent as OrgAddEditComponent } from './organizations/vault/add-edit.component';\nimport { AttachmentsComponent as OrgAttachmentsComponent } from './organizations/vault/attachments.component';\nimport { CiphersComponent as OrgCiphersComponent } from './organizations/vault/ciphers.component';\nimport { CollectionsComponent as OrgCollectionsComponent } from './organizations/vault/collections.component';\nimport { GroupingsComponent as OrgGroupingsComponent } from './organizations/vault/groupings.component';\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { AdjustPaymentComponent } from './settings/adjust-payment.component';\nimport { AdjustStorageComponent } from './settings/adjust-storage.component';\nimport { ChangeEmailComponent } from './settings/change-email.component';\nimport { ChangeKdfComponent } from './settings/change-kdf.component';\nimport { ChangePasswordComponent } from './settings/change-password.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DeauthorizeSessionsComponent } from './settings/deauthorize-sessions.component';\nimport { DeleteAccountComponent } from './settings/delete-account.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PaymentComponent } from './settings/payment.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { ProfileComponent } from './settings/profile.component';\nimport { PurgeVaultComponent } from './settings/purge-vault.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorAuthenticatorComponent } from './settings/two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './settings/two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './settings/two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './settings/two-factor-recovery.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { TwoFactorU2fComponent } from './settings/two-factor-u2f.component';\nimport { TwoFactorVerifyComponent } from './settings/two-factor-verify.component';\nimport { TwoFactorYubiKeyComponent } from './settings/two-factor-yubikey.component';\nimport { UpdateKeyComponent } from './settings/update-key.component';\nimport { UpdateLicenseComponent } from './settings/update-license.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\nimport { VerifyEmailComponent } from './settings/verify-email.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorHistoryComponent } from './tools/password-generator-history.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { AddEditComponent } from './vault/add-edit.component';\nimport { AttachmentsComponent } from './vault/attachments.component';\nimport { BulkDeleteComponent } from './vault/bulk-delete.component';\nimport { BulkMoveComponent } from './vault/bulk-move.component';\nimport { BulkShareComponent } from './vault/bulk-share.component';\nimport { CiphersComponent } from './vault/ciphers.component';\nimport { CollectionsComponent } from './vault/collections.component';\nimport { FolderAddEditComponent } from './vault/folder-add-edit.component';\nimport { GroupingsComponent } from './vault/groupings.component';\nimport { ShareComponent } from './vault/share.component';\nimport { VaultComponent } from './vault/vault.component';\n\nimport { IconComponent } from 'jslib/angular/components/icon.component';\n\nimport { ApiActionDirective } from 'jslib/angular/directives/api-action.directive';\nimport { AutofocusDirective } from 'jslib/angular/directives/autofocus.directive';\nimport { BlurClickDirective } from 'jslib/angular/directives/blur-click.directive';\nimport { BoxRowDirective } from 'jslib/angular/directives/box-row.directive';\nimport { FallbackSrcDirective } from 'jslib/angular/directives/fallback-src.directive';\nimport { InputVerbatimDirective } from 'jslib/angular/directives/input-verbatim.directive';\nimport { StopClickDirective } from 'jslib/angular/directives/stop-click.directive';\nimport { StopPropDirective } from 'jslib/angular/directives/stop-prop.directive';\nimport { TrueFalseValueDirective } from 'jslib/angular/directives/true-false-value.directive';\n\nimport { ColorPasswordPipe } from 'jslib/angular/pipes/color-password.pipe';\nimport { I18nPipe } from 'jslib/angular/pipes/i18n.pipe';\nimport { SearchCiphersPipe } from 'jslib/angular/pipes/search-ciphers.pipe';\nimport { SearchPipe } from 'jslib/angular/pipes/search.pipe';\n\nimport { registerLocaleData } from '@angular/common';\nimport localeCs from '@angular/common/locales/cs';\nimport localeDa from '@angular/common/locales/da';\nimport localeDe from '@angular/common/locales/de';\nimport localeEs from '@angular/common/locales/es';\nimport localeEt from '@angular/common/locales/et';\nimport localeFr from '@angular/common/locales/fr';\nimport localeIt from '@angular/common/locales/it';\nimport localeJa from '@angular/common/locales/ja';\nimport localeNb from '@angular/common/locales/nb';\nimport localeNl from '@angular/common/locales/nl';\nimport localePl from '@angular/common/locales/pl';\nimport localePtBr from '@angular/common/locales/pt';\nimport localePtPt from '@angular/common/locales/pt-PT';\nimport localeRu from '@angular/common/locales/ru';\nimport localeSk from '@angular/common/locales/sk';\nimport localeSv from '@angular/common/locales/sv';\nimport localeUk from '@angular/common/locales/uk';\nimport localeZhCn from '@angular/common/locales/zh-Hans';\nimport localeZhTw from '@angular/common/locales/zh-Hant';\n\nregisterLocaleData(localeCs, 'cs');\nregisterLocaleData(localeDa, 'da');\nregisterLocaleData(localeDe, 'de');\nregisterLocaleData(localeEs, 'es');\nregisterLocaleData(localeEt, 'et');\nregisterLocaleData(localeFr, 'fr');\nregisterLocaleData(localeIt, 'it');\nregisterLocaleData(localeJa, 'ja');\nregisterLocaleData(localeNb, 'nb');\nregisterLocaleData(localeNl, 'nl');\nregisterLocaleData(localePl, 'pl');\nregisterLocaleData(localePtBr, 'pt-BR');\nregisterLocaleData(localePtPt, 'pt-PT');\nregisterLocaleData(localeRu, 'ru');\nregisterLocaleData(localeSk, 'sk');\nregisterLocaleData(localeSv, 'sv');\nregisterLocaleData(localeUk, 'uk');\nregisterLocaleData(localeZhCn, 'zh-CN');\nregisterLocaleData(localeZhTw, 'zh-TW');\n\n@NgModule({\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n AppRoutingModule,\n ServicesModule,\n Angulartics2Module.forRoot([Angulartics2GoogleAnalytics], {\n pageTracking: {\n clearQueryParams: true,\n },\n }),\n ToasterModule.forRoot(),\n ],\n declarations: [\n AcceptOrganizationComponent,\n AccountComponent,\n AddEditComponent,\n AdjustPaymentComponent,\n AdjustSeatsComponent,\n AdjustStorageComponent,\n ApiActionDirective,\n AppComponent,\n AttachmentsComponent,\n AutofocusDirective,\n AvatarComponent,\n BlurClickDirective,\n BoxRowDirective,\n BreachReportComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CalloutComponent,\n ChangeEmailComponent,\n ChangeKdfComponent,\n ChangePasswordComponent,\n CiphersComponent,\n CollectionsComponent,\n ColorPasswordPipe,\n CreateOrganizationComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n DomainRulesComponent,\n ExportComponent,\n ExposedPasswordsReportComponent,\n FallbackSrcDirective,\n FolderAddEditComponent,\n FooterComponent,\n FrontendLayoutComponent,\n GroupingsComponent,\n HintComponent,\n I18nPipe,\n IconComponent,\n ImportComponent,\n InactiveTwoFactorReportComponent,\n InputVerbatimDirective,\n LockComponent,\n LoginComponent,\n ModalComponent,\n NavbarComponent,\n OptionsComponent,\n OrgAccountComponent,\n OrgAddEditComponent,\n OrganizationBillingComponent,\n OrgAttachmentsComponent,\n OrgCiphersComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgEventsComponent,\n OrgExportComponent,\n OrgExposedPasswordsReportComponent,\n OrgImportComponent,\n OrgInactiveTwoFactorReportComponent,\n OrgGroupAddEditComponent,\n OrgGroupingsComponent,\n OrgGroupsComponent,\n OrgManageCollectionsComponent,\n OrgManageComponent,\n OrgPeopleComponent,\n OrgReusedPasswordsReportComponent,\n OrgSettingComponent,\n OrgToolsComponent,\n OrgTwoFactorSetupComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n OrganizationsComponent,\n OrganizationLayoutComponent,\n OrgUnsecuredWebsitesReportComponent,\n OrgVaultComponent,\n OrgWeakPasswordsReportComponent,\n PasswordGeneratorComponent,\n PasswordGeneratorHistoryComponent,\n PasswordStrengthComponent,\n PaymentComponent,\n PremiumComponent,\n ProfileComponent,\n PurgeVaultComponent,\n RecoverDeleteComponent,\n RecoverTwoFactorComponent,\n RegisterComponent,\n ReusedPasswordsReportComponent,\n SearchCiphersPipe,\n SearchPipe,\n SettingsComponent,\n ShareComponent,\n StopClickDirective,\n StopPropDirective,\n ToolsComponent,\n TrueFalseValueDirective,\n TwoFactorAuthenticatorComponent,\n TwoFactorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorSetupComponent,\n TwoFactorU2fComponent,\n TwoFactorVerifyComponent,\n TwoFactorYubiKeyComponent,\n UnsecuredWebsitesReportComponent,\n UpdateKeyComponent,\n UpdateLicenseComponent,\n UserBillingComponent,\n UserLayoutComponent,\n VaultComponent,\n VerifyEmailComponent,\n VerifyEmailTokenComponent,\n VerifyRecoverDeleteComponent,\n WeakPasswordsReportComponent,\n ],\n entryComponents: [\n AddEditComponent,\n AttachmentsComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CollectionsComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n FolderAddEditComponent,\n ModalComponent,\n OrgAddEditComponent,\n OrgAttachmentsComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgGroupAddEditComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n PasswordGeneratorHistoryComponent,\n PurgeVaultComponent,\n ShareComponent,\n TwoFactorAuthenticatorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorU2fComponent,\n TwoFactorYubiKeyComponent,\n UpdateKeyComponent,\n ],\n providers: [],\n bootstrap: [AppComponent],\n})\nexport class AppModule { }\n","\n
\n © 2018, 8bit Solutions LLC\n
{{'versionNumber' | i18n : version}}\n
\n","
\n
\n
\n \n

{{'loginOrCreateNewAccount' | i18n}}

\n
\n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n {{'getMasterPasswordHint' | i18n}}\n \n
\n
\n \n \n
\n
\n
\n \n \n {{'createAccount' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","import {\r\n Input,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AuthResult } from '../../models/domain/authResult';\r\n\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { StorageService } from '../../abstractions/storage.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nconst Keys = {\r\n rememberedEmail: 'rememberedEmail',\r\n rememberEmail: 'rememberEmail',\r\n};\r\n\r\nexport class LoginComponent implements OnInit {\r\n @Input() email: string = '';\r\n @Input() rememberEmail = true;\r\n\r\n masterPassword: string = '';\r\n showPassword: boolean = false;\r\n formPromise: Promise;\r\n onSuccessfulLogin: () => Promise;\r\n onSuccessfulLoginNavigate: () => Promise;\r\n onSuccessfulLoginTwoFactorNavigate: () => Promise;\r\n\r\n protected twoFactorRoute = '2fa';\r\n protected successRoute = 'vault';\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,\r\n private storageService: StorageService) { }\r\n\r\n async ngOnInit() {\r\n if (this.email == null || this.email === '') {\r\n this.email = await this.storageService.get(Keys.rememberedEmail);\r\n if (this.email == null) {\r\n this.email = '';\r\n }\r\n }\r\n this.rememberEmail = await this.storageService.get(Keys.rememberEmail);\r\n if (this.rememberEmail == null) {\r\n this.rememberEmail = true;\r\n }\r\n if (Utils.isBrowser) {\r\n document.getElementById(this.email == null || this.email === '' ? 'email' : 'masterPassword').focus();\r\n }\r\n }\r\n\r\n async submit() {\r\n if (this.email == null || this.email === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('emailRequired'));\r\n return;\r\n }\r\n if (this.email.indexOf('@') === -1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidEmail'));\r\n return;\r\n }\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n\r\n try {\r\n this.formPromise = this.authService.logIn(this.email, this.masterPassword);\r\n const response = await this.formPromise;\r\n await this.storageService.save(Keys.rememberEmail, this.rememberEmail);\r\n if (this.rememberEmail) {\r\n await this.storageService.save(Keys.rememberedEmail, this.email);\r\n } else {\r\n await this.storageService.remove(Keys.rememberedEmail);\r\n }\r\n if (response.twoFactor) {\r\n this.platformUtilsService.eventTrack('Logged In To Two-step');\r\n if (this.onSuccessfulLoginTwoFactorNavigate != null) {\r\n this.onSuccessfulLoginTwoFactorNavigate();\r\n } else {\r\n this.router.navigate([this.twoFactorRoute]);\r\n }\r\n } else {\r\n if (this.onSuccessfulLogin != null) {\r\n this.onSuccessfulLogin();\r\n }\r\n this.platformUtilsService.eventTrack('Logged In');\r\n if (this.onSuccessfulLoginNavigate != null) {\r\n this.onSuccessfulLoginNavigate();\r\n } else {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n }\r\n } catch { }\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Login');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('masterPassword').focus();\r\n }\r\n}\r\n","export function getDomain(host: string): string | null {\r\n return null;\r\n}\r\n","
\n
\n
\n

{{title}}

\n
\n
\n \n

{{'enterVerificationCodeApp' | i18n}}

\n

\n {{'enterVerificationCodeEmail' | i18n : twoFactorEmail}}\n

\n
\n \n \n \n \n {{'sendVerificationCodeEmailAgain' | i18n}}\n \n \n
\n
\n \n

{{'insertYubiKey' | i18n}}

\n \"\"\n
\n \n \n
\n
\n \n

\n \n

\n \n

{{'insertU2f' | i18n}}

\n \"\"\n
\n
\n \n
\n \n
\n
\n \n
\n \n \n
\n \n

{{'noTwoStepProviders' | i18n}}

\n

{{'noTwoStepProviders2' | i18n}}

\n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n \n
\n
\n
\n
\n
\n\n\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class TwoFactorOptionsComponent implements OnInit {\r\n @Output() onProviderSelected = new EventEmitter();\r\n @Output() onRecoverSelected = new EventEmitter();\r\n\r\n providers: any[] = [];\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected i18nService: I18nService, protected platformUtilsService: PlatformUtilsService,\r\n protected win: Window) { }\r\n\r\n ngOnInit() {\r\n this.providers = this.authService.getSupportedTwoFactorProviders(this.win);\r\n }\r\n\r\n choose(p: any) {\r\n this.onProviderSelected.emit(p.type);\r\n }\r\n\r\n recover() {\r\n this.platformUtilsService.eventTrack('Selected Recover');\r\n this.platformUtilsService.launchUri('https://help.bitwarden.com/article/lost-two-step-device/');\r\n this.onRecoverSelected.emit();\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentFactoryResolver,\r\n EventEmitter,\r\n OnDestroy,\r\n Output,\r\n Type,\r\n ViewChild,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-modal',\r\n template: ``,\r\n})\r\nexport class ModalComponent implements OnDestroy {\r\n @Output() onClose = new EventEmitter();\r\n @Output() onClosed = new EventEmitter();\r\n @Output() onShow = new EventEmitter();\r\n @Output() onShown = new EventEmitter();\r\n @ViewChild('container', { read: ViewContainerRef }) container: ViewContainerRef;\r\n parentContainer: ViewContainerRef = null;\r\n fade: boolean = true;\r\n\r\n constructor(protected componentFactoryResolver: ComponentFactoryResolver) { }\r\n\r\n ngOnDestroy() {\r\n document.body.classList.remove('modal-open');\r\n document.body.removeChild(document.querySelector('.modal-backdrop'));\r\n }\r\n\r\n show(type: Type, parentContainer: ViewContainerRef, fade: boolean = true): T {\r\n this.onShow.emit();\r\n this.parentContainer = parentContainer;\r\n this.fade = fade;\r\n\r\n document.body.classList.add('modal-open');\r\n const backdrop = document.createElement('div');\r\n backdrop.className = 'modal-backdrop' + (this.fade ? ' fade' : '');\r\n document.body.appendChild(backdrop);\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(type);\r\n const componentRef = this.container.createComponent(factory);\r\n\r\n document.querySelector('.modal-dialog').addEventListener('click', (e: Event) => {\r\n e.stopPropagation();\r\n });\r\n\r\n const modals = Array.from(document.querySelectorAll('.modal, .modal *[data-dismiss=\"modal\"]'));\r\n for (const closeElement of modals) {\r\n closeElement.addEventListener('click', (event) => {\r\n this.close();\r\n });\r\n }\r\n\r\n this.onShown.emit();\r\n return componentRef.instance;\r\n }\r\n\r\n close() {\r\n this.onClose.emit();\r\n this.onClosed.emit();\r\n if (this.parentContainer != null) {\r\n this.parentContainer.clear();\r\n }\r\n }\r\n}\r\n","import {\r\n OnDestroy,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { DeviceType } from '../../enums/deviceType';\r\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nimport { TwoFactorEmailRequest } from '../../models/request/twoFactorEmailRequest';\r\n\r\nimport { ApiService } from '../../abstractions/api.service';\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { EnvironmentService } from '../../abstractions/environment.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { TwoFactorProviders } from '../../services/auth.service';\r\n\r\nimport * as DuoWebSDK from 'duo_web_sdk';\r\nimport { U2f } from '../../misc/u2f';\r\n\r\nexport class TwoFactorComponent implements OnInit, OnDestroy {\r\n token: string = '';\r\n remember: boolean = false;\r\n u2fReady: boolean = false;\r\n providers = TwoFactorProviders;\r\n providerType = TwoFactorProviderType;\r\n selectedProviderType: TwoFactorProviderType = TwoFactorProviderType.Authenticator;\r\n u2fSupported: boolean = false;\r\n u2f: U2f = null;\r\n title: string = '';\r\n twoFactorEmail: string = null;\r\n formPromise: Promise;\r\n emailPromise: Promise;\r\n onSuccessfulLogin: () => Promise;\r\n onSuccessfulLoginNavigate: () => Promise;\r\n\r\n protected loginRoute = 'login';\r\n protected successRoute = 'vault';\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected i18nService: I18nService, protected apiService: ApiService,\r\n protected platformUtilsService: PlatformUtilsService, protected win: Window,\r\n protected environmentService: EnvironmentService) {\r\n this.u2fSupported = this.platformUtilsService.supportsU2f(win);\r\n }\r\n\r\n async ngOnInit() {\r\n if (this.authService.email == null || this.authService.masterPasswordHash == null ||\r\n this.authService.twoFactorProviders == null) {\r\n this.router.navigate([this.loginRoute]);\r\n return;\r\n }\r\n\r\n if (this.win != null && this.u2fSupported) {\r\n let customWebVaultUrl: string = null;\r\n if (this.environmentService.baseUrl != null) {\r\n customWebVaultUrl = this.environmentService.baseUrl;\r\n } else if (this.environmentService.webVaultUrl != null) {\r\n customWebVaultUrl = this.environmentService.webVaultUrl;\r\n }\r\n\r\n this.u2f = new U2f(this.win, customWebVaultUrl, (token: string) => {\r\n this.token = token;\r\n this.submit();\r\n }, (error: string) => {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), error);\r\n }, (info: string) => {\r\n if (info === 'ready') {\r\n this.u2fReady = true;\r\n }\r\n });\r\n }\r\n\r\n this.selectedProviderType = this.authService.getDefaultTwoFactorProvider(this.u2fSupported);\r\n await this.init();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.cleanupU2f();\r\n this.u2f = null;\r\n }\r\n\r\n async init() {\r\n if (this.selectedProviderType == null) {\r\n this.title = this.i18nService.t('loginUnavailable');\r\n return;\r\n }\r\n\r\n this.cleanupU2f();\r\n this.title = (TwoFactorProviders as any)[this.selectedProviderType].name;\r\n const params = this.authService.twoFactorProviders.get(this.selectedProviderType);\r\n switch (this.selectedProviderType) {\r\n case TwoFactorProviderType.U2f:\r\n if (!this.u2fSupported || this.u2f == null) {\r\n break;\r\n }\r\n\r\n if (params.Challenge != null) {\r\n this.u2f.init(JSON.parse(params.Challenge));\r\n } else {\r\n // TODO: Deprecated. Remove in future version.\r\n const challenges = JSON.parse(params.Challenges);\r\n if (challenges != null && challenges.length > 0) {\r\n this.u2f.init({\r\n appId: challenges[0].appId,\r\n challenge: challenges[0].challenge,\r\n keys: challenges.map((c: any) => {\r\n return {\r\n version: c.version,\r\n keyHandle: c.keyHandle,\r\n };\r\n }),\r\n });\r\n }\r\n }\r\n break;\r\n case TwoFactorProviderType.Duo:\r\n case TwoFactorProviderType.OrganizationDuo:\r\n if (this.platformUtilsService.getDevice() === DeviceType.SafariExtension) {\r\n break;\r\n }\r\n\r\n setTimeout(() => {\r\n DuoWebSDK.init({\r\n iframe: undefined,\r\n host: params.Host,\r\n sig_request: params.Signature,\r\n submit_callback: async (f: HTMLFormElement) => {\r\n const sig = f.querySelector('input[name=\"sig_response\"]') as HTMLInputElement;\r\n if (sig != null) {\r\n this.token = sig.value;\r\n await this.submit();\r\n }\r\n },\r\n });\r\n }, 0);\r\n break;\r\n case TwoFactorProviderType.Email:\r\n this.twoFactorEmail = params.Email;\r\n if (this.authService.twoFactorProviders.size > 1) {\r\n await this.sendEmail(false);\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n async submit() {\r\n if (this.token == null || this.token === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('verificationCodeRequired'));\r\n return;\r\n }\r\n\r\n if (this.selectedProviderType === TwoFactorProviderType.U2f) {\r\n if (this.u2f != null) {\r\n this.u2f.stop();\r\n } else {\r\n return;\r\n }\r\n } else if (this.selectedProviderType === TwoFactorProviderType.Email ||\r\n this.selectedProviderType === TwoFactorProviderType.Authenticator) {\r\n this.token = this.token.replace(' ', '').trim();\r\n }\r\n\r\n try {\r\n this.formPromise = this.authService.logInTwoFactor(this.selectedProviderType, this.token, this.remember);\r\n await this.formPromise;\r\n if (this.onSuccessfulLogin != null) {\r\n this.onSuccessfulLogin();\r\n }\r\n this.platformUtilsService.eventTrack('Logged In From Two-step');\r\n if (this.onSuccessfulLoginNavigate != null) {\r\n this.onSuccessfulLoginNavigate();\r\n } else {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n } catch {\r\n if (this.selectedProviderType === TwoFactorProviderType.U2f && this.u2f != null) {\r\n this.u2f.start();\r\n }\r\n }\r\n }\r\n\r\n async sendEmail(doToast: boolean) {\r\n if (this.selectedProviderType !== TwoFactorProviderType.Email) {\r\n return;\r\n }\r\n\r\n if (this.emailPromise != null) {\r\n return;\r\n }\r\n\r\n try {\r\n const request = new TwoFactorEmailRequest(this.authService.email, this.authService.masterPasswordHash);\r\n this.emailPromise = this.apiService.postTwoFactorEmail(request);\r\n await this.emailPromise;\r\n if (doToast) {\r\n this.platformUtilsService.showToast('success', null,\r\n this.i18nService.t('verificationCodeEmailSent', this.twoFactorEmail));\r\n }\r\n } catch { }\r\n\r\n this.emailPromise = null;\r\n }\r\n\r\n private cleanupU2f() {\r\n if (this.u2f != null) {\r\n this.u2f.stop();\r\n this.u2f.cleanup();\r\n }\r\n }\r\n}\r\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nexport class AuthResult {\r\n twoFactor: boolean = false;\r\n twoFactorProviders: Map = null;\r\n}\r\n","import { DeviceType } from '../../enums/deviceType';\r\n\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class DeviceRequest {\r\n type: DeviceType;\r\n name: string;\r\n identifier: string;\r\n pushToken?: string;\r\n\r\n constructor(appId: string, platformUtilsService: PlatformUtilsService) {\r\n this.type = platformUtilsService.getDevice();\r\n this.name = platformUtilsService.getDeviceString();\r\n this.identifier = appId;\r\n this.pushToken = null;\r\n }\r\n}\r\n","export class PreloginRequest {\n email: string;\n\n constructor(email: string) {\n this.email = email;\n }\n}\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nimport { DeviceRequest } from './deviceRequest';\n\nexport class TokenRequest {\n email: string;\n masterPasswordHash: string;\n token: string;\n provider: TwoFactorProviderType;\n remember: boolean;\n device?: DeviceRequest;\n\n constructor(email: string, masterPasswordHash: string, provider: TwoFactorProviderType,\n token: string, remember: boolean, device?: DeviceRequest) {\n this.email = email;\n this.masterPasswordHash = masterPasswordHash;\n this.token = token;\n this.provider = provider;\n this.remember = remember;\n this.device = device != null ? device : null;\n }\n\n toIdentityToken(clientId: string) {\n const obj: any = {\n grant_type: 'password',\n username: this.email,\n password: this.masterPasswordHash,\n scope: 'api offline_access',\n client_id: clientId,\n };\n\n if (this.device) {\n obj.deviceType = this.device.type;\n obj.deviceIdentifier = this.device.identifier;\n obj.deviceName = this.device.name;\n // no push tokens for browser apps yet\n // obj.devicePushToken = this.device.pushToken;\n }\n\n if (this.token && this.provider != null) {\n obj.twoFactorToken = this.token;\n obj.twoFactorProvider = this.provider;\n obj.twoFactorRemember = this.remember ? '1' : '0';\n }\n\n return obj;\n }\n}\n","export class U2f {\r\n private iframe: HTMLIFrameElement = null;\r\n private connectorLink: HTMLAnchorElement;\r\n private parseFunction = this.parseMessage.bind(this);\r\n\r\n constructor(private win: Window, private webVaultUrl: string, private successCallback: Function,\r\n private errorCallback: Function, private infoCallback: Function) {\r\n this.connectorLink = win.document.createElement('a');\r\n this.webVaultUrl = webVaultUrl != null && webVaultUrl !== '' ? webVaultUrl : 'https://vault.bitwarden.com';\r\n }\r\n\r\n init(data: any): void {\r\n this.connectorLink.href = this.webVaultUrl + '/u2f-connector.html' +\r\n '?data=' + this.base64Encode(JSON.stringify(data)) +\r\n '&parent=' + encodeURIComponent(this.win.document.location.href) +\r\n '&v=1';\r\n\r\n this.iframe = this.win.document.getElementById('u2f_iframe') as HTMLIFrameElement;\r\n this.iframe.src = this.connectorLink.href;\r\n\r\n this.win.addEventListener('message', this.parseFunction, false);\r\n }\r\n\r\n stop() {\r\n this.sendMessage('stop');\r\n }\r\n\r\n start() {\r\n this.sendMessage('start');\r\n }\r\n\r\n sendMessage(message: any) {\r\n if (!this.iframe || !this.iframe.src || !this.iframe.contentWindow) {\r\n return;\r\n }\r\n\r\n this.iframe.contentWindow.postMessage(message, this.iframe.src);\r\n }\r\n\r\n base64Encode(str: string): string {\r\n return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, (match, p1) => {\r\n return String.fromCharCode(('0x' + p1) as any);\r\n }));\r\n }\r\n\r\n cleanup() {\r\n this.win.removeEventListener('message', this.parseFunction, false);\r\n }\r\n\r\n private parseMessage(event: MessageEvent) {\r\n if (!this.validMessage(event)) {\r\n return;\r\n }\r\n\r\n const parts: string[] = event.data.split('|');\r\n if (parts[0] === 'success' && this.successCallback) {\r\n this.successCallback(parts[1]);\r\n } else if (parts[0] === 'error' && this.errorCallback) {\r\n this.errorCallback(parts[1]);\r\n } else if (parts[0] === 'info' && this.infoCallback) {\r\n this.infoCallback(parts[1]);\r\n }\r\n }\r\n\r\n private validMessage(event: MessageEvent) {\r\n if (event.origin == null || event.origin === '' || event.origin !== (this.connectorLink as any).origin ||\r\n event.data == null || typeof (event.data) !== 'string') {\r\n return false;\r\n }\r\n\r\n return event.data.indexOf('success|') === 0 || event.data.indexOf('error|') === 0 ||\r\n event.data.indexOf('info|') === 0;\r\n }\r\n}\r\n","
\n
\n
\n

{{'createAccount' | i18n}}

\n
\n
\n \n {{'createOrganizationCreatePersonalAccount' | i18n}}\n \n
\n \n \n {{'emailAddressDesc' | i18n}}\n
\n
\n \n \n {{'yourNameDesc' | i18n}}\n
\n
\n \n
\n
\n \n \n
\n
\n \n
\n
\n
\n {{'masterPassDesc' | i18n}}\n
\n
\n \n
\n \n \n
\n
\n
\n \n \n {{'masterPassHintDesc' | i18n}}\n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n \n {{'submitAgreePolicies' | i18n}}\n {{'termsOfService' | i18n}},\n {{'privacyPolicy' | i18n}}\n \n
\n
\n
\n
\n
\n","import { Router } from '@angular/router';\r\n\r\nimport { KeysRequest } from '../../models/request/keysRequest';\r\nimport { RegisterRequest } from '../../models/request/registerRequest';\r\n\r\nimport { ApiService } from '../../abstractions/api.service';\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PasswordGenerationService } from '../../abstractions/passwordGeneration.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { StateService } from '../../abstractions/state.service';\r\n\r\nimport { KdfType } from '../../enums/kdfType';\r\n\r\nexport class RegisterComponent {\r\n name: string = '';\r\n email: string = '';\r\n masterPassword: string = '';\r\n confirmMasterPassword: string = '';\r\n hint: string = '';\r\n showPassword: boolean = false;\r\n formPromise: Promise;\r\n masterPasswordScore: number;\r\n\r\n protected successRoute = 'login';\r\n private masterPasswordStrengthTimeout: any;\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected i18nService: I18nService, protected cryptoService: CryptoService,\r\n protected apiService: ApiService, protected stateService: StateService,\r\n protected platformUtilsService: PlatformUtilsService,\r\n protected passwordGenerationService: PasswordGenerationService) { }\r\n\r\n get masterPasswordScoreWidth() {\r\n return this.masterPasswordScore == null ? 0 : (this.masterPasswordScore + 1) * 20;\r\n }\r\n\r\n get masterPasswordScoreColor() {\r\n switch (this.masterPasswordScore) {\r\n case 4:\r\n return 'success';\r\n case 3:\r\n return 'primary';\r\n case 2:\r\n return 'warning';\r\n default:\r\n return 'danger';\r\n }\r\n }\r\n\r\n get masterPasswordScoreText() {\r\n switch (this.masterPasswordScore) {\r\n case 4:\r\n return this.i18nService.t('strong');\r\n case 3:\r\n return this.i18nService.t('good');\r\n case 2:\r\n return this.i18nService.t('weak');\r\n default:\r\n return this.masterPasswordScore != null ? this.i18nService.t('weak') : null;\r\n }\r\n }\r\n\r\n async submit() {\r\n if (this.email == null || this.email === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('emailRequired'));\r\n return;\r\n }\r\n if (this.email.indexOf('@') === -1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidEmail'));\r\n return;\r\n }\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n if (this.masterPassword.length < 8) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassLength'));\r\n return;\r\n }\r\n if (this.masterPassword !== this.confirmMasterPassword) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassDoesntMatch'));\r\n return;\r\n }\r\n\r\n const strengthResult = this.passwordGenerationService.passwordStrength(this.masterPassword,\r\n this.getPasswordStrengthUserInput());\r\n if (strengthResult != null && strengthResult.score < 3) {\r\n const result = await this.platformUtilsService.showDialog(this.i18nService.t('weakMasterPasswordDesc'),\r\n this.i18nService.t('weakMasterPassword'), this.i18nService.t('yes'), this.i18nService.t('no'),\r\n 'warning');\r\n if (!result) {\r\n return;\r\n }\r\n }\r\n\r\n this.name = this.name === '' ? null : this.name;\r\n this.email = this.email.trim().toLowerCase();\r\n const kdf = KdfType.PBKDF2_SHA256;\r\n const useLowerKdf = this.platformUtilsService.isEdge() || this.platformUtilsService.isIE();\r\n const kdfIterations = useLowerKdf ? 10000 : 100000;\r\n const key = await this.cryptoService.makeKey(this.masterPassword, this.email, kdf, kdfIterations);\r\n const encKey = await this.cryptoService.makeEncKey(key);\r\n const hashedPassword = await this.cryptoService.hashPassword(this.masterPassword, key);\r\n const keys = await this.cryptoService.makeKeyPair(encKey[0]);\r\n const request = new RegisterRequest(this.email, this.name, hashedPassword,\r\n this.hint, encKey[1].encryptedString, kdf, kdfIterations);\r\n request.keys = new KeysRequest(keys[0], keys[1].encryptedString);\r\n const orgInvite = await this.stateService.get('orgInvitation');\r\n if (orgInvite != null && orgInvite.token != null && orgInvite.organizationUserId != null) {\r\n request.token = orgInvite.token;\r\n request.organizationUserId = orgInvite.organizationUserId;\r\n }\r\n\r\n try {\r\n this.formPromise = this.apiService.postRegister(request);\r\n await this.formPromise;\r\n this.platformUtilsService.eventTrack('Registered');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('newAccountCreated'));\r\n this.router.navigate([this.successRoute], { queryParams: { email: this.email } });\r\n } catch { }\r\n }\r\n\r\n togglePassword(confirmField: boolean) {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Register');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById(confirmField ? 'masterPasswordRetype' : 'masterPassword').focus();\r\n }\r\n\r\n updatePasswordStrength() {\r\n if (this.masterPasswordStrengthTimeout != null) {\r\n clearTimeout(this.masterPasswordStrengthTimeout);\r\n }\r\n this.masterPasswordStrengthTimeout = setTimeout(() => {\r\n const strengthResult = this.passwordGenerationService.passwordStrength(this.masterPassword,\r\n this.getPasswordStrengthUserInput());\r\n this.masterPasswordScore = strengthResult == null ? null : strengthResult.score;\r\n }, 300);\r\n }\r\n\r\n private getPasswordStrengthUserInput() {\r\n let userInput: string[] = [];\r\n const atPosition = this.email.indexOf('@');\r\n if (atPosition > -1) {\r\n userInput = userInput.concat(this.email.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/));\r\n }\r\n if (this.name != null && this.name !== '') {\r\n userInput = userInput.concat(this.name.trim().toLowerCase().split(' '));\r\n }\r\n return userInput;\r\n }\r\n}\r\n","import { KeysRequest } from './keysRequest';\n\nimport { KdfType } from '../../enums/kdfType';\n\nexport class RegisterRequest {\n name: string;\n email: string;\n masterPasswordHash: string;\n masterPasswordHint: string;\n key: string;\n keys: KeysRequest;\n token: string;\n organizationUserId: string;\n kdf: KdfType;\n kdfIterations: number;\n\n constructor(email: string, name: string, masterPasswordHash: string, masterPasswordHint: string, key: string,\n kdf: KdfType, kdfIterations: number) {\n this.name = name;\n this.email = email;\n this.masterPasswordHash = masterPasswordHash;\n this.masterPasswordHint = masterPasswordHint ? masterPasswordHint : null;\n this.key = key;\n this.kdf = kdf;\n this.kdfIterations = kdfIterations;\n }\n}\n","
\n
\n
\n

{{'passwordHint' | i18n}}

\n
\n
\n
\n \n \n {{'enterEmailToGetHint' | i18n}}\n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","import { Router } from '@angular/router';\r\n\r\nimport { PasswordHintRequest } from '../../models/request/passwordHintRequest';\r\n\r\nimport { ApiService } from '../../abstractions/api.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class HintComponent {\r\n email: string = '';\r\n formPromise: Promise;\r\n\r\n protected successRoute = 'login';\r\n protected onSuccessfulSubmit: () => void;\r\n\r\n constructor(protected router: Router, protected i18nService: I18nService,\r\n protected apiService: ApiService, protected platformUtilsService: PlatformUtilsService) { }\r\n\r\n async submit() {\r\n if (this.email == null || this.email === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('emailRequired'));\r\n return;\r\n }\r\n if (this.email.indexOf('@') === -1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidEmail'));\r\n return;\r\n }\r\n\r\n try {\r\n this.formPromise = this.apiService.postPasswordHint(new PasswordHintRequest(this.email));\r\n await this.formPromise;\r\n this.platformUtilsService.eventTrack('Requested Hint');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('masterPassSent'));\r\n if (this.onSuccessfulSubmit != null) {\r\n this.onSuccessfulSubmit();\r\n } else if (this.router != null) {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n } catch { }\r\n }\r\n}\r\n","export class PasswordHintRequest {\r\n email: string;\r\n\r\n constructor(email: string) {\r\n this.email = email;\r\n }\r\n}\r\n","
\n
\n
\n

\n \n

\n

{{'yourVaultIsLocked' | i18n}}

\n
\n
\n
\n \n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n","import { Router } from '@angular/router';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { MessagingService } from '../../abstractions/messaging.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nexport class LockComponent {\r\n masterPassword: string = '';\r\n showPassword: boolean = false;\r\n\r\n protected successRoute: string = 'vault';\r\n protected onSuccessfulSubmit: () => void;\r\n\r\n constructor(protected router: Router, protected i18nService: I18nService,\r\n protected platformUtilsService: PlatformUtilsService, protected messagingService: MessagingService,\r\n protected userService: UserService, protected cryptoService: CryptoService) { }\r\n\r\n async submit() {\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n\r\n const email = await this.userService.getEmail();\r\n const kdf = await this.userService.getKdf();\r\n const kdfIterations = await this.userService.getKdfIterations();\r\n const key = await this.cryptoService.makeKey(this.masterPassword, email, kdf, kdfIterations);\r\n const keyHash = await this.cryptoService.hashPassword(this.masterPassword, key);\r\n const storedKeyHash = await this.cryptoService.getKeyHash();\r\n\r\n if (storedKeyHash != null && keyHash != null && storedKeyHash === keyHash) {\r\n await this.cryptoService.setKey(key);\r\n this.messagingService.send('unlocked');\r\n if (this.onSuccessfulSubmit != null) {\r\n this.onSuccessfulSubmit();\r\n } else if (this.router != null) {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n } else {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidMasterPassword'));\r\n }\r\n }\r\n\r\n async logOut() {\r\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('logOutConfirmation'),\r\n this.i18nService.t('logOut'), this.i18nService.t('logOut'), this.i18nService.t('cancel'));\r\n if (confirmed) {\r\n this.messagingService.send('logout');\r\n }\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Unlock');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('masterPassword').focus();\r\n }\r\n}\r\n","
\n
\n \"Bitwarden\"\n

\n \n

\n
\n
\n","export class VerifyEmailRequest {\n userId: string;\n token: string;\n\n constructor(userId: string, token: string) {\n this.userId = userId;\n this.token = token;\n }\n}\n","
\n
\n \"Bitwarden\"\n

\n \n

\n
\n
\n
\n
\n
\n

{{'joinOrganization' | i18n}}

\n
\n
\n

\n {{orgName}}\n {{email}}\n

\n

{{'joinOrganizationDesc' | i18n}}

\n
\n \n
\n
\n
\n
\n
\n","export class OrganizationUserAcceptRequest {\n token: string;\n}\n","
\n
\n
\n

{{'recoverAccountTwoStep' | i18n}}

\n
\n
\n

{{'recoverAccountTwoStepDesc' | i18n}}\n {{'learnMore' | i18n}}\n

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class TwoFactorRecoveryRequest extends PasswordVerificationRequest {\n recoveryCode: string;\n email: string;\n}\n","
\n
\n
\n

{{'deleteAccount' | i18n}}

\n
\n
\n

{{'deleteRecoverDesc' | i18n}}

\n
\n \n \n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","export class DeleteRecoverRequest {\n email: string;\n}\n","
\n
\n
\n

{{'deleteAccount' | i18n}}

\n
\n
\n {{'deleteAccountWarning' | i18n}}\n

\n {{email}}\n

\n

{{'deleteRecoverConfirmDesc' | i18n}}

\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","export class VerifyDeleteRecoverRequest {\n userId: string;\n token: string;\n\n constructor(userId: string, token: string) {\n this.userId = userId;\n this.token = token;\n }\n}\n","\r\n\r\n\r\n","
\n
\n
\n \n \n
\n
\n
\n

\n {{'myVault' | i18n}}\n \n \n \n

\n \n
\n \n \n
\n
\n
\n
\n {{'updateKeyTitle' | i18n}}\n
\n
\n

{{'updateEncryptionKeyShortDesc' | i18n}}

\n \n
\n
\n \n
\n
\n {{'updateBrowser' | i18n}}\n
\n
\n

{{'updateBrowserDesc' | i18n}}

\n \n {{'updateBrowser' | i18n}}\n \n
\n
\n
\n
\n {{'goPremium' | i18n}}\n
\n
\n

{{'premiumUpgradeUnlockFeatures' | i18n}}

\n \n {{'goPremium' | i18n}}\n \n
\n
\n
\n
\n {{'organizations' | i18n}}\n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n\n\n\n\n\n\n\n\n\n","
\n
\n {{'verifyEmail' | i18n}}\n
\n
\n

{{'verifyEmailDesc' | i18n}}

\n \n
\n
\n","
\n
\n {{'filters' | i18n}}\n \n \n \n
\n
\n \n \n

{{'types' | i18n}}

\n \n

\n \n

\n \n \n

\n {{'folders' | i18n}}\n \n \n \n

\n \n
\n \n

{{'collections' | i18n}}

\n \n
\n
\n
\n
\n","import {\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherType } from '../../enums/cipherType';\r\n\r\nimport { CollectionView } from '../../models/view/collectionView';\r\nimport { FolderView } from '../../models/view/folderView';\r\n\r\nimport { TreeNode } from '../../models/domain/treeNode';\r\n\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { FolderService } from '../../abstractions/folder.service';\r\nimport { StorageService } from '../../abstractions/storage.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { ConstantsService } from '../../services/constants.service';\r\n\r\nexport class GroupingsComponent {\r\n @Input() showFolders = true;\r\n @Input() showCollections = true;\r\n @Input() showFavorites = true;\r\n\r\n @Output() onAllClicked = new EventEmitter();\r\n @Output() onFavoritesClicked = new EventEmitter();\r\n @Output() onCipherTypeClicked = new EventEmitter();\r\n @Output() onFolderClicked = new EventEmitter();\r\n @Output() onAddFolder = new EventEmitter();\r\n @Output() onEditFolder = new EventEmitter();\r\n @Output() onCollectionClicked = new EventEmitter();\r\n\r\n folders: FolderView[];\r\n nestedFolders: Array>;\r\n collections: CollectionView[];\r\n nestedCollections: Array>;\r\n loaded: boolean = false;\r\n cipherType = CipherType;\r\n selectedAll: boolean = false;\r\n selectedFavorites: boolean = false;\r\n selectedType: CipherType = null;\r\n selectedFolder: boolean = false;\r\n selectedFolderId: string = null;\r\n selectedCollectionId: string = null;\r\n\r\n private collapsedGroupings: Set;\r\n private collapsedGroupingsKey: string;\r\n\r\n constructor(protected collectionService: CollectionService, protected folderService: FolderService,\r\n protected storageService: StorageService, protected userService: UserService) { }\r\n\r\n async load(setLoaded = true) {\r\n const userId = await this.userService.getUserId();\r\n this.collapsedGroupingsKey = ConstantsService.collapsedGroupingsKey + '_' + userId;\r\n const collapsedGroupings = await this.storageService.get(this.collapsedGroupingsKey);\r\n if (collapsedGroupings == null) {\r\n this.collapsedGroupings = new Set();\r\n } else {\r\n this.collapsedGroupings = new Set(collapsedGroupings);\r\n }\r\n\r\n await this.loadFolders();\r\n await this.loadCollections();\r\n\r\n if (setLoaded) {\r\n this.loaded = true;\r\n }\r\n }\r\n\r\n async loadCollections(organizationId?: string) {\r\n if (!this.showCollections) {\r\n return;\r\n }\r\n const collections = await this.collectionService.getAllDecrypted();\r\n if (organizationId != null) {\r\n this.collections = collections.filter((c) => c.organizationId === organizationId);\r\n } else {\r\n this.collections = collections;\r\n }\r\n this.nestedCollections = await this.collectionService.getAllNested(this.collections);\r\n }\r\n\r\n async loadFolders() {\r\n if (!this.showFolders) {\r\n return;\r\n }\r\n this.folders = await this.folderService.getAllDecrypted();\r\n this.nestedFolders = await this.folderService.getAllNested();\r\n }\r\n\r\n selectAll() {\r\n this.clearSelections();\r\n this.selectedAll = true;\r\n this.onAllClicked.emit();\r\n }\r\n\r\n selectFavorites() {\r\n this.clearSelections();\r\n this.selectedFavorites = true;\r\n this.onFavoritesClicked.emit();\r\n }\r\n\r\n selectType(type: CipherType) {\r\n this.clearSelections();\r\n this.selectedType = type;\r\n this.onCipherTypeClicked.emit(type);\r\n }\r\n\r\n selectFolder(folder: FolderView) {\r\n this.clearSelections();\r\n this.selectedFolder = true;\r\n this.selectedFolderId = folder.id;\r\n this.onFolderClicked.emit(folder);\r\n }\r\n\r\n addFolder() {\r\n this.onAddFolder.emit();\r\n }\r\n\r\n editFolder(folder: FolderView) {\r\n this.onEditFolder.emit(folder);\r\n }\r\n\r\n selectCollection(collection: CollectionView) {\r\n this.clearSelections();\r\n this.selectedCollectionId = collection.id;\r\n this.onCollectionClicked.emit(collection);\r\n }\r\n\r\n clearSelections() {\r\n this.selectedAll = false;\r\n this.selectedFavorites = false;\r\n this.selectedType = null;\r\n this.selectedFolder = false;\r\n this.selectedFolderId = null;\r\n this.selectedCollectionId = null;\r\n }\r\n\r\n collapse(grouping: FolderView | CollectionView, idPrefix = '') {\r\n if (grouping.id == null) {\r\n return;\r\n }\r\n const id = idPrefix + grouping.id;\r\n if (this.isCollapsed(grouping, idPrefix)) {\r\n this.collapsedGroupings.delete(id);\r\n } else {\r\n this.collapsedGroupings.add(id);\r\n }\r\n this.storageService.save(this.collapsedGroupingsKey, this.collapsedGroupings);\r\n }\r\n\r\n isCollapsed(grouping: FolderView | CollectionView, idPrefix = '') {\r\n return this.collapsedGroupings.has(idPrefix + grouping.id);\r\n }\r\n}\r\n","\n 0\">\n \n \n \n \n \n \n \n \n
\n \n \n \n \n {{c.name}}\n \n \n \n \n \n
\n {{c.subTitle}}\n
\n \n
\n
\n \n \n

{{'noItemsInList' | i18n}}

\n \n
\n
\n
\n","import {\n Directive,\n ElementRef,\n HostListener,\n Input,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appFallbackSrc]',\r\n})\r\nexport class FallbackSrcDirective {\n @Input('appFallbackSrc') appFallbackSrc: string;\n\n constructor(private el: ElementRef) {\n }\n\n @HostListener('error') onError() {\r\n this.el.nativeElement.src = this.appFallbackSrc;\r\n }\r\n}\n","import {\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { SearchService } from '../../abstractions/search.service';\r\n\r\nimport { CipherView } from '../../models/view/cipherView';\r\n\r\nexport class CiphersComponent {\r\n @Input() activeCipherId: string = null;\r\n @Output() onCipherClicked = new EventEmitter();\r\n @Output() onCipherRightClicked = new EventEmitter();\r\n @Output() onAddCipher = new EventEmitter();\r\n @Output() onAddCipherOptions = new EventEmitter();\r\n\r\n loaded: boolean = false;\r\n ciphers: CipherView[] = [];\r\n searchText: string;\r\n searchPlaceholder: string = null;\r\n filter: (cipher: CipherView) => boolean = null;\r\n\r\n protected searchPending = false;\r\n\r\n private searchTimeout: any = null;\r\n\r\n constructor(protected searchService: SearchService) { }\r\n\r\n async load(filter: (cipher: CipherView) => boolean = null) {\r\n await this.applyFilter(filter);\r\n this.loaded = true;\r\n }\r\n\r\n async refresh() {\r\n this.loaded = false;\r\n this.ciphers = [];\r\n await this.load(this.filter);\r\n }\r\n\r\n async applyFilter(filter: (cipher: CipherView) => boolean = null) {\r\n this.filter = filter;\r\n await this.search(null);\r\n }\r\n\r\n async search(timeout: number = null) {\r\n this.searchPending = false;\r\n if (this.searchTimeout != null) {\r\n clearTimeout(this.searchTimeout);\r\n }\r\n if (timeout == null) {\r\n this.ciphers = await this.searchService.searchCiphers(this.searchText, this.filter);\r\n return;\r\n }\r\n this.searchPending = true;\r\n this.searchTimeout = setTimeout(async () => {\r\n this.ciphers = await this.searchService.searchCiphers(this.searchText, this.filter);\r\n this.searchPending = false;\r\n }, timeout);\r\n }\r\n\r\n selectCipher(cipher: CipherView) {\r\n this.onCipherClicked.emit(cipher);\r\n }\r\n\r\n rightClickCipher(cipher: CipherView) {\r\n this.onCipherRightClicked.emit(cipher);\r\n }\r\n\r\n addCipher() {\r\n this.onAddCipher.emit();\r\n }\r\n\r\n addCipherOptions() {\r\n this.onAddCipherOptions.emit();\r\n }\r\n}\r\n","export class AttachmentRequest {\r\n fileName: string;\r\n key: string;\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherType } from '../../enums/cipherType';\r\nimport { FieldType } from '../../enums/fieldType';\r\nimport { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { SecureNoteType } from '../../enums/secureNoteType';\r\nimport { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { AuditService } from '../../abstractions/audit.service';\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { FolderService } from '../../abstractions/folder.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { StateService } from '../../abstractions/state.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { Cipher } from '../../models/domain/cipher';\r\n\r\nimport { CardView } from '../../models/view/cardView';\r\nimport { CipherView } from '../../models/view/cipherView';\r\nimport { CollectionView } from '../../models/view/collectionView';\r\nimport { FieldView } from '../../models/view/fieldView';\r\nimport { FolderView } from '../../models/view/folderView';\r\nimport { IdentityView } from '../../models/view/identityView';\r\nimport { LoginUriView } from '../../models/view/loginUriView';\r\nimport { LoginView } from '../../models/view/loginView';\r\nimport { SecureNoteView } from '../../models/view/secureNoteView';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class AddEditComponent implements OnInit {\r\n @Input() folderId: string = null;\r\n @Input() cipherId: string;\r\n @Input() type: CipherType;\r\n @Input() collectionIds: string[];\r\n @Input() organizationId: string = null;\r\n @Output() onSavedCipher = new EventEmitter();\r\n @Output() onDeletedCipher = new EventEmitter();\r\n @Output() onCancelled = new EventEmitter();\r\n @Output() onEditAttachments = new EventEmitter();\r\n @Output() onShareCipher = new EventEmitter();\r\n @Output() onEditCollections = new EventEmitter();\r\n @Output() onGeneratePassword = new EventEmitter();\r\n\r\n editMode: boolean = false;\r\n cipher: CipherView;\r\n folders: FolderView[];\r\n collections: CollectionView[] = [];\r\n title: string;\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n checkPasswordPromise: Promise;\r\n showPassword: boolean = false;\r\n showCardCode: boolean = false;\r\n cipherType = CipherType;\r\n fieldType = FieldType;\r\n addFieldType: FieldType = FieldType.Text;\r\n typeOptions: any[];\r\n cardBrandOptions: any[];\r\n cardExpMonthOptions: any[];\r\n identityTitleOptions: any[];\r\n addFieldTypeOptions: any[];\r\n uriMatchOptions: any[];\r\n ownershipOptions: any[] = [];\r\n\r\n protected writeableCollections: CollectionView[];\r\n\r\n constructor(protected cipherService: CipherService, protected folderService: FolderService,\r\n protected i18nService: I18nService, protected platformUtilsService: PlatformUtilsService,\r\n protected auditService: AuditService, protected stateService: StateService,\r\n protected userService: UserService, protected collectionService: CollectionService) {\r\n this.typeOptions = [\r\n { name: i18nService.t('typeLogin'), value: CipherType.Login },\r\n { name: i18nService.t('typeCard'), value: CipherType.Card },\r\n { name: i18nService.t('typeIdentity'), value: CipherType.Identity },\r\n { name: i18nService.t('typeSecureNote'), value: CipherType.SecureNote },\r\n ];\r\n this.cardBrandOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: 'Visa', value: 'Visa' },\r\n { name: 'Mastercard', value: 'Mastercard' },\r\n { name: 'American Express', value: 'Amex' },\r\n { name: 'Discover', value: 'Discover' },\r\n { name: 'Diners Club', value: 'Diners Club' },\r\n { name: 'JCB', value: 'JCB' },\r\n { name: 'Maestro', value: 'Maestro' },\r\n { name: 'UnionPay', value: 'UnionPay' },\r\n { name: i18nService.t('other'), value: 'Other' },\r\n ];\r\n this.cardExpMonthOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: '01 - ' + i18nService.t('january'), value: '1' },\r\n { name: '02 - ' + i18nService.t('february'), value: '2' },\r\n { name: '03 - ' + i18nService.t('march'), value: '3' },\r\n { name: '04 - ' + i18nService.t('april'), value: '4' },\r\n { name: '05 - ' + i18nService.t('may'), value: '5' },\r\n { name: '06 - ' + i18nService.t('june'), value: '6' },\r\n { name: '07 - ' + i18nService.t('july'), value: '7' },\r\n { name: '08 - ' + i18nService.t('august'), value: '8' },\r\n { name: '09 - ' + i18nService.t('september'), value: '9' },\r\n { name: '10 - ' + i18nService.t('october'), value: '10' },\r\n { name: '11 - ' + i18nService.t('november'), value: '11' },\r\n { name: '12 - ' + i18nService.t('december'), value: '12' },\r\n ];\r\n this.identityTitleOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: i18nService.t('mr'), value: i18nService.t('mr') },\r\n { name: i18nService.t('mrs'), value: i18nService.t('mrs') },\r\n { name: i18nService.t('ms'), value: i18nService.t('ms') },\r\n { name: i18nService.t('dr'), value: i18nService.t('dr') },\r\n ];\r\n this.addFieldTypeOptions = [\r\n { name: i18nService.t('cfTypeText'), value: FieldType.Text },\r\n { name: i18nService.t('cfTypeHidden'), value: FieldType.Hidden },\r\n { name: i18nService.t('cfTypeBoolean'), value: FieldType.Boolean },\r\n ];\r\n this.uriMatchOptions = [\r\n { name: i18nService.t('defaultMatchDetection'), value: null },\r\n { name: i18nService.t('baseDomain'), value: UriMatchType.Domain },\r\n { name: i18nService.t('host'), value: UriMatchType.Host },\r\n { name: i18nService.t('startsWith'), value: UriMatchType.StartsWith },\r\n { name: i18nService.t('regEx'), value: UriMatchType.RegularExpression },\r\n { name: i18nService.t('exact'), value: UriMatchType.Exact },\r\n { name: i18nService.t('never'), value: UriMatchType.Never },\r\n ];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.init();\r\n }\r\n\r\n async init() {\r\n const myEmail = await this.userService.getEmail();\r\n this.ownershipOptions.push({ name: myEmail, value: null });\r\n const orgs = await this.userService.getAllOrganizations();\r\n orgs.sort(Utils.getSortFunction(this.i18nService, 'name')).forEach((o) => {\r\n if (o.enabled && o.status === OrganizationUserStatusType.Confirmed) {\r\n this.ownershipOptions.push({ name: o.name, value: o.id });\r\n }\r\n });\r\n this.writeableCollections = await this.loadCollections();\r\n }\r\n\r\n async load() {\r\n this.editMode = this.cipherId != null;\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editItem');\r\n } else {\r\n this.title = this.i18nService.t('addItem');\r\n }\r\n\r\n this.cipher = await this.stateService.get('addEditCipher');\r\n await this.stateService.remove('addEditCipher');\r\n if (this.cipher == null) {\r\n if (this.editMode) {\r\n const cipher = await this.loadCipher();\r\n this.cipher = await cipher.decrypt();\r\n } else {\r\n this.cipher = new CipherView();\r\n this.cipher.organizationId = this.organizationId == null ? null : this.organizationId;\r\n this.cipher.folderId = this.folderId;\r\n this.cipher.type = this.type == null ? CipherType.Login : this.type;\r\n this.cipher.login = new LoginView();\r\n this.cipher.login.uris = [new LoginUriView()];\r\n this.cipher.card = new CardView();\r\n this.cipher.identity = new IdentityView();\r\n this.cipher.secureNote = new SecureNoteView();\r\n this.cipher.secureNote.type = SecureNoteType.Generic;\r\n\r\n await this.organizationChanged();\r\n if (this.collectionIds != null && this.collectionIds.length > 0 && this.collections.length > 0) {\r\n this.collections.forEach((c) => {\r\n if (this.collectionIds.indexOf(c.id) > -1) {\r\n (c as any).checked = true;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.folders = await this.folderService.getAllDecrypted();\r\n }\r\n\r\n async submit(): Promise {\r\n if (this.cipher.name == null || this.cipher.name === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('nameRequired'));\r\n return false;\r\n }\r\n\r\n if (!this.editMode && this.cipher.type === CipherType.Login &&\r\n this.cipher.login.uris != null && this.cipher.login.uris.length === 1 &&\r\n (this.cipher.login.uris[0].uri == null || this.cipher.login.uris[0].uri === '')) {\r\n this.cipher.login.uris = null;\r\n }\r\n\r\n if (!this.editMode && this.cipher.organizationId != null) {\r\n this.cipher.collectionIds = this.collections == null ? [] :\r\n this.collections.filter((c) => (c as any).checked).map((c) => c.id);\r\n }\r\n\r\n const cipher = await this.encryptCipher();\r\n try {\r\n this.formPromise = this.saveCipher(cipher);\r\n await this.formPromise;\r\n this.cipher.id = cipher.id;\r\n this.platformUtilsService.eventTrack(this.editMode ? 'Edited Cipher' : 'Added Cipher');\r\n this.platformUtilsService.showToast('success', null,\r\n this.i18nService.t(this.editMode ? 'editedItem' : 'addedItem'));\r\n this.onSavedCipher.emit(this.cipher);\r\n return true;\r\n } catch { }\r\n\r\n return false;\r\n }\r\n\r\n addUri() {\r\n if (this.cipher.type !== CipherType.Login) {\r\n return;\r\n }\r\n\r\n if (this.cipher.login.uris == null) {\r\n this.cipher.login.uris = [];\r\n }\r\n\r\n this.cipher.login.uris.push(new LoginUriView());\r\n }\r\n\r\n removeUri(uri: LoginUriView) {\r\n if (this.cipher.type !== CipherType.Login || this.cipher.login.uris == null) {\r\n return;\r\n }\r\n\r\n const i = this.cipher.login.uris.indexOf(uri);\r\n if (i > -1) {\r\n this.cipher.login.uris.splice(i, 1);\r\n }\r\n }\r\n\r\n addField() {\r\n if (this.cipher.fields == null) {\r\n this.cipher.fields = [];\r\n }\r\n\r\n const f = new FieldView();\r\n f.type = this.addFieldType;\r\n this.cipher.fields.push(f);\r\n }\r\n\r\n removeField(field: FieldView) {\r\n const i = this.cipher.fields.indexOf(field);\r\n if (i > -1) {\r\n this.cipher.fields.splice(i, 1);\r\n }\r\n }\r\n\r\n cancel() {\r\n this.onCancelled.emit(this.cipher);\r\n }\r\n\r\n attachments() {\r\n this.onEditAttachments.emit(this.cipher);\r\n }\r\n\r\n share() {\r\n this.onShareCipher.emit(this.cipher);\r\n }\r\n\r\n editCollections() {\r\n this.onEditCollections.emit(this.cipher);\r\n }\r\n\r\n async delete(): Promise {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteItemConfirmation'), this.i18nService.t('deleteItem'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.deleteCipher();\r\n await this.deletePromise;\r\n this.platformUtilsService.eventTrack('Deleted Cipher');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('deletedItem'));\r\n this.onDeletedCipher.emit(this.cipher);\r\n } catch { }\r\n\r\n return true;\r\n }\r\n\r\n async generatePassword(): Promise {\r\n if (this.cipher.login != null && this.cipher.login.password != null && this.cipher.login.password.length) {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('overwritePasswordConfirmation'), this.i18nService.t('overwritePassword'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'));\r\n if (!confirmed) {\r\n return false;\r\n }\r\n }\r\n\r\n this.onGeneratePassword.emit();\r\n return true;\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Password on Edit');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('loginPassword').focus();\r\n }\r\n\r\n toggleCardCode() {\r\n this.platformUtilsService.eventTrack('Toggled CardCode on Edit');\r\n this.showCardCode = !this.showCardCode;\r\n document.getElementById('cardCode').focus();\r\n }\r\n\r\n toggleFieldValue(field: FieldView) {\r\n const f = (field as any);\r\n f.showValue = !f.showValue;\r\n }\r\n\r\n toggleUriOptions(uri: LoginUriView) {\r\n const u = (uri as any);\r\n u.showOptions = u.showOptions == null && uri.match != null ? false : !u.showOptions;\r\n }\r\n\r\n loginUriMatchChanged(uri: LoginUriView) {\r\n const u = (uri as any);\r\n u.showOptions = u.showOptions == null ? true : u.showOptions;\r\n }\r\n\r\n async organizationChanged() {\r\n if (this.writeableCollections != null) {\r\n this.writeableCollections.forEach((c) => (c as any).checked = false);\r\n }\r\n if (this.cipher.organizationId != null) {\r\n this.collections = this.writeableCollections.filter((c) => c.organizationId === this.cipher.organizationId);\r\n const org = await this.userService.getOrganization(this.cipher.organizationId);\r\n if (org != null) {\r\n this.cipher.organizationUseTotp = org.useTotp;\r\n }\r\n } else {\r\n this.collections = [];\r\n }\r\n }\r\n\r\n async checkPassword() {\r\n if (this.checkPasswordPromise != null) {\r\n return;\r\n }\r\n\r\n if (this.cipher.login == null || this.cipher.login.password == null || this.cipher.login.password === '') {\r\n return;\r\n }\r\n\r\n this.platformUtilsService.eventTrack('Check Password');\r\n this.checkPasswordPromise = this.auditService.passwordLeaked(this.cipher.login.password);\r\n const matches = await this.checkPasswordPromise;\r\n this.checkPasswordPromise = null;\r\n\r\n if (matches > 0) {\r\n this.platformUtilsService.showToast('warning', null,\r\n this.i18nService.t('passwordExposed', matches.toString()));\r\n } else {\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('passwordSafe'));\r\n }\r\n }\r\n\r\n protected async loadCollections() {\r\n const allCollections = await this.collectionService.getAllDecrypted();\r\n return allCollections.filter((c) => !c.readOnly);\r\n }\r\n\r\n protected loadCipher() {\r\n return this.cipherService.get(this.cipherId);\r\n }\r\n\r\n protected encryptCipher() {\r\n return this.cipherService.encrypt(this.cipher);\r\n }\r\n\r\n protected saveCipher(cipher: Cipher) {\r\n return this.cipherService.saveWithServer(cipher);\r\n }\r\n\r\n protected deleteCipher() {\r\n return this.cipherService.deleteWithServer(this.cipher.id);\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { Cipher } from '../../models/domain/cipher';\r\n\r\nimport { AttachmentView } from '../../models/view/attachmentView';\r\nimport { CipherView } from '../../models/view/cipherView';\r\n\r\nexport class AttachmentsComponent implements OnInit {\r\n @Input() cipherId: string;\r\n @Output() onUploadedAttachment = new EventEmitter();\r\n @Output() onDeletedAttachment = new EventEmitter();\r\n @Output() onReuploadedAttachment = new EventEmitter();\r\n\r\n cipher: CipherView;\r\n cipherDomain: Cipher;\r\n hasUpdatedKey: boolean;\r\n canAccessAttachments: boolean;\r\n formPromise: Promise;\r\n deletePromises: { [id: string]: Promise; } = {};\r\n reuploadPromises: { [id: string]: Promise; } = {};\r\n\r\n constructor(protected cipherService: CipherService, protected i18nService: I18nService,\r\n protected cryptoService: CryptoService, protected userService: UserService,\r\n protected platformUtilsService: PlatformUtilsService, protected win: Window) { }\r\n\r\n async ngOnInit() {\r\n this.cipherDomain = await this.loadCipher();\r\n this.cipher = await this.cipherDomain.decrypt();\r\n\r\n this.hasUpdatedKey = await this.cryptoService.hasEncKey();\r\n const canAccessPremium = await this.userService.canAccessPremium();\r\n this.canAccessAttachments = canAccessPremium || this.cipher.organizationId != null;\r\n\r\n if (!this.canAccessAttachments) {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('premiumRequiredDesc'), this.i18nService.t('premiumRequired'),\r\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'));\r\n if (confirmed) {\r\n this.platformUtilsService.launchUri('https://vault.bitwarden.com/#/?premium=purchase');\r\n }\r\n } else if (!this.hasUpdatedKey) {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('updateKey'), this.i18nService.t('featureUnavailable'),\r\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'), 'warning');\r\n if (confirmed) {\r\n this.platformUtilsService.launchUri('https://help.bitwarden.com/article/update-encryption-key/');\r\n }\r\n }\r\n }\r\n\r\n async submit() {\r\n if (!this.hasUpdatedKey) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('updateKey'));\r\n return;\r\n }\r\n\r\n const fileEl = document.getElementById('file') as HTMLInputElement;\r\n const files = fileEl.files;\r\n if (files == null || files.length === 0) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('selectFile'));\r\n return;\r\n }\r\n\r\n if (files[0].size > 104857600) { // 100 MB\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('maxFileSize'));\r\n return;\r\n }\r\n\r\n try {\r\n this.formPromise = this.saveCipherAttachment(files[0]);\r\n this.cipherDomain = await this.formPromise;\r\n this.cipher = await this.cipherDomain.decrypt();\r\n this.platformUtilsService.eventTrack('Added Attachment');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('attachmentSaved'));\r\n this.onUploadedAttachment.emit();\r\n } catch { }\r\n\r\n // reset file input\r\n // ref: https://stackoverflow.com/a/20552042\r\n fileEl.type = '';\r\n fileEl.type = 'file';\r\n fileEl.value = '';\r\n }\r\n\r\n async delete(attachment: AttachmentView) {\r\n if (this.deletePromises[attachment.id] != null) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteAttachmentConfirmation'), this.i18nService.t('deleteAttachment'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return;\r\n }\r\n\r\n try {\r\n this.deletePromises[attachment.id] = this.deleteCipherAttachment(attachment.id);\r\n await this.deletePromises[attachment.id];\r\n this.platformUtilsService.eventTrack('Deleted Attachment');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('deletedAttachment'));\r\n const i = this.cipher.attachments.indexOf(attachment);\r\n if (i > -1) {\r\n this.cipher.attachments.splice(i, 1);\r\n }\r\n } catch { }\r\n\r\n this.deletePromises[attachment.id] = null;\r\n this.onDeletedAttachment.emit();\r\n }\r\n\r\n async download(attachment: AttachmentView) {\r\n const a = (attachment as any);\r\n if (a.downloading) {\r\n return;\r\n }\r\n\r\n if (!this.canAccessAttachments) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('premiumRequired'),\r\n this.i18nService.t('premiumRequiredDesc'));\r\n return;\r\n }\r\n\r\n a.downloading = true;\r\n const response = await fetch(new Request(attachment.url, { cache: 'no-cache' }));\r\n if (response.status !== 200) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n a.downloading = false;\r\n return;\r\n }\r\n\r\n try {\r\n const buf = await response.arrayBuffer();\r\n const key = attachment.key != null ? attachment.key :\r\n await this.cryptoService.getOrgKey(this.cipher.organizationId);\r\n const decBuf = await this.cryptoService.decryptFromBytes(buf, key);\r\n this.platformUtilsService.saveFile(this.win, decBuf, null, attachment.fileName);\r\n } catch (e) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n }\r\n\r\n a.downloading = false;\r\n }\r\n\r\n protected async reuploadCipherAttachment(attachment: AttachmentView, admin: boolean) {\r\n const a = (attachment as any);\r\n if (attachment.key != null || a.downloading || this.reuploadPromises[attachment.id] != null) {\r\n return;\r\n }\r\n\r\n try {\r\n this.reuploadPromises[attachment.id] = Promise.resolve().then(async () => {\r\n // 1. Download\r\n a.downloading = true;\r\n const response = await fetch(new Request(attachment.url, { cache: 'no-cache' }));\r\n if (response.status !== 200) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n a.downloading = false;\r\n return;\r\n }\r\n\r\n try {\r\n // 2. Resave\r\n const buf = await response.arrayBuffer();\r\n const key = attachment.key != null ? attachment.key :\r\n await this.cryptoService.getOrgKey(this.cipher.organizationId);\r\n const decBuf = await this.cryptoService.decryptFromBytes(buf, key);\r\n this.cipherDomain = await this.cipherService.saveAttachmentRawWithServer(\r\n this.cipherDomain, attachment.fileName, decBuf, admin);\r\n this.cipher = await this.cipherDomain.decrypt();\r\n\r\n // 3. Delete old\r\n this.deletePromises[attachment.id] = this.deleteCipherAttachment(attachment.id);\r\n await this.deletePromises[attachment.id];\r\n const foundAttachment = this.cipher.attachments.filter((a2) => a2.id === attachment.id);\r\n if (foundAttachment.length > 0) {\r\n const i = this.cipher.attachments.indexOf(foundAttachment[0]);\r\n if (i > -1) {\r\n this.cipher.attachments.splice(i, 1);\r\n }\r\n }\r\n\r\n this.platformUtilsService.eventTrack('Reuploaded Attachment');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('attachmentSaved'));\r\n this.onReuploadedAttachment.emit();\r\n } catch (e) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n }\r\n\r\n a.downloading = false;\r\n });\r\n await this.reuploadPromises[attachment.id];\r\n } catch { }\r\n }\r\n\r\n protected loadCipher() {\r\n return this.cipherService.get(this.cipherId);\r\n }\r\n\r\n protected saveCipherAttachment(file: File) {\r\n return this.cipherService.saveAttachmentWithServer(this.cipherDomain, file);\r\n }\r\n\r\n protected deleteCipherAttachment(attachmentId: string) {\r\n return this.cipherService.deleteAttachmentWithServer(this.cipher.id, attachmentId);\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { CipherView } from '../../models/view/cipherView';\r\nimport { CollectionView } from '../../models/view/collectionView';\r\n\r\nimport { Cipher } from '../../models/domain/cipher';\r\n\r\nexport class CollectionsComponent implements OnInit {\r\n @Input() cipherId: string;\r\n @Output() onSavedCollections = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n cipher: CipherView;\r\n collectionIds: string[];\r\n collections: CollectionView[] = [];\r\n\r\n protected cipherDomain: Cipher;\r\n\r\n constructor(protected collectionService: CollectionService, protected platformUtilsService: PlatformUtilsService,\r\n protected i18nService: I18nService, protected cipherService: CipherService) { }\r\n\r\n async ngOnInit() {\r\n await this.load();\r\n }\r\n\r\n async load() {\r\n this.cipherDomain = await this.loadCipher();\r\n this.collectionIds = this.loadCipherCollections();\r\n this.cipher = await this.cipherDomain.decrypt();\r\n this.collections = await this.loadCollections();\r\n\r\n this.collections.forEach((c) => (c as any).checked = false);\r\n if (this.collectionIds != null) {\r\n this.collections.forEach((c) => {\r\n (c as any).checked = this.collectionIds != null && this.collectionIds.indexOf(c.id) > -1;\r\n });\r\n }\r\n }\r\n\r\n async submit() {\r\n this.cipherDomain.collectionIds = this.collections\r\n .filter((c) => !!(c as any).checked)\r\n .map((c) => c.id);\r\n try {\r\n this.formPromise = this.saveCollections();\r\n await this.formPromise;\r\n this.onSavedCollections.emit();\r\n this.platformUtilsService.eventTrack('Edited Cipher Collections');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('editedItem'));\r\n } catch { }\r\n }\r\n\r\n protected loadCipher() {\r\n return this.cipherService.get(this.cipherId);\r\n }\r\n\r\n protected loadCipherCollections() {\r\n return this.cipherDomain.collectionIds;\r\n }\r\n\r\n protected async loadCollections() {\r\n const allCollections = await this.collectionService.getAllDecrypted();\r\n return allCollections.filter((c) => !c.readOnly && c.organizationId === this.cipher.organizationId);\r\n }\r\n\r\n protected saveCollections() {\r\n return this.cipherService.saveCollectionsWithServer(this.cipherDomain);\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { FolderService } from '../../abstractions/folder.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { FolderView } from '../../models/view/folderView';\r\n\r\nexport class FolderAddEditComponent implements OnInit {\r\n @Input() folderId: string;\r\n @Output() onSavedFolder = new EventEmitter();\r\n @Output() onDeletedFolder = new EventEmitter();\r\n\r\n editMode: boolean = false;\r\n folder: FolderView = new FolderView();\r\n title: string;\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n\r\n constructor(protected folderService: FolderService, protected i18nService: I18nService,\r\n protected platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.folderId != null;\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editFolder');\r\n const folder = await this.folderService.get(this.folderId);\r\n this.folder = await folder.decrypt();\r\n } else {\r\n this.title = this.i18nService.t('addFolder');\r\n }\r\n }\r\n\r\n async submit(): Promise {\r\n if (this.folder.name == null || this.folder.name === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('nameRequired'));\r\n return false;\r\n }\r\n\r\n try {\r\n const folder = await this.folderService.encrypt(this.folder);\r\n this.formPromise = this.folderService.saveWithServer(folder);\r\n await this.formPromise;\r\n this.platformUtilsService.eventTrack(this.editMode ? 'Edited Folder' : 'Added Folder');\r\n this.platformUtilsService.showToast('success', null,\r\n this.i18nService.t(this.editMode ? 'editedFolder' : 'addedFolder'));\r\n this.onSavedFolder.emit(this.folder);\r\n return true;\r\n } catch { }\r\n\r\n return false;\r\n }\r\n\r\n async delete(): Promise {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteFolderConfirmation'), this.i18nService.t('deleteFolder'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.folderService.deleteWithServer(this.folder.id);\r\n await this.deletePromise;\r\n this.platformUtilsService.eventTrack('Deleted Folder');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('deletedFolder'));\r\n this.onDeletedFolder.emit(this.folder);\r\n } catch { }\r\n\r\n return true;\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { Organization } from '../../models/domain/organization';\r\nimport { CipherView } from '../../models/view/cipherView';\r\nimport { CollectionView } from '../../models/view/collectionView';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class ShareComponent implements OnInit {\r\n @Input() cipherId: string;\r\n @Input() organizationId: string;\r\n @Output() onSharedCipher = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n cipher: CipherView;\r\n collections: CollectionView[] = [];\r\n organizations: Organization[] = [];\r\n\r\n protected writeableCollections: CollectionView[] = [];\r\n\r\n constructor(protected collectionService: CollectionService, protected platformUtilsService: PlatformUtilsService,\r\n protected i18nService: I18nService, protected userService: UserService,\r\n protected cipherService: CipherService) { }\r\n\r\n async ngOnInit() {\r\n await this.load();\r\n }\r\n\r\n async load() {\r\n const allCollections = await this.collectionService.getAllDecrypted();\r\n this.writeableCollections = allCollections.map((c) => c).filter((c) => !c.readOnly)\r\n .sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n const orgs = await this.userService.getAllOrganizations();\r\n this.organizations = orgs.sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n\r\n const cipherDomain = await this.cipherService.get(this.cipherId);\r\n this.cipher = await cipherDomain.decrypt();\r\n if (this.organizationId == null && this.organizations.length > 0) {\r\n this.organizationId = this.organizations[0].id;\r\n }\r\n this.filterCollections();\r\n }\r\n\r\n filterCollections() {\r\n this.writeableCollections.forEach((c) => (c as any).checked = false);\r\n if (this.organizationId == null || this.writeableCollections.length === 0) {\r\n this.collections = [];\r\n } else {\r\n this.collections = this.writeableCollections.filter((c) => c.organizationId === this.organizationId);\r\n }\r\n }\r\n\r\n async submit() {\r\n const cipherDomain = await this.cipherService.get(this.cipherId);\r\n const cipherView = await cipherDomain.decrypt();\r\n\r\n const checkedCollectionIds = this.collections.filter((c) => (c as any).checked).map((c) => c.id);\r\n try {\r\n this.formPromise = this.cipherService.shareWithServer(cipherView, this.organizationId,\r\n checkedCollectionIds).then(async () => {\r\n this.onSharedCipher.emit();\r\n this.platformUtilsService.eventTrack('Shared Cipher');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('sharedItem'));\r\n });\r\n await this.formPromise;\r\n } catch { }\r\n }\r\n\r\n get canSave() {\r\n if (this.collections != null) {\r\n for (let i = 0; i < this.collections.length; i++) {\r\n if ((this.collections[i] as any).checked) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n}\r\n","\n","
\r\n

{{'myAccount' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'changeEmail' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'changeMasterPassword' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'encKeySettings' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'dangerZone' | i18n}}

\r\n
\r\n
\r\n
\r\n

{{'dangerZoneDesc' | i18n}}

\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n","
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n
\n

\n {{'yourAccountsFingerprint' | i18n}}:\n \n
\n {{fingerprint}}\n

\n
\n
\n \n
\n","export class UpdateProfileRequest {\n name: string;\n masterPasswordHint: string;\n culture = 'en-US'; // deprecated\n\n constructor(name: string, masterPasswordHint: string) {\n this.name = name;\n this.masterPasswordHint = masterPasswordHint ? masterPasswordHint : null;\n }\n}\n","
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n
\n

{{'changeEmailDesc' | i18n : newEmail}}

\n {{'loggedOutWarning' | i18n}}\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n","import { EmailTokenRequest } from './emailTokenRequest';\n\nexport class EmailRequest extends EmailTokenRequest {\n newMasterPasswordHash: string;\n token: string;\n key: string;\n}\n","{{'loggedOutWarning' | i18n}}\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n
\n
\n \n
\n","{{'loggedOutWarning' | i18n}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'kdfIterationsDesc' | i18n : (100000 | number)}}

\r\n {{'warning' | i18n}}: {{'kdfIterationsWarning' | i18n : (50000 | number)}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { PasswordRequest } from './passwordRequest';\r\n\r\nimport { KdfType } from '../../enums/kdfType';\r\n\r\nexport class KdfRequest extends PasswordRequest {\r\n kdf: KdfType;\r\n kdfIterations: number;\r\n}\r\n","
\n

{{'options' | i18n}}

\n
\n

{{'optionsDesc' | i18n}}

\n
\n
\n
\n
\n \n \n {{'lockOptionsDesc' | i18n}}\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n \n {{'languageDesc' | i18n}}\n
\n
\n
\n
\n
\n \n \n \n \n \n
\n {{'disableIconsDesc' | i18n}}\n
\n
\n
\n \n \n \n \n \n
\n {{'enableGravatarsDesc' | i18n}}\n
\n \n
\n","
\n

{{'domainRules' | i18n}}

\n
\n

{{'domainRulesDesc' | i18n}}

\n
\n

{{'customEqDomains' | i18n}}

\n

\n \n

\n \n
\n
\n \n \n
\n \n
\n \n {{'newCustomDomainDesc' | i18n}}\n
\n \n

{{'globalEqDomains' | i18n}}

\n

\n \n

\n 0\">\n \n \n \n \n \n \n
{{d.domains}}\n \n
\n \n
\n","export class UpdateDomainsRequest {\n equivalentDomains: string[][];\n excludedGlobalEquivalentDomains: number[];\n}\n","
\n

{{'twoStepLogin' | i18n}}

\n
\n

{{'twoStepLoginDesc' | i18n}}

\n

{{'twoStepLoginOrganizationDesc' | i18n}}

\n\n

{{'twoStepLoginRecoveryWarning' | i18n}}

\n \n
\n

\n {{'providers' | i18n}}\n \n \n \n

\n\n\n\n\n\n\n\n\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorAuthenticatorRequest extends PasswordVerificationRequest {\n token: string;\n key: string;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nexport class TwoFactorProviderRequest extends PasswordVerificationRequest {\n type: TwoFactorProviderType;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorDuoRequest extends PasswordVerificationRequest {\n integrationKey: string;\n secretKey: string;\n host: string;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorEmailRequest extends PasswordVerificationRequest {\n token: string;\n email: string;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorU2fDeleteRequest extends PasswordVerificationRequest {\n id: number;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorU2fRequest extends PasswordVerificationRequest {\n deviceResponse: string;\n name: string;\n id: number;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorYubioOtpRequest extends PasswordVerificationRequest {\n key1: string;\n key2: string;\n key3: string;\n key4: string;\n key5: string;\n nfc: boolean;\n}\n","
\n

{{'goPremium' | i18n}}

\n
\n\n {{'alreadyPremiumFromOrg' | i18n}}\n\n\n

{{'premiumUpgradeUnlockFeatures' | i18n}}

\n
    \n
  • \n \n {{'premiumSignUpStorage' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpTwoStep' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpReports' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpTotp' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpSupport' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpFuture' | i18n}}\n
  • \n
\n

{{'premiumPrice' | i18n : (premiumPrice | currency:'$')}}

\n \n {{'purchasePremium' | i18n}}\n \n
\n\n

{{'uploadLicenseFilePremium' | i18n}}

\n
\n
\n \n \n {{'licenseFileDesc' | i18n : 'bitwarden_premium_license.json'}}\n
\n \n
\n
\n
\n

{{'addons' | i18n}}

\n
\n
\n \n \n {{'additionalStorageIntervalDesc' | i18n : '1 GB' : (storageGbPrice | currency:'$') : ('year' | i18n)}}\n
\n
\n

{{'summary' | i18n}}

\n {{'premiumMembership' | i18n}}: {{premiumPrice | currency:'$'}}\n
{{'additionalStorageGb' | i18n}}: {{additionalStorage || 0}} GB × {{storageGbPrice | currency:'$'}} = {{additionalStorageTotal\n | currency:'$'}}\n
\n
\n {{'total' | i18n}}: {{total | currency:'USD $'}} /{{'year' | i18n}}\n
\n {{'paymentChargedAnnually' | i18n}}\n

{{'paymentInformation' | i18n}}

\n \n \n
\n","
\n

\n {{'billingAndLicensing' | i18n}}\n \n \n \n

\n
\n\n\n {{'subscriptionCanceled' | i18n}}\n \n

{{'subscriptionPendingCanceled' | i18n}}

\n \n
\n
\n
{{'subscription' | i18n}}
\n
{{'premiumMembership' | i18n}}
\n
\n
\n
{{'expiration' | i18n}}
\n
{{billing.expiration | date:'mediumDate'}}
\n
{{'neverExpires' | i18n}}
\n
\n
\n
\n
\n
{{'status' | i18n}}
\n
\n {{(subscription && subscription.status) || '-'}}\n {{'pendingCancellation' | i18n}}\n
\n
{{'nextCharge' | i18n}}
\n
{{nextInvoice ? ((nextInvoice.date | date: 'mediumDate') + ', ' + (nextInvoice.amount | currency:'$')) :\n '-'}}\n
\n
\n
\n
\n {{'details' | i18n}}\n \n \n \n \n \n \n \n
\n {{i.name}} {{i.quantity > 1 ? '×' + i.quantity : ''}} @ {{i.amount | currency:'$'}}\n \n {{(i.quantity * i.amount) | currency:'$'}} /{{i.interval | i18n}}\n
\n
\n
\n \n
\n \n \n {{'manageSubscription' | i18n}}\n \n
\n
\n
\n

{{'updateLicense' | i18n}}

\n \n
\n
\n
\n \n
\n \n \n
\n

{{'storage' | i18n}}

\n

{{'subscriptionStorage' | i18n : billing.maxStorageGb || 0 : billing.storageName || '0 MB'}}

\n
\n
{{(storagePercentage / 100) | percent}}
\n
\n \n
\n
\n \n \n
\n \n
\n
\n

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n

\n \n {{paymentSource.description}}\n

\n \n \n \n

{{'charges' | i18n}}

\n

{{'noCharges' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{c.createdDate | date:'mediumDate'}}{{c.paymentSource ? c.paymentSource.description : '-'}}{{c.status}}{{c.amount | currency:'$'}}
\n * {{'chargesStatement' | i18n : 'BITWARDEN'}}\n
\n
\n","export class StorageRequest {\n storageGbAdjustment: number;\n}\n","export class PaymentRequest {\n paymentToken: string;\n}\n","
\n

{{'newOrganization' | i18n}}

\n
\n

{{'newOrganizationDesc' | i18n}}

\n\n

{{'uploadLicenseFileOrg' | i18n}}

\n
\n
\n \n \n {{'licenseFileDesc' | i18n : 'bitwarden_organization_license.json'}}\n
\n \n
\n
\n
\n

{{'generalInformation' | i18n}}

\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n

{{'chooseYourPlan' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n

{{'users' | i18n}}

\n
\n
\n \n \n {{'userSeatsHowManyDesc' | i18n}}\n
\n
\n
\n

{{'addons' | i18n}}

\n
\n
\n \n \n {{'userSeatsAdditionalDesc' | i18n : plans[plan].baseSeats : (plans[plan].seatPrice | currency:'$')}}\n
\n
\n
\n
\n \n \n {{'additionalStorageIntervalDesc' | i18n : '1 GB' : (storageGb.price | currency:'$') : ('month' | i18n)}}\n
\n
\n
\n
\n
\n \n \n
\n {{'premiumAccessDesc' | i18n : (3.33 | currency:'$') : ('month' | i18n)}}\n
\n
\n

{{'summary' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n
\n {{'total' | i18n}}: {{total | currency:'USD $'}} /{{interval | i18n}}\n
\n {{'paymentChargedWithTrial' | i18n : (interval | i18n) }}\n

{{'paymentInformation' | i18n}}

\n \n
\n
\n \n
\n
\n","import { PlanType } from '../../enums/planType';\n\nexport class OrganizationCreateRequest {\n name: string;\n businessName: string;\n billingEmail: string;\n planType: PlanType;\n key: string;\n paymentToken: string;\n additionalSeats: number;\n additionalStorageGb: number;\n premiumAccessAddon: boolean;\n collectionName: string;\n country: string;\n}\n","\n","
\n

{{'importData' | i18n}}

\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n \n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/export-your-data/\n \n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/import-from-lastpass/\n \n \n Using the KeePassX desktop application, navigate to \"Database\" → \"Export to CSV file\" and save the CSV file.\n \n \n In the Avira web vault, go to \"Settings\" → \"My Data\" → \"Export data\" and save the CSV file.\n \n \n In the Blur web vault, click your username at the top and go to \"Settings\" → \"Export Data\", then click \"Export CSV\"\n for your \"Accounts\".\n \n \n Using the SaveInCloud desktop application, navigate to \"File\" → \"Export\" → \"As XML\" and save the XML file.\n \n \n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to \"Settings\" →\n \"Export\" button and save the file \"As CSV\".\n \n \n Using the KeePass 2 desktop application, navigate to \"File\" → \"Export\" and select the \"KeePass XML (2.x)\" option.\n \n \n Using the Universal Password Manager desktop application, navigate to \"Database\" → \"Export\" and save the CSV file.\n \n \n Using the SaferPass browser extension, click the hamburger icon in the top left corner and navigate to \"Settings\". Click\n the \"Export accounts\" button to save the CSV file.\n \n \n Using the Meldium web vault, navigate to \"Settings\". Locate the \"Export data\" function and click \"Show me my data\" to save\n the CSV file.\n \n \n Log into the Keeper web vault (keepersecurity.com/vault). Navigate to \"Backup\" (top right) and find the \"Export to .csv File\"\n option. Click \"Export Now\" to save the CSV file.\n \n \n \n The process is exactly the same as importing from Google Chrome.\n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/import-from-chrome/\n \n \n Use the\n FF Password Exporter application to export your passwords to a CSV file.\n \n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/import-from-1password/.\n \n \n Using the Password Dragon desktop application, navigate to \"File\" → \"Export\" → \"To XML\". In the dialog that pops\n up select \"All Rows\" and check all fields. Click the \"Export\" button and save the XML file.\n \n \n Using the Enpass desktop application, navigate to \"File\" → \"Export\" → \"As CSV\". Select \"OK\" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n \n \n Using the Enpass 6 desktop application, click the menu button and navigate to \"File\" → \"Export\".\n Select the \".json\" file format option and save the JSON file.\n \n \n Using the Password Safe desktop application, navigate to \"File\" → \"Export To\" → \"XML format...\" and save the XML\n file.\n \n \n Using the Dashlane desktop application, navigate to \"File\" → \"Export\" → \"Unsecured archive (readable) in JSON format\"\n and save the JSON file.\n \n \n Using the mSecure desktop application, navigate to \"File\" → \"Export\" → \"CSV File...\" and save the CSV file.\n \n \n Using the Sticky Password desktop application, navigate to \"Menu\" (top right) → \"Export\" → \"Export all\". Select\n the unencrypted format XML option and save the XML file.\n \n \n Using the True Key desktop application, click the gear icon (top right) and then navigate to \"App Settings\". Click the \"Export\"\n button, enter your password and save the CSV file.\n \n \n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to \"Data\" → \"Export\". Click the \"download HTML+JSON\" button to save the HTML file.\n \n \n Using the RoboForm Editor desktop application, navigate to \"RoboForm\" (top left) → \"Options\" → \"Account & Data\"\n and click the \"Export\" button. Select all of your data, change the \"Format\" to \"CSV file\" and then click the\n \"Export\" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n \n \n Log into the Passbolt web vault and navigate to the \"Passwords\" listing. Select all of the passwords you would like to export\n and click the \"Export\" button at the top of the listing. Choose the \"csv (lastpass)\" export format and click\n the \"Export\" button.\n \n \n Using the Ascendo DataVault desktop application, navigate to \"Tools\" → \"Export\". In the dialog that pops up, select\n the \"All Items (DVX, CSV)\" option. Click the \"Ok\" button to save the CSV file.\n \n \n Using the Password Boss desktop application, navigate to \"File\" → \"Export data\" → \"Password Boss JSON - not encrypted\"\n and save the JSON file.\n \n \n Log into the Zoho web vault (vault.zoho.com). Navigate to \"Tools\" → \"Export Secrets\". Select \"All Secrets\" and click\n the \"Zoho Vault Format CSV\" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n zoho_export.csv.\n \n \n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to \"Export\"\n → \"Export as CSV\" and save the CSV file.\n \n \n Using the PassKeep mobile app, navigate to \"Backup/Restore\". Locate the \"CSV Backup/Restore\" section and click \"Backup to\n CSV\" to save the CSV file.\n \n \n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n GNOME Keyring Import/Export python script to your desktop as\n pw_helper.py. Open terminal and run\n chmod +rx Desktop/pw_helper.py and then\n python Desktop/pw_helper.py export Desktop/my_passwords.json. Then upload the resulting\n my_passwords.json file here to Bitwarden.\n \n \n Using the Password Agent desktop application navigate to \"File\" → \"Export\", select the \"Fields to export\" button and\n check all of the fields, change the \"Output format\" to \"CSV\", and then click the \"Start\" button to save the CSV\n file.\n \n \n Log into the Passpack website vault and navigate to \"Settings\" → \"Export\", then click the \"Download\" button to save\n the CSV file.\n \n \n Open your Passman vault and click on \"Settings\" in the bottom left corner. In the \"Settings\" window switch to the\n \"Export credentials\" tab and choose \"JSON\" as the export type. Enter your vault's passphrase and click the \"Export\"\n button to save the JSON file.\n \n \n Open the Avast Passwords desktop application and navigate to \"Settings\" → \"Import/export data\". Select the\n \"Export\" button for the \"Export to CSV file\" option to save the CSV file.\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n","
\n
\n

{{'exportVault' | i18n}}

\n
\n

{{'exportMasterPassword' | i18n}}

\n {{'exportWarningDesc' | i18n}}\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n
\n","import {\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { ExportService } from '../../abstractions/export.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class ExportComponent {\r\n @Output() onSaved = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n masterPassword: string;\r\n format: 'json' | 'csv' = 'json';\r\n showPassword = false;\r\n\r\n constructor(protected cryptoService: CryptoService, protected i18nService: I18nService,\r\n protected platformUtilsService: PlatformUtilsService, protected exportService: ExportService,\r\n protected win: Window) { }\r\n\r\n async submit() {\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidMasterPassword'));\r\n return;\r\n }\r\n\r\n const keyHash = await this.cryptoService.hashPassword(this.masterPassword, null);\r\n const storedKeyHash = await this.cryptoService.getKeyHash();\r\n if (storedKeyHash != null && keyHash != null && storedKeyHash === keyHash) {\r\n try {\r\n this.formPromise = this.getExportData();\r\n const data = await this.formPromise;\r\n this.platformUtilsService.eventTrack('Exported Data');\r\n this.downloadFile(data);\r\n this.saved();\r\n } catch { }\r\n } else {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidMasterPassword'));\r\n }\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Export');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('masterPassword').focus();\r\n }\r\n\r\n protected saved() {\r\n this.onSaved.emit();\r\n }\r\n\r\n protected getExportData() {\r\n return this.exportService.getExport(this.format);\r\n }\r\n\r\n protected getFileName(prefix?: string) {\r\n return this.exportService.getFileName(prefix, this.format);\r\n }\r\n\r\n private downloadFile(csv: string): void {\r\n const fileName = this.getFileName();\r\n this.platformUtilsService.saveFile(this.win, csv, { type: 'text/plain' }, fileName);\r\n }\r\n}\r\n","
\n

{{'passwordGenerator' | i18n}}

\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n
\n\n","import {\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { PasswordGenerationService } from '../../abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nexport class PasswordGeneratorComponent implements OnInit {\n @Input() showSelect: boolean = false;\n @Output() onSelected = new EventEmitter();\n\n options: any = {};\n password: string = '-';\n showOptions = false;\n avoidAmbiguous = false;\n\n constructor(protected passwordGenerationService: PasswordGenerationService,\n protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,\n private win: Window) { }\n\n async ngOnInit() {\n this.options = await this.passwordGenerationService.getOptions();\n this.avoidAmbiguous = !this.options.ambiguous;\n this.options.type = this.options.type === 'passphrase' ? 'passphrase' : 'password';\n this.password = await this.passwordGenerationService.generatePassword(this.options);\n this.platformUtilsService.eventTrack('Generated Password');\n await this.passwordGenerationService.addHistory(this.password);\n }\n\n async sliderChanged() {\n this.saveOptions(false);\n await this.passwordGenerationService.addHistory(this.password);\n this.platformUtilsService.eventTrack('Regenerated Password');\n }\n\n async sliderInput() {\n this.normalizeOptions();\n this.password = await this.passwordGenerationService.generatePassword(this.options);\n }\n\n async saveOptions(regenerate: boolean = true) {\n this.normalizeOptions();\n await this.passwordGenerationService.saveOptions(this.options);\n\n if (regenerate) {\n await this.regenerate();\n }\n }\n\n async regenerate() {\n this.password = await this.passwordGenerationService.generatePassword(this.options);\n await this.passwordGenerationService.addHistory(this.password);\n this.platformUtilsService.eventTrack('Regenerated Password');\n }\n\n copy() {\n this.platformUtilsService.eventTrack('Copied Generated Password');\n const copyOptions = this.win != null ? { window: this.win } : null;\n this.platformUtilsService.copyToClipboard(this.password, copyOptions);\n this.platformUtilsService.showToast('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t('password')));\n }\n\n select() {\n this.platformUtilsService.eventTrack('Selected Generated Password');\n this.onSelected.emit(this.password);\n }\n\n toggleOptions() {\n this.showOptions = !this.showOptions;\n }\n\n private normalizeOptions() {\n this.options.minLowercase = 0;\n this.options.minUppercase = 0;\n this.options.ambiguous = !this.avoidAmbiguous;\n\n if (!this.options.uppercase && !this.options.lowercase && !this.options.number && !this.options.special) {\n this.options.lowercase = true;\n if (this.win != null) {\n const lowercase = this.win.document.querySelector('#lowercase') as HTMLInputElement;\n if (lowercase) {\n lowercase.checked = true;\n }\n }\n }\n\n if (!this.options.length || this.options.length < 5) {\n this.options.length = 5;\n } else if (this.options.length > 128) {\n this.options.length = 128;\n }\n\n if (!this.options.minNumber) {\n this.options.minNumber = 0;\n } else if (this.options.minNumber > this.options.length) {\n this.options.minNumber = this.options.length;\n } else if (this.options.minNumber > 9) {\n this.options.minNumber = 9;\n }\n\n if (!this.options.minSpecial) {\n this.options.minSpecial = 0;\n } else if (this.options.minSpecial > this.options.length) {\n this.options.minSpecial = this.options.length;\n } else if (this.options.minSpecial > 9) {\n this.options.minSpecial = 9;\n }\n\n if (this.options.minSpecial + this.options.minNumber > this.options.length) {\n this.options.minSpecial = this.options.length - this.options.minNumber;\n }\n\n if (this.options.numWords == null || this.options.length < 3) {\n this.options.numWords = 3;\n } else if (this.options.numWords > 20) {\n this.options.numWords = 20;\n }\n\n if (this.options.wordSeparator != null && this.options.wordSeparator.length > 1) {\n this.options.wordSeparator = this.options.wordSeparator[0];\n }\n }\n}\n","import { OnInit } from '@angular/core';\r\n\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PasswordGenerationService } from '../../abstractions/passwordGeneration.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { GeneratedPasswordHistory } from '../../models/domain/generatedPasswordHistory';\r\n\r\nexport class PasswordGeneratorHistoryComponent implements OnInit {\r\n history: GeneratedPasswordHistory[] = [];\r\n\r\n constructor(protected passwordGenerationService: PasswordGenerationService,\r\n protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,\r\n private win: Window) { }\r\n\r\n async ngOnInit() {\r\n this.history = await this.passwordGenerationService.getHistory();\r\n }\r\n\r\n clear() {\r\n this.history = [];\r\n this.passwordGenerationService.clear();\r\n }\r\n\r\n copy(password: string) {\r\n this.platformUtilsService.eventTrack('Copied Historical Password');\r\n const copyOptions = this.win != null ? { window: this.win } : null;\r\n this.platformUtilsService.copyToClipboard(password, copyOptions);\r\n this.platformUtilsService.showToast('info', null,\r\n this.i18nService.t('valueCopied', this.i18nService.t('password')));\r\n }\r\n}\r\n","
\r\n

{{'dataBreachReport' | i18n}}

\r\n
\r\n

{{'breachDesc' | i18n}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n {{'breachCheckUsernameEmail' | i18n}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'reportError' | i18n}}...

\r\n \r\n \r\n {{'breachUsernameNotFound' | i18n : checkedUsername}}\r\n \r\n \r\n {{'breachUsernameFound' | i18n : checkedUsername : breachedAccounts.length}}\r\n \r\n
    \r\n
  • \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n

    {{a.title}}

    \r\n

    \r\n

    {{'compromisedData' | i18n}}:

    \r\n
      \r\n
    • {{d}}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{'website' | i18n}}
    \r\n
    {{a.domain}}
    \r\n
    {{'affectedUsers' | i18n}}
    \r\n
    {{a.pwnCount | number}}
    \r\n
    {{'breachOccurred' | i18n}}
    \r\n
    {{a.breachDate | date: 'mediumDate'}}
    \r\n
    {{'breachReported' | i18n}}
    \r\n
    {{a.addedDate | date: 'mediumDate'}}
    \r\n
    \r\n
    \r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n","
\n

\n {{'reusedPasswordsReport' | i18n}}\n \n \n \n

\n
\n

{{'reusedPasswordsReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noReusedPasswords' | i18n}}\n \n \n \n {{'reusedPasswordsFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{'reusedXTimes' | i18n : passwordUseMap.get(c.login.password)}}\n \n
\n
\n
\n\n","
\n

\n {{'unsecuredWebsitesReport' | i18n}}\n \n \n \n

\n
\n

{{'unsecuredWebsitesReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noUnsecuredWebsites' | i18n}}\n \n \n \n {{'unsecuredWebsitesFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n
\n
\n\n","
\n

\n {{'weakPasswordsReport' | i18n}}\n \n \n \n

\n
\n

{{'weakPasswordsReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noWeakPasswords' | i18n}}\n \n \n \n {{'weakPasswordsFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{passwordStrengthMap.get(c.id)[0] | i18n}}\n \n
\n
\n
\n\n","
\n

{{'exposedPasswordsReport' | i18n}}

\n
\n

{{'exposedPasswordsReportDesc' | i18n}}

\n\n
\n \n {{'noExposedPasswords' | i18n}}\n \n \n \n {{'exposedPasswordsFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{'exposedXTimes' | i18n : (exposedPasswordMap.get(c.id) | number)}}\n \n
\n
\n
\n\n","
\n

\n {{'inactive2faReport' | i18n}}\n \n \n \n

\n
\n

{{'inactive2faReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noInactive2fa' | i18n}}\n \n \n \n {{'inactive2faFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{'instructions' | i18n}}\n
\n
\n
\n\n","\n
\n
\n
\n \n
\n {{organization.name}}\n {{'organization' | i18n}}\n
\n
\n
\n \n {{'organizationIsDisabled' | i18n}}\n
\n
\n
\n \n
\n
\n\n\n","
\n
\n
\n \n \n
\n
\n
\n

\n {{'vault' | i18n}}\n \n \n \n

\n \n
\n \n \n
\n
\n
\n\n\n\n\n","export enum EventType {\r\n User_LoggedIn = 1000,\r\n User_ChangedPassword = 1001,\r\n User_Updated2fa = 1002,\r\n User_Disabled2fa = 1003,\r\n User_Recovered2fa = 1004,\r\n User_FailedLogIn = 1005,\r\n User_FailedLogIn2fa = 1006,\r\n\r\n Cipher_Created = 1100,\r\n Cipher_Updated = 1101,\r\n Cipher_Deleted = 1102,\r\n Cipher_AttachmentCreated = 1103,\r\n Cipher_AttachmentDeleted = 1104,\r\n Cipher_Shared = 1105,\r\n Cipher_UpdatedCollections = 1106,\r\n\r\n Collection_Created = 1300,\r\n Collection_Updated = 1301,\r\n Collection_Deleted = 1302,\r\n\r\n Group_Created = 1400,\r\n Group_Updated = 1401,\r\n Group_Deleted = 1402,\r\n\r\n OrganizationUser_Invited = 1500,\r\n OrganizationUser_Confirmed = 1501,\r\n OrganizationUser_Updated = 1502,\r\n OrganizationUser_Removed = 1503,\r\n OrganizationUser_UpdatedGroups = 1504,\r\n\r\n Organization_Updated = 1600,\r\n Organization_PurgedVault = 1601,\r\n}\r\n","\n","\n","
\n

{{'collections' | i18n}}

\n
\n
\n \n \n
\n \n
\n
\n\n\n

{{'noCollectionsInList' | i18n}}

\n \n \n \n \n \n \n \n
\n {{c.name}}\n \n \n
\n
\n\n\n","
\n

{{'eventLogs' | i18n}}

\n
\n
\n \n \n -\n \n \n
\n \n
\n
\n\n\n

{{'noEventsInList' | i18n}}

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{'timestamp' | i18n}}\n {{'device' | i18n}}\n {{'user' | i18n}}{{'event' | i18n}}
{{e.date | date:'medium'}}\n \n \n {{e.userName}}\n
\n \n
\n","
\n

{{'groups' | i18n}}

\n
\n
\n \n \n
\n \n
\n
\n\n\n

{{'noGroupsInList' | i18n}}

\n \n \n \n \n \n \n \n
\n {{g.name}}\n \n \n
\n
\n\n\n","import { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class GroupRequest {\n name: string;\n accessAll: boolean;\n externalId: string;\n collections: SelectionReadOnlyRequest[] = [];\n}\n","
\n

{{'people' | i18n}}

\n
\n
\n \n \n \n
\n
\n \n \n
\n \n
\n
\n\n\n

{{'noUsersInList' | i18n}}

\n \n \n {{'usersNeedConfirmed' | i18n}}\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n {{u.email}}\n {{'invited' | i18n}}\n {{'accepted' | i18n}}\n {{u.name}}\n \n \n \n {{'owner' | i18n}}\n {{'admin' | i18n}}\n {{'manager' | i18n}}\n {{'user' | i18n}}\n \n \n
\n
\n
\n\n\n\n\n","import { OrganizationUserType } from '../../enums/organizationUserType';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class OrganizationUserInviteRequest {\n emails: string[] = [];\n type: OrganizationUserType;\n accessAll: boolean;\n collections: SelectionReadOnlyRequest[] = [];\n}\n","import { OrganizationUserType } from '../../enums/organizationUserType';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class OrganizationUserUpdateRequest {\n type: OrganizationUserType;\n accessAll: boolean;\n collections: SelectionReadOnlyRequest[] = [];\n}\n","export class OrganizationUserUpdateGroupsRequest {\n groupIds: string[] = [];\n}\n","
\n \n
\n","
\n

{{'myOrganization' | i18n}}

\n
\n
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n
\n
\n \n
\n
\n

{{'taxInformation' | i18n}}

\n
\n

{{'taxInformationDesc' | i18n}}

\n\n {{'contactSupport' | i18n}}\n\n
\n

{{'dangerZone' | i18n}}

\n
\n
\n
\n

{{'dangerZoneDesc' | i18n}}

\n \n \n
\n
\n\n\n","export class OrganizationUpdateRequest {\n name: string;\n businessName: string;\n billingEmail: string;\n}\n","
\n

\n {{'billingAndLicensing' | i18n}}\n \n \n \n

\n
\n\n\n {{'subscriptionCanceled' | i18n}}\n \n

{{'subscriptionPendingCanceled' | i18n}}

\n \n
\n
\n
{{'billingPlan' | i18n}}
\n
{{billing.plan}}
\n
{{'expiration' | i18n}}
\n
\n {{billing.expiration | date:'mediumDate'}}\n \n \n {{'licenseIsExpired' | i18n}}\n \n
\n
{{'neverExpires' | i18n}}
\n
\n
\n
\n
\n
{{'billingPlan' | i18n}}
\n
{{billing.plan}}
\n \n
{{'status' | i18n}}
\n
\n {{subscription.status || '-'}}\n {{'pendingCancellation' | i18n}}\n
\n
{{'nextCharge' | i18n}}
\n
{{nextInvoice ? ((nextInvoice.date | date: 'mediumDate') + ', ' + (nextInvoice.amount | currency:'$'))\n : '-'}}\n
\n
\n
\n
\n
\n {{'details' | i18n}}\n \n \n \n \n \n \n \n
\n {{i.name}} {{i.quantity > 1 ? '×' + i.quantity : ''}} @ {{i.amount | currency:'$'}}\n \n {{(i.quantity * i.amount) | currency:'$'}} /{{i.interval | i18n}}\n
\n
\n
\n \n
\n \n \n {{'manageSubscription' | i18n}}\n \n
\n
\n
\n

{{'updateLicense' | i18n}}

\n \n
\n
\n
\n \n
\n \n \n \n
\n

{{'userSeats' | i18n}}

\n

{{'subscriptionUserSeats' | i18n : billing.seats}}

\n \n
\n
\n \n \n
\n \n
\n
\n

{{'storage' | i18n}}

\n

{{'subscriptionStorage' | i18n : billing.maxStorageGb || 0 : billing.storageName || '0 MB'}}

\n
\n
{{(storagePercentage / 100) | percent}}
\n
\n \n
\n
\n \n \n
\n \n
\n
\n

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n \n \n

{{'verifyBankAccountDesc' | i18n}} {{'verifyBankAccountFailureWarning' | i18n}}

\n
\n \n
\n
\n
$0.
\n
\n \n
\n \n
\n
\n
$0.
\n
\n \n
\n \n
\n
\n

\n \n {{paymentSource.description}}\n

\n
\n \n \n \n

{{'charges' | i18n}}

\n

{{'noCharges' | i18n}}

\n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n {{c.createdDate | date:'mediumDate'}}{{c.paymentSource ? c.paymentSource.description : '-'}}{{c.status}}{{c.amount | currency:'$'}}
\n * {{'chargesStatement' | i18n : 'BITWARDEN'}}\n
\n
\n","
\n
\n

{{(add ? 'addSeats' : 'removeSeats') | i18n}}

\n
\n
\n \n \n
\n
\n
\n {{'total' | i18n}}: {{seatAdjustment || 0}} × {{seatPrice | currency:'$'}} = {{adjustedSeatTotal\n | currency:'$'}} /{{interval | i18n}}\n
\n \n \n \n {{(add ? 'seatsAddNote' : 'seatsRemoveNote') | i18n}}\n \n
\n
\n","export class SeatRequest {\n seatAdjustment: number;\n}\n","export class VerifyBankRequest {\n amount1: number;\n amount2: number;\n}\n","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n \n {{totpSec}}\n \n \n \n \n \n \n \n {{totpCodeFormatted}}\n \n
\n
\n
\n \n
\n
\n \n
\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n \n \n
\n
\n
\n
\n \n {{'newUri' | i18n}}\n \n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n

{{'customFields' | i18n}}

\n \n
\n
\n
\n \n \n \n \n
\n \n
\n
\n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n \n
\n \n
\n
\n
\n
\n \n {{'newCustomField' | i18n}}\n \n
\n
\n \n \n
\n
\n 1\">\n

{{'ownership' | i18n}}

\n
\n
\n \n \n
\n
\n
\n \n

{{'collections' | i18n}}

\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n
\n \n \n
\n
\n
\n \n
\n
\n {{'dateUpdated' | i18n}}:\n {{cipher.revisionDate | date:'medium'}}\n
\n
\n {{'datePasswordUpdated' | i18n}}:\n {{cipher.passwordRevisionDisplayDate | date:'medium'}}\n
\n
\n {{'passwordHistory' | i18n}}:\n \n {{cipher.passwordHistory.length}}\n \n
\n
\n
\n {{ph.lastUsedDate | date:'short'}} -\n {{ph.password}}\n
\n
\n
\n
\n
\n
\n \n \n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'attachments' | i18n}}\n {{cipher.name}}\n

\n \n
\n
\n \n \n \n \n \n \n \n \n
\n \n \n \n
\n {{a.fileName}}\n
\n \n \n \n
\n
\n {{a.sizeName}}\n
\n \n
\n

{{'newAttachment' | i18n}}

\n \n \n {{'maxFileSize' | i18n}}\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'deleteSelected' | i18n}}\n

\n \n
\n
\n {{'deleteSelectedItemsDesc' | i18n: cipherIds.length}}\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'moveSelected' | i18n}}\n

\n \n
\n
\n

{{'moveSelectedItemsDesc' | i18n: cipherIds.length}}

\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'shareSelected' | i18n}}\n

\n \n
\n
\n

{{'shareManyDesc' | i18n}}

\n

{{'shareSelectedItemsCountDesc' | i18n: this.ciphers.length : shareableCiphers.length : nonShareableCount}}

\n
\n \n \n
\n
\n

{{'collections' | i18n}}

\n
\n \n \n
\n
\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'collections' | i18n}}\n {{cipher.name}}\n

\n \n
\n
\n

{{'collectionsDesc' | i18n}}

\n
\n

{{'collections' | i18n}}

\n
\n \n \n
\n
\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'deauthorizeSessions' | i18n}}

\n \n
\n
\n

{{'deauthorizeSessionsDesc' | i18n}}

\n {{'deauthorizeSessionsWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'deleteAccount' | i18n}}

\n \n
\n
\n

{{'deleteAccountDesc' | i18n}}

\n {{'deleteAccountWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'deleteOrganization' | i18n}}

\n \n
\n
\n

{{'deleteOrganizationDesc' | i18n}}

\n {{'deleteOrganizationWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n \n \n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n \n
\n
\n
\n \n \n
\n \n

\n {{'groupAccess' | i18n}}\n
\n \n \n
\n

\n
\n {{'noGroupsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
 {{'name' | i18n}}{{'readOnly' | i18n}}
\n \n \n {{g.name}}\n \n \n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'eventLogs' | i18n}}\n {{name}}\n

\n \n
\n
\n \n
\n
\n
\n
\n \n \n -\n \n \n
\n \n
\n
\n
\n {{'noEventsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{'timestamp' | i18n}}\n {{'device' | i18n}}\n {{'user' | i18n}}{{'event' | i18n}}
{{e.date | date:'medium'}}\n \n \n {{e.userName}}\n
\n \n
\n
\n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'userAccess' | i18n}}\n {{entityName}}\n

\n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n {{'noUsersInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
  {{'name' | i18n}} {{'userType' | i18n}}{{'readOnly' |\n i18n}}
\n \n \n \n \n {{u.email}}\n {{'invited'\n | i18n}}\n {{'accepted'\n | i18n}}\n {{u.name}}\n \n \n \n {{'owner' | i18n}}\n {{'admin' | i18n}}\n {{'manager' | i18n}}\n {{'user' | i18n}}\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n \n
\n
\n
\n \n \n
\n
\n \n \n {{'externalIdGroupDesc' | i18n}}\n
\n

\n
\n {{'accessControl' | i18n}}\n
\n
\n \n \n
\n

\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
 {{'name' | i18n}}{{'readOnly' | i18n}}
\n \n \n {{c.name}}\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{title}}\n {{name}}\n

\n \n
\n
\n \n
\n
\n \n

{{'inviteUserDesc' | i18n}}

\n
\n \n \n {{'inviteMultipleEmailDesc' | i18n : '20'}}\n
\n
\n

{{'userType' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n

\n
\n {{'accessControl' | i18n}}\n
\n
\n \n \n
\n

\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
 {{'name' | i18n}}{{'readOnly' | i18n}}
\n \n \n {{c.name}}\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'confirmUser' | i18n}}\n {{name}}\n

\n \n
\n
\n

\n {{'fingerprintEnsureIntegrityVerify' | i18n}}\n \n {{'learnMore' | i18n}}\n

\n

{{fingerprint}}

\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'groupAccess' | i18n}}\n {{name}}\n

\n \n
\n
\n \n
\n
\n

{{'groupAccessUserDesc' | i18n}}

\n
\n {{'noGroupsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{g.name}}\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'passwordHistory' | i18n}}

\n \n
\n
    \n
  • \n
    \n
    \n {{h.date | date:'medium'}}\n
    \n
    \n \n
    \n
  • \n
\n
\n {{'noPasswordsInList' | i18n}}\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'purgeVault' | i18n}}

\n \n
\n
\n

{{(organizationId ? 'purgeOrgVaultDesc' : 'purgeVaultDesc') | i18n}}

\n {{'purgeVaultWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'share' | i18n}}\n {{cipher.name}}\n

\n \n
\n
\n {{'noOrganizationsList' | i18n}}\n
\n
\n

{{'shareDesc' | i18n}}

\n
\n \n \n
\n
\n

{{'collections' | i18n}}

\n
\n \n \n
\n
\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n
\n
\n
\n \n \n {{'newOrganization' | i18n}}\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n {{'authenticatorAppTitle' | i18n}}\n

\n \n
\n \n \n
\n
\n \n \"\"\n

{{'twoStepAuthenticatorDesc' | i18n}}

\n

\n 1. {{'twoStepAuthenticatorDownloadApp' | i18n}}\n

\n
\n \n \n

{{'twoStepLoginProviderEnabled' | i18n}}

\n {{'twoStepAuthenticatorReaddDesc' | i18n}}\n
\n \"\"\n

{{'twoStepAuthenticatorNeedApp' | i18n}}

\n
\n \n

{{'twoStepAuthenticatorAppsRecommended' | i18n}}

\n

\n 2. {{'twoStepAuthenticatorScanCode' | i18n}}\n

\n
\n

\n
\n {{key}}\n

\n \n \n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n Duo\n

\n \n
\n \n \n
\n
\n \n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n \"\"\n {{'twoFactorDuoIntegrationKey' | i18n}}: {{ikey}}\n
\n {{'twoFactorDuoSecretKey' | i18n}}: {{skey}}\n
\n {{'twoFactorDuoApiHostname' | i18n}}: {{host}}\n
\n \n \"\"\n

{{'twoFactorDuoDesc' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n {{'emailTitle' | i18n}}\n

\n \n
\n \n \n
\n
\n \n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n {{'email' | i18n}}: {{email}}\n \n \n

\n {{'twoFactorEmailDesc' | i18n}}\n \"\"\n

\n
\n \n \n
\n
\n \n \n {{'verificationCodeEmailSent' | i18n : sentEmail}}\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'twoStepOptions' | i18n}}

\n \n
\n \n
\n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n {{'recoveryCodeTitle' | i18n}}\n

\n \n
\n \n \n \n
\n \n

{{'twoFactorRecoveryYourCode' | i18n}}:

\n {{code}}\n
\n \n {{'twoFactorRecoveryNoCode' | i18n}}\n \n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n FIDO U2F\n

\n \n
\n \n \n
\n
\n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n \n

{{'twoFactorU2fWarning' | i18n}}

\n
    \n
  • {{'twoFactorU2fSupportWeb' | i18n}}
  • \n
\n
\n \"\"\n
    \n
  • \n \n {{'u2fkeyX' | i18n : i + 1}}\n {{k.name}}\n \n 1 && k.configured\">\n \n -\n {{'remove' | i18n}}\n \n
  • \n
\n
\n

{{'twoFactorU2fAdd' | i18n}}:

\n
    \n
  1. {{'twoFactorU2fGiveName' | i18n}}
  2. \n
  3. {{'twoFactorU2fPlugInReadKey' | i18n}}
  4. \n
  5. {{'twoFactorU2fTouchButton' | i18n}}
  6. \n
  7. {{'twoFactorU2fSaveForm' | i18n}}
  8. \n
\n
\n
\n \n \n
\n
\n \n \n \n \n \n \n \n {{'twoFactorU2fWaiting' | i18n}}...\n \n \n \n {{'twoFactorU2fClickSave' | i18n}}\n \n \n \n {{'twoFactorU2fProblemReadingTryAgain' | i18n}}\n \n \n
\n
\n \n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n YubiKey\n

\n \n
\n \n \n
\n
\n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n \n

{{'twoFactorYubikeyWarning' | i18n}}

\n
    \n
  • {{'twoFactorYubikeySupportUsb' | i18n}}
  • \n
  • {{'twoFactorYubikeySupportMobile' | i18n}}
  • \n
\n
\n \"\"\n

{{'twoFactorYubikeyAdd' | i18n}}:

\n
    \n
  1. {{'twoFactorYubikeyPlugIn' | i18n}}
  2. \n
  3. {{'twoFactorYubikeySelectKey' | i18n}}
  4. \n
  5. {{'twoFactorYubikeyTouchButton' | i18n}}
  6. \n
  7. {{'twoFactorYubikeySaveForm' | i18n}}
  8. \n
\n
\n
\n
\n \n \n
\n {{k.existingKey}}\n \n
\n
\n
\n {{'nfcSupport' | i18n}}\n
\n \n \n
\n {{'twoFactorYubikeySupportsNfcDesc' | i18n}}\n
\n
\n \n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'updateEncryptionKey' | i18n}}

\n \n
\n
\n

{{'updateEncryptionKeyShortDesc' | i18n}} {{'updateEncryptionKeyDesc' | i18n}}\n {{'learnMore' | i18n}}\n

\n {{'updateEncryptionKeyWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","\r\n\r\n","import {\r\n APP_INITIALIZER,\r\n LOCALE_ID,\r\n NgModule,\r\n} from '@angular/core';\r\n\r\nimport { ToasterModule } from 'angular2-toaster';\r\n\r\nimport { BroadcasterMessagingService } from '../../services/broadcasterMessaging.service';\r\nimport { HtmlStorageService } from '../../services/htmlStorage.service';\r\nimport { I18nService } from '../../services/i18n.service';\r\nimport { MemoryStorageService } from '../../services/memoryStorage.service';\r\nimport { WebPlatformUtilsService } from '../../services/webPlatformUtils.service';\r\n\r\nimport { EventService } from './event.service';\r\nimport { OrganizationGuardService } from './organization-guard.service';\r\nimport { OrganizationTypeGuardService } from './organization-type-guard.service';\r\nimport { RouterService } from './router.service';\r\nimport { UnauthGuardService } from './unauth-guard.service';\r\n\r\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\r\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\r\nimport { ValidationService } from 'jslib/angular/services/validation.service';\r\n\r\nimport { Analytics } from 'jslib/misc/analytics';\r\n\r\nimport { ApiService } from 'jslib/services/api.service';\r\nimport { AppIdService } from 'jslib/services/appId.service';\r\nimport { AuditService } from 'jslib/services/audit.service';\r\nimport { AuthService } from 'jslib/services/auth.service';\r\nimport { CipherService } from 'jslib/services/cipher.service';\r\nimport { CollectionService } from 'jslib/services/collection.service';\r\nimport { ConstantsService } from 'jslib/services/constants.service';\r\nimport { ContainerService } from 'jslib/services/container.service';\r\nimport { CryptoService } from 'jslib/services/crypto.service';\r\nimport { EnvironmentService } from 'jslib/services/environment.service';\r\nimport { ExportService } from 'jslib/services/export.service';\r\nimport { FolderService } from 'jslib/services/folder.service';\r\nimport { ImportService } from 'jslib/services/import.service';\r\nimport { LockService } from 'jslib/services/lock.service';\r\nimport { NotificationsService } from 'jslib/services/notifications.service';\r\nimport { PasswordGenerationService } from 'jslib/services/passwordGeneration.service';\r\nimport { SearchService } from 'jslib/services/search.service';\r\nimport { SettingsService } from 'jslib/services/settings.service';\r\nimport { StateService } from 'jslib/services/state.service';\r\nimport { SyncService } from 'jslib/services/sync.service';\r\nimport { TokenService } from 'jslib/services/token.service';\r\nimport { TotpService } from 'jslib/services/totp.service';\r\nimport { UserService } from 'jslib/services/user.service';\r\nimport { WebCryptoFunctionService } from 'jslib/services/webCryptoFunction.service';\r\n\r\nimport { ApiService as ApiServiceAbstraction } from 'jslib/abstractions/api.service';\r\nimport { AppIdService as AppIdServiceAbstraction } from 'jslib/abstractions/appId.service';\r\nimport { AuditService as AuditServiceAbstraction } from 'jslib/abstractions/audit.service';\r\nimport { AuthService as AuthServiceAbstraction } from 'jslib/abstractions/auth.service';\r\nimport { CipherService as CipherServiceAbstraction } from 'jslib/abstractions/cipher.service';\r\nimport { CollectionService as CollectionServiceAbstraction } from 'jslib/abstractions/collection.service';\r\nimport { CryptoService as CryptoServiceAbstraction } from 'jslib/abstractions/crypto.service';\r\nimport { CryptoFunctionService as CryptoFunctionServiceAbstraction } from 'jslib/abstractions/cryptoFunction.service';\r\nimport { EnvironmentService as EnvironmentServiceAbstraction } from 'jslib/abstractions/environment.service';\r\nimport { ExportService as ExportServiceAbstraction } from 'jslib/abstractions/export.service';\r\nimport { FolderService as FolderServiceAbstraction } from 'jslib/abstractions/folder.service';\r\nimport { I18nService as I18nServiceAbstraction } from 'jslib/abstractions/i18n.service';\r\nimport { ImportService as ImportServiceAbstraction } from 'jslib/abstractions/import.service';\r\nimport { LockService as LockServiceAbstraction } from 'jslib/abstractions/lock.service';\r\nimport { LogService as LogServiceAbstraction } from 'jslib/abstractions/log.service';\r\nimport { MessagingService as MessagingServiceAbstraction } from 'jslib/abstractions/messaging.service';\r\nimport { NotificationsService as NotificationsServiceAbstraction } from 'jslib/abstractions/notifications.service';\r\nimport {\r\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\r\n} from 'jslib/abstractions/passwordGeneration.service';\r\nimport { PlatformUtilsService as PlatformUtilsServiceAbstraction } from 'jslib/abstractions/platformUtils.service';\r\nimport { SearchService as SearchServiceAbstraction } from 'jslib/abstractions/search.service';\r\nimport { SettingsService as SettingsServiceAbstraction } from 'jslib/abstractions/settings.service';\r\nimport { StateService as StateServiceAbstraction } from 'jslib/abstractions/state.service';\r\nimport { StorageService as StorageServiceAbstraction } from 'jslib/abstractions/storage.service';\r\nimport { SyncService as SyncServiceAbstraction } from 'jslib/abstractions/sync.service';\r\nimport { TokenService as TokenServiceAbstraction } from 'jslib/abstractions/token.service';\r\nimport { TotpService as TotpServiceAbstraction } from 'jslib/abstractions/totp.service';\r\nimport { UserService as UserServiceAbstraction } from 'jslib/abstractions/user.service';\r\n\r\nconst i18nService = new I18nService(window.navigator.language, 'locales');\r\nconst stateService = new StateService();\r\nconst broadcasterService = new BroadcasterService();\r\nconst messagingService = new BroadcasterMessagingService(broadcasterService);\r\nconst platformUtilsService = new WebPlatformUtilsService(i18nService, messagingService);\r\nconst storageService: StorageServiceAbstraction = new HtmlStorageService(platformUtilsService);\r\nconst secureStorageService: StorageServiceAbstraction = new MemoryStorageService();\r\nconst cryptoFunctionService: CryptoFunctionServiceAbstraction = new WebCryptoFunctionService(window,\r\n platformUtilsService);\r\nconst cryptoService = new CryptoService(storageService,\r\n platformUtilsService.isDev() ? storageService : secureStorageService, cryptoFunctionService);\r\nconst tokenService = new TokenService(storageService);\r\nconst appIdService = new AppIdService(storageService);\r\nconst apiService = new ApiService(tokenService, platformUtilsService,\r\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\r\nconst userService = new UserService(tokenService, storageService);\r\nconst settingsService = new SettingsService(userService, storageService);\r\nexport let searchService: SearchService = null;\r\nconst cipherService = new CipherService(cryptoService, userService, settingsService,\r\n apiService, storageService, i18nService, () => searchService);\r\nconst folderService = new FolderService(cryptoService, userService, apiService, storageService,\r\n i18nService, cipherService);\r\nconst collectionService = new CollectionService(cryptoService, userService, storageService, i18nService);\r\nsearchService = new SearchService(cipherService, platformUtilsService);\r\nconst lockService = new LockService(cipherService, folderService, collectionService,\r\n cryptoService, platformUtilsService, storageService, messagingService, searchService, null);\r\nconst syncService = new SyncService(userService, apiService, settingsService,\r\n folderService, cipherService, cryptoService, collectionService, storageService, messagingService,\r\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\r\nconst passwordGenerationService = new PasswordGenerationService(cryptoService, storageService);\r\nconst totpService = new TotpService(storageService, cryptoFunctionService);\r\nconst containerService = new ContainerService(cryptoService);\r\nconst authService = new AuthService(cryptoService, apiService,\r\n userService, tokenService, appIdService, i18nService, platformUtilsService, messagingService);\r\nconst exportService = new ExportService(folderService, cipherService, apiService);\r\nconst importService = new ImportService(cipherService, folderService, apiService, i18nService, collectionService);\r\nconst notificationsService = new NotificationsService(userService, syncService, appIdService,\r\n apiService, cryptoService, async () => messagingService.send('logout', { expired: true }));\r\nconst environmentService = new EnvironmentService(apiService, storageService, notificationsService);\r\nconst auditService = new AuditService(cryptoFunctionService, apiService);\r\n\r\nconst analytics = new Analytics(window, () => platformUtilsService.isDev() || platformUtilsService.isSelfHost(),\r\n platformUtilsService, storageService, appIdService);\r\ncontainerService.attachToWindow(window);\r\n\r\nexport function initFactory(): Function {\r\n return async () => {\r\n await (storageService as HtmlStorageService).init();\r\n const isDev = platformUtilsService.isDev();\r\n if (!isDev && platformUtilsService.isSelfHost()) {\r\n environmentService.baseUrl = window.location.origin;\r\n } else {\r\n environmentService.notificationsUrl = isDev ? 'http://localhost:61840' :\r\n 'https://notifications.bitwarden.com'; // window.location.origin + '/notifications';\r\n }\r\n apiService.setUrls({\r\n base: isDev ? null : window.location.origin,\r\n api: isDev ? 'http://localhost:4000' : null,\r\n identity: isDev ? 'http://localhost:33656' : null,\r\n\r\n // Uncomment these (and comment out the above) if you want to target production\r\n // servers for local development.\r\n\r\n // base: null,\r\n // api: 'https://api.bitwarden.com',\r\n // identity: 'https://identity.bitwarden.com',\r\n });\r\n setTimeout(() => notificationsService.init(environmentService), 3000);\r\n\r\n lockService.init(true);\r\n const locale = await storageService.get(ConstantsService.localeKey);\r\n await i18nService.init(locale);\r\n authService.init();\r\n const htmlEl = window.document.documentElement;\r\n htmlEl.classList.add('locale_' + i18nService.translationLocale);\r\n let theme = await storageService.get(ConstantsService.themeKey);\r\n if (theme == null) {\r\n theme = 'light';\r\n }\r\n htmlEl.classList.add('theme_' + theme);\r\n stateService.save(ConstantsService.disableFaviconKey,\r\n await storageService.get(ConstantsService.disableFaviconKey));\r\n stateService.save('enableGravatars', await storageService.get('enableGravatars'));\r\n };\r\n}\r\n\r\n@NgModule({\r\n imports: [\r\n ToasterModule,\r\n ],\r\n declarations: [],\r\n providers: [\r\n ValidationService,\r\n AuthGuardService,\r\n OrganizationGuardService,\r\n OrganizationTypeGuardService,\r\n UnauthGuardService,\r\n RouterService,\r\n EventService,\r\n { provide: AuditServiceAbstraction, useValue: auditService },\r\n { provide: AuthServiceAbstraction, useValue: authService },\r\n { provide: CipherServiceAbstraction, useValue: cipherService },\r\n { provide: FolderServiceAbstraction, useValue: folderService },\r\n { provide: CollectionServiceAbstraction, useValue: collectionService },\r\n { provide: EnvironmentServiceAbstraction, useValue: environmentService },\r\n { provide: TotpServiceAbstraction, useValue: totpService },\r\n { provide: TokenServiceAbstraction, useValue: tokenService },\r\n { provide: I18nServiceAbstraction, useValue: i18nService },\r\n { provide: CryptoServiceAbstraction, useValue: cryptoService },\r\n { provide: PlatformUtilsServiceAbstraction, useValue: platformUtilsService },\r\n { provide: PasswordGenerationServiceAbstraction, useValue: passwordGenerationService },\r\n { provide: ApiServiceAbstraction, useValue: apiService },\r\n { provide: SyncServiceAbstraction, useValue: syncService },\r\n { provide: UserServiceAbstraction, useValue: userService },\r\n { provide: MessagingServiceAbstraction, useValue: messagingService },\r\n { provide: BroadcasterService, useValue: broadcasterService },\r\n { provide: SettingsServiceAbstraction, useValue: settingsService },\r\n { provide: LockServiceAbstraction, useValue: lockService },\r\n { provide: StorageServiceAbstraction, useValue: storageService },\r\n { provide: StateServiceAbstraction, useValue: stateService },\r\n { provide: ExportServiceAbstraction, useValue: exportService },\r\n { provide: SearchServiceAbstraction, useValue: searchService },\r\n { provide: ImportServiceAbstraction, useValue: importService },\r\n { provide: NotificationsServiceAbstraction, useValue: notificationsService },\r\n { provide: CryptoFunctionServiceAbstraction, useValue: cryptoFunctionService },\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: initFactory,\r\n deps: [],\r\n multi: true,\r\n },\r\n {\r\n provide: LOCALE_ID,\r\n useFactory: () => i18nService.translationLocale,\r\n deps: [],\r\n },\r\n ],\r\n})\r\nexport class ServicesModule {\r\n}\r\n","import { MessagingService } from 'jslib/abstractions/messaging.service';\r\n\r\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\r\n\r\nexport class BroadcasterMessagingService implements MessagingService {\r\n constructor(private broadcasterService: BroadcasterService) { }\r\n\r\n send(subscriber: string, arg: any = {}) {\r\n const message = Object.assign({}, { command: subscriber }, arg);\r\n this.broadcasterService.send(message);\r\n }\r\n}\r\n","import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { ConstantsService } from 'jslib/services';\n\nexport class HtmlStorageService implements StorageService {\n private localStorageKeys = new Set(['appId', 'anonymousAppId', 'rememberedEmail', 'passwordGenerationOptions',\n ConstantsService.disableFaviconKey, ConstantsService.lockOptionKey, 'rememberEmail', 'enableGravatars',\n ConstantsService.localeKey, ConstantsService.lockOptionKey, ConstantsService.autoConfirmFingerprints]);\n private localStorageStartsWithKeys = ['twoFactorToken_', ConstantsService.collapsedGroupingsKey + '_'];\n\n constructor(private platformUtilsService: PlatformUtilsService) { }\n\n async init() {\n const lockOption = await this.get(ConstantsService.lockOptionKey);\n if (lockOption == null && !this.platformUtilsService.isDev()) {\n await this.save(ConstantsService.lockOptionKey, 15);\n }\n }\n\n get(key: string): Promise {\n let json: string = null;\n if (this.isLocalStorage(key)) {\n json = window.localStorage.getItem(key);\n } else {\n json = window.sessionStorage.getItem(key);\n }\n if (json != null) {\n const obj = JSON.parse(json);\n return Promise.resolve(obj as T);\n }\n return Promise.resolve(null);\n }\n\n save(key: string, obj: any): Promise {\n if (obj == null) {\n return this.remove(key);\n }\n\n const json = JSON.stringify(obj);\n if (this.isLocalStorage(key)) {\n window.localStorage.setItem(key, json);\n } else {\n window.sessionStorage.setItem(key, json);\n }\n return Promise.resolve();\n }\n\n remove(key: string): Promise {\n if (this.isLocalStorage(key)) {\n window.localStorage.removeItem(key);\n } else {\n window.sessionStorage.removeItem(key);\n }\n return Promise.resolve();\n }\n\n private isLocalStorage(key: string): boolean {\n if (this.localStorageKeys.has(key)) {\n return true;\n }\n for (const swKey of this.localStorageStartsWithKeys) {\n if (key.startsWith(swKey)) {\n return true;\n }\n }\n return false;\n }\n}\n","export { ApiService } from './api.service';\nexport { AppIdService } from './appId.service';\nexport { AuditService } from './audit.service';\nexport { AuthService } from './auth.service';\nexport { CipherService } from './cipher.service';\nexport { CollectionService } from './collection.service';\nexport { ConstantsService } from './constants.service';\nexport { ContainerService } from './container.service';\nexport { CryptoService } from './crypto.service';\nexport { EnvironmentService } from './environment.service';\nexport { FolderService } from './folder.service';\nexport { I18nService } from './i18n.service';\nexport { LockService } from './lock.service';\nexport { PasswordGenerationService } from './passwordGeneration.service';\nexport { SettingsService } from './settings.service';\nexport { StateService } from './state.service';\nexport { SyncService } from './sync.service';\nexport { TokenService } from './token.service';\nexport { TotpService } from './totp.service';\nexport { UserService } from './user.service';\n","export class AttachmentResponse {\r\n id: string;\r\n url: string;\r\n fileName: string;\r\n key: string;\r\n size: number;\r\n sizeName: string;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.url = response.Url;\r\n this.fileName = response.FileName;\r\n this.key = response.Key;\r\n this.size = response.Size;\r\n this.sizeName = response.SizeName;\r\n }\r\n}\r\n","export class PasswordHistoryResponse {\r\n password: string;\r\n lastUsedDate: string;\r\n\r\n constructor(response: any) {\r\n this.password = response.Password;\r\n this.lastUsedDate = response.LastUsedDate;\r\n }\r\n}\r\n","export class CardApi {\r\n cardholderName: string;\r\n brand: string;\r\n number: string;\r\n expMonth: string;\r\n expYear: string;\r\n code: string;\r\n\r\n constructor(data: any) {\r\n this.cardholderName = data.CardholderName;\r\n this.brand = data.Brand;\r\n this.number = data.Number;\r\n this.expMonth = data.ExpMonth;\r\n this.expYear = data.ExpYear;\r\n this.code = data.Code;\r\n }\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nexport class FieldApi {\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.name = response.Name;\r\n this.value = response.Value;\r\n }\r\n}\r\n","export class IdentityApi {\r\n title: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n constructor(data: any) {\r\n this.title = data.Title;\r\n this.firstName = data.FirstName;\r\n this.middleName = data.MiddleName;\r\n this.lastName = data.LastName;\r\n this.address1 = data.Address1;\r\n this.address2 = data.Address2;\r\n this.address3 = data.Address3;\r\n this.city = data.City;\r\n this.state = data.State;\r\n this.postalCode = data.PostalCode;\r\n this.country = data.Country;\r\n this.company = data.Company;\r\n this.email = data.Email;\r\n this.phone = data.Phone;\r\n this.ssn = data.SSN;\r\n this.username = data.Username;\r\n this.passportNumber = data.PassportNumber;\r\n this.licenseNumber = data.LicenseNumber;\r\n }\r\n}\r\n","import { LoginUriApi } from './loginUriApi';\r\n\r\nexport class LoginApi {\r\n uris: LoginUriApi[];\r\n username: string;\r\n password: string;\r\n passwordRevisionDate: string;\r\n totp: string;\r\n\r\n constructor(data: any) {\r\n this.username = data.Username;\r\n this.password = data.Password;\r\n this.passwordRevisionDate = data.PasswordRevisionDate;\r\n this.totp = data.Totp;\r\n\r\n if (data.Uris) {\r\n this.uris = [];\r\n data.Uris.forEach((u: any) => {\r\n this.uris.push(new LoginUriApi(u));\r\n });\r\n }\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nexport class LoginUriApi {\r\n uri: string;\r\n match: UriMatchType = null;\r\n\r\n constructor(data: any) {\r\n this.uri = data.Uri;\r\n this.match = data.Match != null ? data.Match : null;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nexport class SecureNoteApi {\r\n type: SecureNoteType;\r\n\r\n constructor(data: any) {\r\n this.type = data.Type;\r\n }\r\n}\r\n","export class GlobalDomainResponse {\r\n type: number;\r\n domains: string[];\r\n excluded: number[];\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.domains = response.Domains;\r\n this.excluded = response.Excluded;\r\n }\r\n}\r\n","export class ErrorResponse {\n message: string;\n validationErrors: { [key: string]: string[]; };\n statusCode: number;\n\n constructor(response: any, status: number, identityResponse?: boolean) {\n let errorModel = null;\n if (identityResponse && response && response.ErrorModel) {\n errorModel = response.ErrorModel;\n } else if (response) {\n errorModel = response;\n }\n\n if (errorModel) {\n this.message = errorModel.Message;\n this.validationErrors = errorModel.ValidationErrors;\n } else {\n if (status === 429) {\n this.message = 'Rate limit exceeded. Try again later.';\n }\n }\n this.statusCode = status;\n }\n\n getSingleMessage(): string {\n if (this.validationErrors) {\n for (const key in this.validationErrors) {\n if (!this.validationErrors.hasOwnProperty(key)) {\n continue;\n }\n if (this.validationErrors[key].length) {\n return this.validationErrors[key][0];\n }\n }\n }\n return this.message;\n }\n}\n","import { DeviceType } from '../../enums/deviceType';\r\nimport { EventType } from '../../enums/eventType';\r\n\r\nexport class EventResponse {\r\n type: EventType;\r\n userId: string;\r\n organizationId: string;\r\n cipherId: string;\r\n collectionId: string;\r\n groupId: string;\r\n organizationUserId: string;\r\n actingUserId: string;\r\n date: string;\r\n deviceType: DeviceType;\r\n ipAddress: string;\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.userId = response.UserId;\r\n this.organizationId = response.OrganizationId;\r\n this.cipherId = response.CipherId;\r\n this.collectionId = response.CollectionId;\r\n this.groupId = response.GroupId;\r\n this.organizationUserId = response.OrganizationUserId;\r\n this.actingUserId = response.ActingUserId;\r\n this.date = response.Date;\r\n this.deviceType = response.DeviceType;\r\n this.ipAddress = response.IpAddress;\r\n }\r\n}\r\n","import { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\n\nexport class GroupResponse {\n id: string;\n organizationId: string;\n name: string;\n accessAll: boolean;\n externalId: string;\n\n constructor(response: any) {\n this.id = response.Id;\n this.organizationId = response.OrganizationId;\n this.name = response.Name;\n this.accessAll = response.AccessAll;\n this.externalId = response.ExternalId;\n }\n}\n\nexport class GroupDetailsResponse extends GroupResponse {\n collections: SelectionReadOnlyResponse[] = [];\n\n constructor(response: any) {\n super(response);\n if (response.Collections != null) {\n this.collections = response.Collections.map((c: any) => new SelectionReadOnlyResponse(c));\n }\n }\n}\n","export class IdentityTokenResponse {\r\n accessToken: string;\r\n expiresIn: number;\r\n refreshToken: string;\r\n tokenType: string;\r\n\r\n privateKey: string;\r\n key: string;\r\n twoFactorToken: string;\r\n\r\n constructor(response: any) {\r\n this.accessToken = response.access_token;\r\n this.expiresIn = response.expires_in;\r\n this.refreshToken = response.refresh_token;\r\n this.tokenType = response.token_type;\r\n\r\n this.privateKey = response.PrivateKey;\r\n this.key = response.Key;\r\n this.twoFactorToken = response.TwoFactorToken;\r\n }\r\n}\r\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nexport class IdentityTwoFactorResponse {\r\n twoFactorProviders: TwoFactorProviderType[];\r\n twoFactorProviders2 = new Map();\r\n\r\n constructor(response: any) {\r\n this.twoFactorProviders = response.TwoFactorProviders;\r\n if (response.TwoFactorProviders2 != null) {\r\n for (const prop in response.TwoFactorProviders2) {\r\n if (response.TwoFactorProviders2.hasOwnProperty(prop)) {\r\n this.twoFactorProviders2.set(parseInt(prop, null), response.TwoFactorProviders2[prop]);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","export class ListResponse {\n data: T[];\n continuationToken: string;\n\n constructor(response: any, t: new (dataResponse: any) => T) {\n this.data = response.Data == null ? [] : response.Data.map((dr: any) => new t(dr));\n this.continuationToken = response.ContinuationToken;\n }\n}\n","import {\r\n BillingChargeResponse,\r\n BillingInvoiceResponse,\r\n BillingSourceResponse,\r\n BillingSubscriptionResponse,\r\n} from './billingResponse';\r\nimport { OrganizationResponse } from './organizationResponse';\r\n\r\nexport class OrganizationBillingResponse extends OrganizationResponse {\r\n storageName: string;\r\n storageGb: number;\r\n paymentSource: BillingSourceResponse;\r\n subscription: BillingSubscriptionResponse;\r\n upcomingInvoice: BillingInvoiceResponse;\r\n charges: BillingChargeResponse[] = [];\r\n expiration: string;\r\n\r\n constructor(response: any) {\r\n super(response);\r\n this.storageName = response.StorageName;\r\n this.storageGb = response.StorageGb;\r\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\r\n this.subscription = response.Subscription == null ?\r\n null : new BillingSubscriptionResponse(response.Subscription);\r\n this.upcomingInvoice = response.UpcomingInvoice == null ?\r\n null : new BillingInvoiceResponse(response.UpcomingInvoice);\r\n if (response.Charges != null) {\r\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\r\n }\r\n this.expiration = response.Expiration;\r\n }\r\n}\r\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { OrganizationUserType } from '../../enums/organizationUserType';\r\nimport { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\r\n\r\nexport class OrganizationUserResponse {\r\n id: string;\r\n userId: string;\r\n type: OrganizationUserType;\r\n status: OrganizationUserStatusType;\r\n accessAll: boolean;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.userId = response.UserId;\r\n this.type = response.Type;\r\n this.status = response.Status;\r\n this.accessAll = response.AccessAll;\r\n }\r\n}\r\n\r\nexport class OrganizationUserUserDetailsResponse extends OrganizationUserResponse {\r\n name: string;\r\n email: string;\r\n twoFactorEnabled: string;\r\n\r\n constructor(response: any) {\r\n super(response);\r\n this.name = response.Name;\r\n this.email = response.Email;\r\n this.twoFactorEnabled = response.TwoFactorEnabled;\r\n }\r\n}\r\n\r\nexport class OrganizationUserDetailsResponse extends OrganizationUserResponse {\r\n collections: SelectionReadOnlyResponse[] = [];\r\n\r\n constructor(response: any) {\r\n super(response);\r\n if (response.Collections != null) {\r\n this.collections = response.Collections.map((c: any) => new SelectionReadOnlyResponse(c));\r\n }\r\n }\r\n}\r\n","import { KdfType } from '../../enums/kdfType';\n\nexport class PreloginResponse {\n kdf: KdfType;\n kdfIterations: number;\n\n constructor(response: any) {\n this.kdf = response.Kdf;\n this.kdfIterations = response.KdfIterations;\n }\n}\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\n\nexport class ProfileOrganizationResponse {\n id: string;\n name: string;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n selfHost: boolean;\n usersGetPremium: boolean;\n seats: number;\n maxCollections: number;\n maxStorageGb?: number;\n key: string;\n status: OrganizationUserStatusType;\n type: OrganizationUserType;\n enabled: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.name = response.Name;\n this.useGroups = response.UseGroups;\n this.useDirectory = response.UseDirectory;\n this.useEvents = response.UseEvents;\n this.useTotp = response.UseTotp;\n this.use2fa = response.Use2fa;\n this.selfHost = response.SelfHost;\n this.usersGetPremium = response.UsersGetPremium;\n this.seats = response.Seats;\n this.maxCollections = response.MaxCollections;\n this.maxStorageGb = response.MaxStorageGb;\n this.key = response.Key;\n this.status = response.Status;\n this.type = response.Type;\n this.enabled = response.Enabled;\n }\n}\n","import { CipherResponse } from './cipherResponse';\nimport { CollectionDetailsResponse } from './collectionResponse';\nimport { DomainsResponse } from './domainsResponse';\nimport { FolderResponse } from './folderResponse';\nimport { ProfileResponse } from './profileResponse';\n\nexport class SyncResponse {\n profile?: ProfileResponse;\n folders: FolderResponse[] = [];\n collections: CollectionDetailsResponse[] = [];\n ciphers: CipherResponse[] = [];\n domains?: DomainsResponse;\n\n constructor(response: any) {\n if (response.Profile) {\n this.profile = new ProfileResponse(response.Profile);\n }\n\n if (response.Folders) {\n response.Folders.forEach((folder: any) => {\n this.folders.push(new FolderResponse(folder));\n });\n }\n\n if (response.Collections) {\n response.Collections.forEach((collection: any) => {\n this.collections.push(new CollectionDetailsResponse(collection));\n });\n }\n\n if (response.Ciphers) {\n response.Ciphers.forEach((cipher: any) => {\n this.ciphers.push(new CipherResponse(cipher));\n });\n }\n\n if (response.Domains) {\n this.domains = new DomainsResponse(response.Domains);\n }\n }\n}\n","export class TwoFactorAuthenticatorResponse {\n enabled: boolean;\n key: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key = response.Key;\n }\n}\n","export class TwoFactorDuoResponse {\n enabled: boolean;\n host: string;\n secretKey: string;\n integrationKey: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.host = response.Host;\n this.secretKey = response.SecretKey;\n this.integrationKey = response.IntegrationKey;\n }\n}\n","export class TwoFactorEmailResponse {\n enabled: boolean;\n email: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.email = response.Email;\n }\n}\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nexport class TwoFactorProviderResponse {\n enabled: boolean;\n type: TwoFactorProviderType;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.type = response.Type;\n }\n}\n","export class TwoFactorRecoverResponse {\n code: string;\n\n constructor(response: any) {\n this.code = response.Code;\n }\n}\n","export class TwoFactorU2fResponse {\n enabled: boolean;\n keys: KeyResponse[];\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.keys = response.Keys == null ? null : response.Keys.map((k: any) => new KeyResponse(k));\n }\n}\n\nexport class KeyResponse {\n name: string;\n id: number;\n compromised: boolean;\n\n constructor(response: any) {\n this.name = response.Name;\n this.id = response.Id;\n this.compromised = response.Compromised;\n }\n}\n\nexport class ChallengeResponse {\n userId: string;\n appId: string;\n challenge: string;\n version: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.appId = response.AppId;\n this.challenge = response.Challenge;\n this.version = response.Version;\n }\n}\n","export class TwoFactorYubiKeyResponse {\n enabled: boolean;\n key1: string;\n key2: string;\n key3: string;\n key4: string;\n key5: string;\n nfc: boolean;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key1 = response.Key1;\n this.key2 = response.Key2;\n this.key3 = response.Key3;\n this.key4 = response.Key4;\n this.key5 = response.Key5;\n this.nfc = response.Nfc;\n }\n}\n","export class UserKeyResponse {\n userId: string;\n publicKey: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.publicKey = response.PublicKey;\n }\n}\n","export class BreachAccountResponse {\r\n addedDate: string;\r\n breachDate: string;\r\n dataClasses: string[];\r\n description: string;\r\n domain: string;\r\n isActive: boolean;\r\n isVerified: boolean;\r\n logoPath: string;\r\n modifiedDate: string;\r\n name: string;\r\n pwnCount: number;\r\n title: string;\r\n\r\n constructor(response: any) {\r\n this.addedDate = response.AddedDate;\r\n this.breachDate = response.BreachDate;\r\n this.dataClasses = response.DataClasses;\r\n this.description = response.Description;\r\n this.domain = response.Domain;\r\n this.isActive = response.IsActive;\r\n this.isVerified = response.IsVerified;\r\n this.logoPath = response.LogoPath;\r\n this.modifiedDate = response.ModifiedDate;\r\n this.name = response.Name;\r\n this.pwnCount = response.PwnCount;\r\n this.title = response.Title;\r\n }\r\n}\r\n","export class CipherBulkDeleteRequest {\n ids: string[];\n\n constructor(ids: string[]) {\n this.ids = ids == null ? [] : ids;\n }\n}\n","export class CipherBulkMoveRequest {\n ids: string[];\n folderId: string;\n\n constructor(ids: string[], folderId: string) {\n this.ids = ids == null ? [] : ids;\n this.folderId = folderId;\n }\n}\n","import { CipherWithIdRequest } from './cipherWithIdRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherBulkShareRequest {\n ciphers: CipherWithIdRequest[];\n collectionIds: string[];\n\n constructor(ciphers: Cipher[], collectionIds: string[]) {\n if (ciphers != null) {\n this.ciphers = [];\n ciphers.forEach((c) => {\n this.ciphers.push(new CipherWithIdRequest(c));\n });\n }\n this.collectionIds = collectionIds;\n }\n}\n","import { CipherRequest } from './cipherRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherShareRequest {\n cipher: CipherRequest;\n collectionIds: string[];\n\n constructor(cipher: Cipher) {\n this.cipher = new CipherRequest(cipher);\n this.collectionIds = cipher.collectionIds;\n }\n}\n","export class TreeNode {\r\n parent: T;\r\n node: T;\r\n children: Array> = [];\r\n\r\n constructor(node: T, name: string, parent: T) {\r\n this.parent = parent;\r\n this.node = node;\r\n this.node.name = name;\r\n }\r\n}\r\n\r\nexport interface ITreeNodeObject {\r\n id: string;\r\n name: string;\r\n}\r\n","import { SymmetricCryptoKey } from './symmetricCryptoKey';\n\nexport class EncryptedObject {\n iv: ArrayBuffer;\n data: ArrayBuffer;\n mac: ArrayBuffer;\n key: SymmetricCryptoKey;\n}\n","export class EnvironmentUrls {\n base: string;\n api: string;\n identity: string;\n}\n","import { FolderData } from '../data/folderData';\n\nimport { FolderView } from '../view/folderView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Folder extends Domain {\n id: string;\n name: CipherString;\n revisionDate: Date;\n\n constructor(obj?: FolderData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n name: null,\n }, alreadyEncrypted, ['id']);\n\n this.revisionDate = obj.revisionDate != null ? new Date(obj.revisionDate) : null;\n }\n\n decrypt(): Promise {\n return this.decryptObj(new FolderView(this), {\n name: null,\n }, null);\n }\n}\n","export class GeneratedPasswordHistory {\r\n password: string;\r\n date: number;\r\n\r\n constructor(password: string, date: number) {\r\n this.password = password;\r\n this.date = date;\r\n }\r\n}\r\n","import { ProfileOrganizationResponse } from '../response/profileOrganizationResponse';\n\nimport { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\n\nexport class OrganizationData {\n id: string;\n name: string;\n status: OrganizationUserStatusType;\n type: OrganizationUserType;\n enabled: boolean;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n selfHost: boolean;\n usersGetPremium: boolean;\n seats: number;\n maxCollections: number;\n maxStorageGb?: number;\n\n constructor(response: ProfileOrganizationResponse) {\n this.id = response.id;\n this.name = response.name;\n this.status = response.status;\n this.type = response.type;\n this.enabled = response.enabled;\n this.useGroups = response.useGroups;\n this.useDirectory = response.useDirectory;\n this.useEvents = response.useEvents;\n this.useTotp = response.useTotp;\n this.use2fa = response.use2fa;\n this.selfHost = response.selfHost;\n this.usersGetPremium = response.usersGetPremium;\n this.seats = response.seats;\n this.maxCollections = response.maxCollections;\n this.maxStorageGb = response.maxStorageGb;\n }\n}\n","import { OrganizationData } from '../data/organizationData';\r\n\r\nimport { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { OrganizationUserType } from '../../enums/organizationUserType';\r\n\r\nexport class Organization {\r\n id: string;\r\n name: string;\r\n status: OrganizationUserStatusType;\r\n type: OrganizationUserType;\r\n enabled: boolean;\r\n useGroups: boolean;\r\n useDirectory: boolean;\r\n useEvents: boolean;\r\n useTotp: boolean;\r\n use2fa: boolean;\r\n selfHost: boolean;\r\n usersGetPremium: boolean;\r\n seats: number;\r\n maxCollections: number;\r\n maxStorageGb?: number;\r\n\r\n constructor(obj?: OrganizationData) {\r\n if (obj == null) {\r\n return;\r\n }\r\n\r\n this.id = obj.id;\r\n this.name = obj.name;\r\n this.status = obj.status;\r\n this.type = obj.type;\r\n this.enabled = obj.enabled;\r\n this.useGroups = obj.useGroups;\r\n this.useDirectory = obj.useDirectory;\r\n this.useEvents = obj.useEvents;\r\n this.useTotp = obj.useTotp;\r\n this.use2fa = obj.use2fa;\r\n this.selfHost = obj.selfHost;\r\n this.usersGetPremium = obj.usersGetPremium;\r\n this.seats = obj.seats;\r\n this.maxCollections = obj.maxCollections;\r\n this.maxStorageGb = obj.maxStorageGb;\r\n }\r\n\r\n get canAccess() {\r\n if (this.type === OrganizationUserType.Owner) {\r\n return true;\r\n }\r\n return this.enabled && this.status === OrganizationUserStatusType.Confirmed;\r\n }\r\n\r\n get isManager() {\r\n return this.type === OrganizationUserType.Manager || this.type === OrganizationUserType.Owner ||\r\n this.type === OrganizationUserType.Admin;\r\n }\r\n\r\n get isAdmin() {\r\n return this.type === OrganizationUserType.Owner || this.type === OrganizationUserType.Admin;\r\n }\r\n\r\n get isOwner() {\r\n return this.type === OrganizationUserType.Owner;\r\n }\r\n}\r\n","import { I18nService as BaseI18nService } from 'jslib/services/i18n.service';\n\nexport class I18nService extends BaseI18nService {\n constructor(systemLanguage: string, localesDirectory: string) {\n super(systemLanguage || 'en-US', localesDirectory, async (formattedLocale: string) => {\n const filePath = this.localesDirectory + '/' + formattedLocale + '/messages.json?cache=' +\n process.env.CACHE_TAG;\n const localesResult = await fetch(filePath);\n const locales = await localesResult.json();\n return locales;\n });\n\n this.supportedTranslationLocales = [\n 'en', 'cs', 'da', 'de', 'es', 'et', 'fr', 'it', 'ja', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR',\n 'ru', 'sk', 'sv', 'uk', 'zh-CN', 'zh-TW',\n ];\n }\n}\n","import { StorageService } from 'jslib/abstractions/storage.service';\r\n\r\nexport class MemoryStorageService implements StorageService {\r\n private store = new Map();\r\n\r\n get(key: string): Promise {\r\n if (this.store.has(key)) {\r\n const obj = this.store.get(key);\r\n return Promise.resolve(obj as T);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n if (obj == null) {\r\n return this.remove(key);\r\n }\r\n this.store.set(key, obj);\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n this.store.delete(key);\r\n return Promise.resolve();\r\n }\r\n}\r\n","import * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\n\nexport class WebPlatformUtilsService implements PlatformUtilsService {\n identityClientId: string = 'web';\n\n private browserCache: DeviceType = null;\n\n constructor(private i18nService: I18nService, private messagingService: MessagingService) { }\n\n getDevice(): DeviceType {\n if (this.browserCache != null) {\n return this.browserCache;\n }\n\n if (navigator.userAgent.indexOf(' Firefox/') !== -1 || navigator.userAgent.indexOf(' Gecko/') !== -1) {\n this.browserCache = DeviceType.FirefoxBrowser;\n } else if (navigator.userAgent.indexOf(' OPR/') >= 0) {\n this.browserCache = DeviceType.OperaBrowser;\n } else if (navigator.userAgent.indexOf(' Edge/') !== -1) {\n this.browserCache = DeviceType.EdgeBrowser;\n } else if (navigator.userAgent.indexOf(' Vivaldi/') !== -1) {\n this.browserCache = DeviceType.VivaldiBrowser;\n } else if (navigator.userAgent.indexOf(' Safari/') !== -1 && navigator.userAgent.indexOf('Chrome') === -1) {\n this.browserCache = DeviceType.SafariBrowser;\n } else if ((window as any).chrome && navigator.userAgent.indexOf(' Chrome/') !== -1) {\n this.browserCache = DeviceType.ChromeBrowser;\n } else if (navigator.userAgent.indexOf(' Trident/') !== -1) {\n this.browserCache = DeviceType.IEBrowser;\n } else {\n this.browserCache = DeviceType.UnknownBrowser;\n }\n\n return this.browserCache;\n }\n\n getDeviceString(): string {\n const device = DeviceType[this.getDevice()].toLowerCase();\n return device.replace('browser', '');\n }\n\n isFirefox(): boolean {\n return this.getDevice() === DeviceType.FirefoxBrowser;\n }\n\n isChrome(): boolean {\n return this.getDevice() === DeviceType.ChromeBrowser;\n }\n\n isEdge(): boolean {\n return this.getDevice() === DeviceType.EdgeBrowser;\n }\n\n isOpera(): boolean {\n return this.getDevice() === DeviceType.OperaBrowser;\n }\n\n isVivaldi(): boolean {\n return this.getDevice() === DeviceType.VivaldiBrowser;\n }\n\n isSafari(): boolean {\n return this.getDevice() === DeviceType.SafariBrowser;\n }\n\n isIE(): boolean {\n return this.getDevice() === DeviceType.IEBrowser;\n }\n\n isMacAppStore(): boolean {\n return false;\n }\n\n analyticsId(): string {\n return 'UA-81915606-3';\n }\n\n isViewOpen(): boolean {\n return false;\n }\n\n lockTimeout(): number {\n return null;\n }\n\n launchUri(uri: string, options?: any): void {\n const a = document.createElement('a');\n a.href = uri;\n a.target = '_blank';\n a.rel = 'noreferrer noopener';\n a.classList.add('d-none');\n document.body.appendChild(a);\n a.click();\n document.body.removeChild(a);\n }\n\n saveFile(win: Window, blobData: any, blobOptions: any, fileName: string): void {\n let blob: Blob = null;\n let type: string = null;\n const fileNameLower = fileName.toLowerCase();\n let doDownload = true;\n if (fileNameLower.endsWith('.pdf')) {\n type = 'application/pdf';\n doDownload = false;\n } else if (fileNameLower.endsWith('.xlsx')) {\n type = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\n } else if (fileNameLower.endsWith('.docx')) {\n type = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';\n } else if (fileNameLower.endsWith('.pptx')) {\n type = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';\n } else if (fileNameLower.endsWith('.csv')) {\n type = 'text/csv';\n } else if (fileNameLower.endsWith('.png')) {\n type = 'image/png';\n } else if (fileNameLower.endsWith('.jpg') || fileNameLower.endsWith('.jpeg')) {\n type = 'image/jpeg';\n } else if (fileNameLower.endsWith('.gif')) {\n type = 'image/gif';\n }\n if (type != null) {\n blobOptions = blobOptions || {};\n if (blobOptions.type == null) {\n blobOptions.type = type;\n }\n }\n if (blobOptions != null && !this.isIE()) {\n blob = new Blob([blobData], blobOptions);\n } else {\n blob = new Blob([blobData]);\n }\n if (navigator.msSaveOrOpenBlob) {\n navigator.msSaveBlob(blob, fileName);\n } else {\n const a = win.document.createElement('a');\n if (doDownload) {\n a.download = fileName;\n } else {\n a.target = '_blank';\n }\n a.href = win.URL.createObjectURL(blob);\n a.style.position = 'fixed';\n win.document.body.appendChild(a);\n a.click();\n win.document.body.removeChild(a);\n }\n }\n\n getApplicationVersion(): string {\n return process.env.APPLICATION_VERSION || '-';\n }\n\n supportsU2f(win: Window): boolean {\n if (win != null && (win as any).u2f != null) {\n return true;\n }\n return (this.isChrome() || this.isOpera() || this.isVivaldi()) && !Utils.isMobileBrowser;\n }\n\n supportsDuo(): boolean {\n return true;\n }\n\n showToast(type: 'error' | 'success' | 'warning' | 'info', title: string, text: string | string[],\n options?: any): void {\n this.messagingService.send('showToast', {\n text: text,\n title: title,\n type: type,\n options: options,\n });\n }\n\n async showDialog(text: string, title?: string, confirmText?: string, cancelText?: string, type?: string) {\n const buttons = [confirmText == null ? this.i18nService.t('ok') : confirmText];\n if (cancelText != null) {\n buttons.unshift(cancelText);\n }\n\n const contentDiv = document.createElement('div');\n if (type != null) {\n const icon = document.createElement('i');\n icon.classList.add('swal-custom-icon');\n switch (type) {\n case 'success':\n icon.classList.add('fa', 'fa-check', 'text-success');\n break;\n case 'warning':\n icon.classList.add('fa', 'fa-warning', 'text-warning');\n break;\n case 'error':\n icon.classList.add('fa', 'fa-bolt', 'text-danger');\n break;\n case 'info':\n icon.classList.add('fa', 'fa-info-circle', 'text-info');\n break;\n default:\n break;\n }\n if (icon.classList.contains('fa')) {\n contentDiv.appendChild(icon);\n }\n }\n\n if (title != null) {\n const titleDiv = document.createElement('div');\n titleDiv.classList.add('swal-title');\n titleDiv.appendChild(document.createTextNode(title));\n contentDiv.appendChild(titleDiv);\n }\n\n if (text != null) {\n const textDiv = document.createElement('div');\n textDiv.classList.add('swal-text');\n textDiv.appendChild(document.createTextNode(text));\n contentDiv.appendChild(textDiv);\n }\n\n const confirmed = buttons.length > 1 ? await swal({\n content: { element: contentDiv },\n buttons: buttons,\n }) : await (swal as any)({\n content: { element: contentDiv },\n button: buttons[0],\n });\n return confirmed;\n }\n\n eventTrack(action: string, label?: string, options?: any) {\n this.messagingService.send('analyticsEventTrack', {\n action: action,\n label: label,\n options: options,\n });\n }\n\n isDev(): boolean {\n return process.env.ENV === 'development';\n }\n\n isSelfHost(): boolean {\n return process.env.SELF_HOST.toString() === 'true';\n }\n\n copyToClipboard(text: string, options?: any): void {\n let win = window;\n let doc = window.document;\n if (options && (options.window || options.win)) {\n win = options.window || options.win;\n doc = win.document;\n } else if (options && options.doc) {\n doc = options.doc;\n }\n if ((win as any).clipboardData && (win as any).clipboardData.setData) {\n // IE specific code path to prevent textarea being shown while dialog is visible.\n (win as any).clipboardData.setData('Text', text);\n } else if (doc.queryCommandSupported && doc.queryCommandSupported('copy')) {\n const textarea = doc.createElement('textarea');\n textarea.textContent = text;\n // Prevent scrolling to bottom of page in MS Edge.\n textarea.style.position = 'fixed';\n let copyEl = doc.body;\n // For some reason copy command won't work in Firefox when modal is open if appending to body\n if (this.isFirefox() && doc.body.classList.contains('modal-open')) {\n copyEl = doc.body.querySelector('.modal');\n }\n copyEl.appendChild(textarea);\n textarea.select();\n try {\n // Security exception may be thrown by some browsers.\n doc.execCommand('copy');\n } catch (e) {\n // tslint:disable-next-line\n console.warn('Copy to clipboard failed.', e);\n } finally {\n copyEl.removeChild(textarea);\n }\n }\n }\n}\n","import { AppIdService } from '../abstractions/appId.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nimport { ConstantsService } from '../services/constants.service';\n\nimport { DeviceType } from '../enums/deviceType';\n\nconst GaObj = 'ga';\n\nexport const AnalyticsIds = {\n [DeviceType.ChromeExtension]: 'UA-81915606-6',\n [DeviceType.FirefoxExtension]: 'UA-81915606-7',\n [DeviceType.OperaExtension]: 'UA-81915606-8',\n [DeviceType.EdgeExtension]: 'UA-81915606-9',\n [DeviceType.VivaldiExtension]: 'UA-81915606-15',\n [DeviceType.SafariExtension]: 'UA-81915606-16',\n [DeviceType.WindowsDesktop]: 'UA-81915606-17',\n [DeviceType.LinuxDesktop]: 'UA-81915606-19',\n [DeviceType.MacOsDesktop]: 'UA-81915606-18',\n};\n\nexport class Analytics {\n private gaTrackingId: string = null;\n private defaultDisabled = false;\n private appVersion: string;\n\n constructor(win: Window, private gaFilter?: () => boolean,\n private platformUtilsService?: PlatformUtilsService, private storageService?: StorageService,\n private appIdService?: AppIdService, private dependencyResolver?: () => any) {\n if (dependencyResolver != null) {\n const deps = dependencyResolver();\n if (platformUtilsService == null && deps.platformUtilsService) {\n this.platformUtilsService = deps.platformUtilsService as PlatformUtilsService;\n }\n if (storageService == null && deps.storageService) {\n this.storageService = deps.storageService as StorageService;\n }\n if (appIdService == null && deps.appIdService) {\n this.appIdService = deps.appIdService as AppIdService;\n }\n }\n\n this.appVersion = this.platformUtilsService.getApplicationVersion();\n this.defaultDisabled = this.platformUtilsService.getDevice() === DeviceType.FirefoxExtension ||\n this.platformUtilsService.isMacAppStore();\n this.gaTrackingId = this.platformUtilsService.analyticsId();\n\n (win as any).GoogleAnalyticsObject = GaObj;\n (win as any)[GaObj] = async (action: string, param1: any, param2?: any) => {\n await this.ga(action, param1, param2);\n };\n }\n\n async ga(action: string, param1: any, param2?: any) {\n if (this.gaFilter != null && this.gaFilter()) {\n return;\n }\n\n const disabled = await this.storageService.get(ConstantsService.disableGaKey);\n if ((this.defaultDisabled && disabled == null) || disabled != null && disabled) {\n return;\n }\n\n if (action !== 'send' || !param1) {\n return;\n }\n\n const gaAnonAppId = await this.appIdService.getAnonymousAppId();\n const version = encodeURIComponent(this.appVersion);\n let message = 'v=1&tid=' + this.gaTrackingId + '&cid=' + gaAnonAppId + '&cd1=' + version;\n\n if (param1 === 'pageview' && param2) {\n message += this.gaTrackPageView(param2);\n } else if (typeof param1 === 'object' && param1.hitType === 'pageview') {\n message += this.gaTrackPageView(param1.page);\n } else if (param1 === 'event' && param2) {\n message += this.gaTrackEvent(param2);\n } else if (typeof param1 === 'object' && param1.hitType === 'event') {\n message += this.gaTrackEvent(param1);\n }\n\n const request = new XMLHttpRequest();\n request.open('POST', 'https://www.google-analytics.com/collect', true);\n request.send(message);\n }\n\n private gaTrackEvent(options: any) {\n return '&t=event&ec=' + (options.eventCategory ? encodeURIComponent(options.eventCategory) : 'Event') +\n '&ea=' + encodeURIComponent(options.eventAction) +\n (options.eventLabel ? '&el=' + encodeURIComponent(options.eventLabel) : '') +\n (options.eventValue ? '&ev=' + encodeURIComponent(options.eventValue) : '') +\n (options.page ? '&dp=' + this.cleanPagePath(options.page) : '');\n }\n\n private gaTrackPageView(pagePath: string) {\n return '&t=pageview&dp=' + this.cleanPagePath(pagePath);\n }\n\n private cleanPagePath(pagePath: string) {\n const paramIndex = pagePath.indexOf('?');\n if (paramIndex > -1) {\n pagePath = pagePath.substring(0, paramIndex);\n }\n if (pagePath.indexOf('!/') === 0 || pagePath.indexOf('#/') === 0) {\n pagePath = pagePath.substring(1);\n }\n const pathParts = pagePath.split('/');\n const newPathParts: string[] = [];\n pathParts.forEach((p) => {\n if (p.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)) {\n newPathParts.push('__guid__');\n } else {\n newPathParts.push(p);\n }\n });\n return encodeURIComponent(newPathParts.join('/'));\n }\n}\n","import * as papa from 'papaparse';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { ExportService as ExportServiceAbstraction } from '../abstractions/export.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Collection } from '../models/domain/collection';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\n\r\nimport { CipherWithIds as CipherExport } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId as CollectionExport } from '../models/export/collectionWithId';\r\nimport { FolderWithId as FolderExport } from '../models/export/folderWithId';\r\n\r\nexport class ExportService implements ExportServiceAbstraction {\r\n constructor(private folderService: FolderService, private cipherService: CipherService,\r\n private apiService: ApiService) { }\r\n\r\n async getExport(format: 'csv' | 'json' = 'csv'): Promise {\r\n let decFolders: FolderView[] = [];\r\n let decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.folderService.getAllDecrypted().then((folders) => {\r\n decFolders = folders;\r\n }));\r\n\r\n promises.push(this.cipherService.getAllDecrypted().then((ciphers) => {\r\n decCiphers = ciphers;\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const foldersMap = new Map();\r\n decFolders.forEach((f) => {\r\n foldersMap.set(f.id, f);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.folder = c.folderId != null && foldersMap.has(c.folderId) ?\r\n foldersMap.get(c.folderId).name : null;\r\n cipher.favorite = c.favorite ? 1 : null;\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n folders: [],\r\n items: [],\r\n };\r\n\r\n decFolders.forEach((f) => {\r\n if (f.id == null) {\r\n return;\r\n }\r\n const folder = new FolderExport();\r\n folder.build(f);\r\n jsonDoc.folders.push(folder);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n cipher.collectionIds = null;\r\n jsonDoc.items.push(cipher);\r\n });\r\n\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n async getOrganizationExport(organizationId: string, format: 'csv' | 'json' = 'csv'): Promise {\r\n const decCollections: CollectionView[] = [];\r\n const decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.apiService.getCollections(organizationId).then((collections) => {\r\n const collectionPromises: any = [];\r\n if (collections != null && collections.data != null && collections.data.length > 0) {\r\n collections.data.forEach((c) => {\r\n const collection = new Collection(new CollectionData(c as CollectionDetailsResponse));\r\n collectionPromises.push(collection.decrypt().then((decCol) => {\r\n decCollections.push(decCol);\r\n }));\r\n });\r\n }\r\n return Promise.all(collectionPromises);\r\n }));\r\n\r\n promises.push(this.apiService.getCiphersOrganization(organizationId).then((ciphers) => {\r\n const cipherPromises: any = [];\r\n if (ciphers != null && ciphers.data != null && ciphers.data.length > 0) {\r\n ciphers.data.forEach((c) => {\r\n const cipher = new Cipher(new CipherData(c));\r\n cipherPromises.push(cipher.decrypt().then((decCipher) => {\r\n decCiphers.push(decCipher);\r\n }));\r\n });\r\n }\r\n return Promise.all(cipherPromises);\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const collectionsMap = new Map();\r\n decCollections.forEach((c) => {\r\n collectionsMap.set(c.id, c);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.collections = [];\r\n if (c.collectionIds != null) {\r\n cipher.collections = c.collectionIds.filter((id) => collectionsMap.has(id))\r\n .map((id) => collectionsMap.get(id).name);\r\n }\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n collections: [],\r\n items: [],\r\n };\r\n\r\n decCollections.forEach((c) => {\r\n const collection = new CollectionExport();\r\n collection.build(c);\r\n jsonDoc.collections.push(collection);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n jsonDoc.items.push(cipher);\r\n });\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n getFileName(prefix: string = null, extension: string = 'csv'): string {\r\n const now = new Date();\r\n const dateString =\r\n now.getFullYear() + '' + this.padNumber(now.getMonth() + 1, 2) + '' + this.padNumber(now.getDate(), 2) +\r\n this.padNumber(now.getHours(), 2) + '' + this.padNumber(now.getMinutes(), 2) +\r\n this.padNumber(now.getSeconds(), 2);\r\n\r\n return 'bitwarden' + (prefix ? ('_' + prefix) : '') + '_export_' + dateString + '.' + extension;\r\n }\r\n\r\n private padNumber(num: number, width: number, padCharacter: string = '0'): string {\r\n const numString = num.toString();\r\n return numString.length >= width ? numString :\r\n new Array(width - numString.length + 1).join(padCharacter) + numString;\r\n }\r\n\r\n private buildCommonCipher(cipher: any, c: CipherView) {\r\n cipher.type = null;\r\n cipher.name = c.name;\r\n cipher.notes = c.notes;\r\n cipher.fields = null;\r\n // Login props\r\n cipher.login_uri = null;\r\n cipher.login_username = null;\r\n cipher.login_password = null;\r\n cipher.login_totp = null;\r\n\r\n if (c.fields) {\r\n c.fields.forEach((f: any) => {\r\n if (!cipher.fields) {\r\n cipher.fields = '';\r\n } else {\r\n cipher.fields += '\\n';\r\n }\r\n\r\n cipher.fields += ((f.name || '') + ': ' + f.value);\r\n });\r\n }\r\n\r\n switch (c.type) {\r\n case CipherType.Login:\r\n cipher.type = 'login';\r\n cipher.login_username = c.login.username;\r\n cipher.login_password = c.login.password;\r\n cipher.login_totp = c.login.totp;\r\n\r\n if (c.login.uris) {\r\n cipher.login_uri = [];\r\n c.login.uris.forEach((u) => {\r\n cipher.login_uri.push(u.uri);\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n cipher.type = 'note';\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n return cipher;\r\n }\r\n}\r\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nimport { Card } from './card';\r\nimport { Field } from './field';\r\nimport { Identity } from './identity';\r\nimport { Login } from './login';\r\nimport { SecureNote } from './secureNote';\r\n\r\nexport class Cipher {\r\n static template(): Cipher {\r\n const req = new Cipher();\r\n req.organizationId = null;\r\n req.folderId = null;\r\n req.type = CipherType.Login;\r\n req.name = 'Item name';\r\n req.notes = 'Some notes about this item.';\r\n req.favorite = false;\r\n req.fields = [];\r\n req.login = null;\r\n req.secureNote = null;\r\n req.card = null;\r\n req.identity = null;\r\n return req;\r\n }\r\n\r\n static toView(req: Cipher, view = new CipherView()) {\r\n view.type = req.type;\r\n view.folderId = req.folderId;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n view.name = req.name;\r\n view.notes = req.notes;\r\n view.favorite = req.favorite;\r\n\r\n if (req.fields != null) {\r\n view.fields = req.fields.map((f) => Field.toView(f));\r\n }\r\n\r\n switch (req.type) {\r\n case CipherType.Login:\r\n view.login = Login.toView(req.login);\r\n break;\r\n case CipherType.SecureNote:\r\n view.secureNote = SecureNote.toView(req.secureNote);\r\n break;\r\n case CipherType.Card:\r\n view.card = Card.toView(req.card);\r\n break;\r\n case CipherType.Identity:\r\n view.identity = Identity.toView(req.identity);\r\n break;\r\n }\r\n\r\n return view;\r\n }\r\n\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n fields: Field[];\r\n login: Login;\r\n secureNote: SecureNote;\r\n card: Card;\r\n identity: Identity;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.organizationId = o.organizationId;\r\n this.folderId = o.folderId;\r\n this.type = o.type;\r\n this.name = o.name;\r\n this.notes = o.notes;\r\n this.favorite = o.favorite;\r\n\r\n if (o.fields != null) {\r\n this.fields = o.fields.map((f) => new Field(f));\r\n }\r\n\r\n switch (o.type) {\r\n case CipherType.Login:\r\n this.login = new Login(o.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNote(o.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new Card(o.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new Identity(o.identity);\r\n break;\r\n }\r\n }\r\n}\r\n","import { CardView } from '../view/cardView';\r\n\r\nexport class Card {\r\n static template(): Card {\r\n const req = new Card();\r\n req.cardholderName = 'John Doe';\r\n req.brand = 'visa';\r\n req.number = '4242424242424242';\r\n req.expMonth = '04';\r\n req.expYear = '2023';\r\n req.code = '123';\r\n return req;\r\n }\r\n\r\n static toView(req: Card, view = new CardView()) {\r\n view.cardholderName = req.cardholderName;\r\n view.brand = req.brand;\r\n view.number = req.number;\r\n view.expMonth = req.expMonth;\r\n view.expYear = req.expYear;\r\n view.code = req.code;\r\n return view;\r\n }\r\n\r\n cardholderName: string;\r\n brand: string;\r\n number: string;\r\n expMonth: string;\r\n expYear: string;\r\n code: string;\r\n\r\n constructor(o?: CardView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.cardholderName = o.cardholderName;\r\n this.brand = o.brand;\r\n this.number = o.number;\r\n this.expMonth = o.expMonth;\r\n this.expYear = o.expYear;\r\n this.code = o.code;\r\n }\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { FieldView } from '../view/fieldView';\r\n\r\nexport class Field {\r\n static template(): Field {\r\n const req = new Field();\r\n req.name = 'Field name';\r\n req.value = 'Some value';\r\n req.type = FieldType.Text;\r\n return req;\r\n }\r\n\r\n static toView(req: Field, view = new FieldView()) {\r\n view.type = req.type;\r\n view.value = req.value;\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(o?: FieldView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.name = o.name;\r\n this.value = o.value;\r\n this.type = o.type;\r\n }\r\n}\r\n","import { IdentityView } from '../view/identityView';\r\n\r\nexport class Identity {\r\n static template(): Identity {\r\n const req = new Identity();\r\n req.title = 'Mr';\r\n req.firstName = 'John';\r\n req.middleName = 'William';\r\n req.lastName = 'Doe';\r\n req.address1 = '123 Any St';\r\n req.address2 = 'Apt #123';\r\n req.address3 = null;\r\n req.city = 'New York';\r\n req.state = 'NY';\r\n req.postalCode = '10001';\r\n req.country = 'US';\r\n req.company = 'Acme Inc.';\r\n req.email = 'john@company.com';\r\n req.phone = '5555551234';\r\n req.ssn = '000-123-4567';\r\n req.username = 'jdoe';\r\n req.passportNumber = 'US-123456789';\r\n req.licenseNumber = 'D123-12-123-12333';\r\n return req;\r\n }\r\n\r\n static toView(req: Identity, view = new IdentityView()) {\r\n view.title = req.title;\r\n view.firstName = req.firstName;\r\n view.middleName = req.middleName;\r\n view.lastName = req.lastName;\r\n view.address1 = req.address1;\r\n view.address2 = req.address2;\r\n view.address3 = req.address3;\r\n view.city = req.city;\r\n view.state = req.state;\r\n view.postalCode = req.postalCode;\r\n view.country = req.country;\r\n view.company = req.company;\r\n view.email = req.email;\r\n view.phone = req.phone;\r\n view.ssn = req.ssn;\r\n view.username = req.username;\r\n view.passportNumber = req.passportNumber;\r\n view.licenseNumber = req.licenseNumber;\r\n return view;\r\n }\r\n\r\n title: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n constructor(o?: IdentityView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.title = o.title;\r\n this.firstName = o.firstName;\r\n this.middleName = o.middleName;\r\n this.lastName = o.lastName;\r\n this.address1 = o.address1;\r\n this.address2 = o.address2;\r\n this.address3 = o.address3;\r\n this.city = o.city;\r\n this.state = o.state;\r\n this.postalCode = o.postalCode;\r\n this.country = o.country;\r\n this.company = o.company;\r\n this.email = o.email;\r\n this.phone = o.phone;\r\n this.ssn = o.ssn;\r\n this.username = o.username;\r\n this.passportNumber = o.passportNumber;\r\n this.licenseNumber = o.licenseNumber;\r\n }\r\n}\r\n","import { LoginUri } from './loginUri';\r\n\r\nimport { LoginView } from '../view/loginView';\r\n\r\nexport class Login {\r\n static template(): Login {\r\n const req = new Login();\r\n req.uris = [];\r\n req.username = 'jdoe';\r\n req.password = 'myp@ssword123';\r\n req.totp = 'JBSWY3DPEHPK3PXP';\r\n return req;\r\n }\r\n\r\n static toView(req: Login, view = new LoginView()) {\r\n if (req.uris != null) {\r\n view.uris = req.uris.map((u) => LoginUri.toView(u));\r\n }\r\n view.username = req.username;\r\n view.password = req.password;\r\n view.totp = req.totp;\r\n return view;\r\n }\r\n\r\n uris: LoginUri[];\r\n username: string;\r\n password: string;\r\n totp: string;\r\n\r\n constructor(o?: LoginView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n if (o.uris != null) {\r\n this.uris = o.uris.map((u) => new LoginUri(u));\r\n }\r\n\r\n this.username = o.username;\r\n this.password = o.password;\r\n this.totp = o.totp;\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { LoginUriView } from '../view/loginUriView';\r\n\r\nexport class LoginUri {\r\n static template(): LoginUri {\r\n const req = new LoginUri();\r\n req.uri = 'https://google.com';\r\n req.match = null;\r\n return req;\r\n }\r\n\r\n static toView(req: LoginUri, view = new LoginUriView()) {\r\n view.uri = req.uri;\r\n view.match = req.match;\r\n return view;\r\n }\r\n\r\n uri: string;\r\n match: UriMatchType = null;\r\n\r\n constructor(o?: LoginUriView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.uri = o.uri;\r\n this.match = o.match;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nimport { SecureNoteView } from '../view/secureNoteView';\r\n\r\nexport class SecureNote {\r\n static template(): SecureNote {\r\n const req = new SecureNote();\r\n req.type = SecureNoteType.Generic;\r\n return req;\r\n }\r\n\r\n static toView(req: SecureNote, view = new SecureNoteView()) {\r\n view.type = req.type;\r\n return view;\r\n }\r\n\r\n type: SecureNoteType;\r\n\r\n constructor(o?: SecureNoteView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.type = o.type;\r\n }\r\n}\r\n","import { CollectionView } from '../view/collectionView';\r\n\r\nexport class Collection {\r\n static template(): Collection {\r\n const req = new Collection();\r\n req.organizationId = '00000000-0000-0000-0000-000000000000';\r\n req.name = 'Collection name';\r\n return req;\r\n }\r\n\r\n static toView(req: Collection, view = new CollectionView()) {\r\n view.name = req.name;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n return view;\r\n }\r\n\r\n organizationId: string;\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.organizationId = o.organizationId;\r\n this.name = o.name;\r\n }\r\n}\r\n","import { FolderView } from '../view/folderView';\r\n\r\nexport class Folder {\r\n static template(): Folder {\r\n const req = new Folder();\r\n req.name = 'Folder name';\r\n return req;\r\n }\r\n\r\n static toView(req: Folder, view = new FolderView()) {\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.name = o.name;\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\nimport { CipherService } from '../abstractions/cipher.service';\nimport { CollectionService } from '../abstractions/collection.service';\nimport { FolderService } from '../abstractions/folder.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport {\n ImportOption,\n ImportService as ImportServiceAbstraction,\n} from '../abstractions/import.service';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KvpRequest } from '../models/request/kvpRequest';\n\nimport { CipherView } from '../models/view/cipherView';\n\nimport { AscendoCsvImporter } from '../importers/ascendoCsvImporter';\nimport { AvastCsvImporter } from '../importers/avastCsvImporter';\nimport { AviraCsvImporter } from '../importers/aviraCsvImporter';\nimport { BitwardenCsvImporter } from '../importers/bitwardenCsvImporter';\nimport { BitwardenJsonImporter } from '../importers/bitwardenJsonImporter';\nimport { BlurCsvImporter } from '../importers/blurCsvImporter';\nimport { ChromeCsvImporter } from '../importers/chromeCsvImporter';\nimport { ClipperzHtmlImporter } from '../importers/clipperzHtmlImporter';\nimport { DashlaneJsonImporter } from '../importers/dashlaneJsonImporter';\nimport { EnpassCsvImporter } from '../importers/enpassCsvImporter';\nimport { EnpassJsonImporter } from '../importers/enpassJsonImporter';\nimport { FirefoxCsvImporter } from '../importers/firefoxCsvImporter';\nimport { GnomeJsonImporter } from '../importers/gnomeJsonImporter';\nimport { Importer } from '../importers/importer';\nimport { KeePass2XmlImporter } from '../importers/keepass2XmlImporter';\nimport { KeePassXCsvImporter } from '../importers/keepassxCsvImporter';\nimport { KeeperCsvImporter } from '../importers/keeperCsvImporter';\nimport { LastPassCsvImporter } from '../importers/lastpassCsvImporter';\nimport { MeldiumCsvImporter } from '../importers/meldiumCsvImporter';\nimport { MSecureCsvImporter } from '../importers/msecureCsvImporter';\nimport { OnePassword1PifImporter } from '../importers/onepassword1PifImporter';\nimport { OnePasswordWinCsvImporter } from '../importers/onepasswordWinCsvImporter';\nimport { PadlockCsvImporter } from '../importers/padlockCsvImporter';\nimport { PassKeepCsvImporter } from '../importers/passkeepCsvImporter';\nimport { PassmanJsonImporter } from '../importers/passmanJsonImporter';\nimport { PasspackCsvImporter } from '../importers/passpackCsvImporter';\nimport { PasswordAgentCsvImporter } from '../importers/passwordAgentCsvImporter';\nimport { PasswordBossJsonImporter } from '../importers/passwordBossJsonImporter';\nimport { PasswordDragonXmlImporter } from '../importers/passwordDragonXmlImporter';\nimport { PasswordSafeXmlImporter } from '../importers/passwordSafeXmlImporter';\nimport { RoboFormCsvImporter } from '../importers/roboformCsvImporter';\nimport { SafeInCloudXmlImporter } from '../importers/safeInCloudXmlImporter';\nimport { SaferPassCsvImporter } from '../importers/saferpassCsvImport';\nimport { SplashIdCsvImporter } from '../importers/splashIdCsvImporter';\nimport { StickyPasswordXmlImporter } from '../importers/stickyPasswordXmlImporter';\nimport { TrueKeyCsvImporter } from '../importers/truekeyCsvImporter';\nimport { UpmCsvImporter } from '../importers/upmCsvImporter';\nimport { ZohoVaultCsvImporter } from '../importers/zohoVaultCsvImporter';\n\nexport class ImportService implements ImportServiceAbstraction {\n featuredImportOptions = [\n { id: 'bitwardenjson', name: 'Bitwarden (json)' },\n { id: 'bitwardencsv', name: 'Bitwarden (csv)' },\n { id: 'lastpasscsv', name: 'LastPass (csv)' },\n { id: 'chromecsv', name: 'Chrome (csv)' },\n { id: 'firefoxcsv', name: 'Firefox (csv)' },\n { id: 'keepass2xml', name: 'KeePass 2 (xml)' },\n { id: '1password1pif', name: '1Password (1pif)' },\n { id: 'dashlanejson', name: 'Dashlane (json)' },\n ];\n\n regularImportOptions: ImportOption[] = [\n { id: 'keepassxcsv', name: 'KeePassX (csv)' },\n { id: '1passwordwincsv', name: '1Password 6 and 7 Windows (csv)' },\n { id: 'roboformcsv', name: 'RoboForm (csv)' },\n { id: 'keepercsv', name: 'Keeper (csv)' },\n { id: 'enpasscsv', name: 'Enpass (csv)' },\n { id: 'enpassjson', name: 'Enpass (json)' },\n { id: 'safeincloudxml', name: 'SafeInCloud (xml)' },\n { id: 'pwsafexml', name: 'Password Safe (xml)' },\n { id: 'stickypasswordxml', name: 'Sticky Password (xml)' },\n { id: 'msecurecsv', name: 'mSecure (csv)' },\n { id: 'truekeycsv', name: 'True Key (csv)' },\n { id: 'passwordbossjson', name: 'Password Boss (json)' },\n { id: 'zohovaultcsv', name: 'Zoho Vault (csv)' },\n { id: 'splashidcsv', name: 'SplashID (csv)' },\n { id: 'passworddragonxml', name: 'Password Dragon (xml)' },\n { id: 'padlockcsv', name: 'Padlock (csv)' },\n { id: 'passboltcsv', name: 'Passbolt (csv)' },\n { id: 'clipperzhtml', name: 'Clipperz (html)' },\n { id: 'aviracsv', name: 'Avira (csv)' },\n { id: 'saferpasscsv', name: 'SaferPass (csv)' },\n { id: 'upmcsv', name: 'Universal Password Manager (csv)' },\n { id: 'ascendocsv', name: 'Ascendo DataVault (csv)' },\n { id: 'meldiumcsv', name: 'Meldium (csv)' },\n { id: 'passkeepcsv', name: 'PassKeep (csv)' },\n { id: 'operacsv', name: 'Opera (csv)' },\n { id: 'vivaldicsv', name: 'Vivaldi (csv)' },\n { id: 'gnomejson', name: 'GNOME Passwords and Keys/Seahorse (json)' },\n { id: 'blurcsv', name: 'Blur (csv)' },\n { id: 'passwordagentcsv', name: 'Password Agent (csv)' },\n { id: 'passpackcsv', name: 'Passpack (csv)' },\n { id: 'passmanjson', name: 'Passman (json)' },\n { id: 'avastcsv', name: 'Avast Passwords (csv)' },\n ];\n\n constructor(private cipherService: CipherService, private folderService: FolderService,\n private apiService: ApiService, private i18nService: I18nService,\n private collectionService: CollectionService) { }\n\n getImportOptions(): ImportOption[] {\n return this.featuredImportOptions.concat(this.regularImportOptions);\n }\n\n async import(importer: Importer, fileContents: string, organizationId: string = null): Promise {\n const importResult = await importer.parse(fileContents);\n if (importResult.success) {\n if (importResult.folders.length === 0 && importResult.ciphers.length === 0) {\n return new Error(this.i18nService.t('importNothingError'));\n } else if (importResult.ciphers.length > 0) {\n const halfway = Math.floor(importResult.ciphers.length / 2);\n const last = importResult.ciphers.length - 1;\n\n if (this.badData(importResult.ciphers[0]) &&\n this.badData(importResult.ciphers[halfway]) &&\n this.badData(importResult.ciphers[last])) {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n await this.postImport(importResult, organizationId);\n return null;\n } else {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n\n getImporter(format: string, organization = false): Importer {\n const importer = this.getImporterInstance(format);\n if (importer == null) {\n return null;\n }\n importer.organization = organization;\n return importer;\n }\n\n private getImporterInstance(format: string) {\n if (format == null || format === '') {\n return null;\n }\n\n switch (format) {\n case 'bitwardencsv':\n return new BitwardenCsvImporter();\n case 'bitwardenjson':\n return new BitwardenJsonImporter();\n case 'lastpasscsv':\n case 'passboltcsv':\n return new LastPassCsvImporter();\n case 'keepassxcsv':\n return new KeePassXCsvImporter();\n case 'aviracsv':\n return new AviraCsvImporter();\n case 'blurcsv':\n return new BlurCsvImporter();\n case 'safeincloudxml':\n return new SafeInCloudXmlImporter();\n case 'padlockcsv':\n return new PadlockCsvImporter();\n case 'keepass2xml':\n return new KeePass2XmlImporter();\n case 'chromecsv':\n case 'operacsv':\n case 'vivaldicsv':\n return new ChromeCsvImporter();\n case 'firefoxcsv':\n return new FirefoxCsvImporter();\n case 'upmcsv':\n return new UpmCsvImporter();\n case 'saferpasscsv':\n return new SaferPassCsvImporter();\n case 'meldiumcsv':\n return new MeldiumCsvImporter();\n case '1password1pif':\n return new OnePassword1PifImporter();\n case '1passwordwincsv':\n return new OnePasswordWinCsvImporter();\n case 'keepercsv':\n return new KeeperCsvImporter();\n case 'passworddragonxml':\n return new PasswordDragonXmlImporter();\n case 'enpasscsv':\n return new EnpassCsvImporter();\n case 'enpassjson':\n return new EnpassJsonImporter();\n case 'pwsafexml':\n return new PasswordSafeXmlImporter();\n case 'dashlanejson':\n return new DashlaneJsonImporter();\n case 'msecurecsv':\n return new MSecureCsvImporter();\n case 'stickypasswordxml':\n return new StickyPasswordXmlImporter();\n case 'truekeycsv':\n return new TrueKeyCsvImporter();\n case 'clipperzhtml':\n return new ClipperzHtmlImporter();\n case 'roboformcsv':\n return new RoboFormCsvImporter();\n case 'ascendocsv':\n return new AscendoCsvImporter();\n case 'passwordbossjson':\n return new PasswordBossJsonImporter();\n case 'zohovaultcsv':\n return new ZohoVaultCsvImporter();\n case 'splashidcsv':\n return new SplashIdCsvImporter();\n case 'passkeepcsv':\n return new PassKeepCsvImporter();\n case 'gnomejson':\n return new GnomeJsonImporter();\n case 'passwordagentcsv':\n return new PasswordAgentCsvImporter();\n case 'passpackcsv':\n return new PasspackCsvImporter();\n case 'passmanjson':\n return new PassmanJsonImporter();\n case 'avastcsv':\n return new AvastCsvImporter();\n default:\n return null;\n }\n }\n\n private async postImport(importResult: ImportResult, organizationId: string = null) {\n if (organizationId == null) {\n const request = new ImportCiphersRequest();\n for (let i = 0; i < importResult.ciphers.length; i++) {\n const c = await this.cipherService.encrypt(importResult.ciphers[i]);\n request.ciphers.push(new CipherRequest(c));\n }\n if (importResult.folders != null) {\n for (let i = 0; i < importResult.folders.length; i++) {\n const f = await this.folderService.encrypt(importResult.folders[i]);\n request.folders.push(new FolderRequest(f));\n }\n }\n if (importResult.folderRelationships != null) {\n importResult.folderRelationships.forEach((r) =>\n request.folderRelationships.push(new KvpRequest(r[0], r[1])));\n }\n return await this.apiService.postImportCiphers(request);\n } else {\n const request = new ImportOrganizationCiphersRequest();\n for (let i = 0; i < importResult.ciphers.length; i++) {\n importResult.ciphers[i].organizationId = organizationId;\n const c = await this.cipherService.encrypt(importResult.ciphers[i]);\n request.ciphers.push(new CipherRequest(c));\n }\n if (importResult.collections != null) {\n for (let i = 0; i < importResult.collections.length; i++) {\n importResult.collections[i].organizationId = organizationId;\n const c = await this.collectionService.encrypt(importResult.collections[i]);\n request.collections.push(new CollectionRequest(c));\n }\n }\n if (importResult.collectionRelationships != null) {\n importResult.collectionRelationships.forEach((r) =>\n request.collectionRelationships.push(new KvpRequest(r[0], r[1])));\n }\n return await this.apiService.postImportOrganizationCiphers(organizationId, request);\n }\n }\n\n private badData(c: CipherView) {\n return (c.name == null || c.name === '--') &&\n (c.login != null && (c.login.password == null || c.login.password === ''));\n }\n}\n","import { CipherRequest } from './cipherRequest';\nimport { FolderRequest } from './folderRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportCiphersRequest {\n ciphers: CipherRequest[] = [];\n folders: FolderRequest[] = [];\n folderRelationships: Array> = [];\n}\n","import { CipherRequest } from './cipherRequest';\nimport { CollectionRequest } from './collectionRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportOrganizationCiphersRequest {\n ciphers: CipherRequest[] = [];\n collections: CollectionRequest[] = [];\n collectionRelationships: Array> = [];\n}\n","export class KvpRequest {\n key: TK;\n value: TV;\n\n constructor(key: TK, value: TV) {\n this.key = key;\n this.value = value;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class AscendoCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 2) {\r\n return;\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[value.length - 1]);\r\n cipher.name = this.getValueOrDefault(value[0], '--');\r\n\r\n if (value.length > 2 && (value.length % 2) === 0) {\r\n for (let i = 0; i < value.length - 2; i += 2) {\r\n const val: string = value[i + 2];\r\n const field: string = value[i + 1];\r\n if (this.isNullOrWhitespace(val) || this.isNullOrWhitespace(field)) {\r\n continue;\r\n }\r\n\r\n const fieldLower = field.toLowerCase();\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(val);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(val);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(val);\r\n } else {\r\n this.processKvp(cipher, field, val);\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AvastCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name);\n cipher.login.uris = this.makeUriArray(value.web);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.username = this.getValueOrDefault(value.login);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AviraCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name,\n this.getValueOrDefault(this.nameFromUrl(value.website), '--'));\n cipher.login.uris = this.makeUriArray(value.website);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.username) && !this.isNullOrWhitespace(value.secondary_username)) {\n cipher.login.username = value.secondary_username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.notes = this.getValueOrDefault(value.secondary_username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class BitwardenCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.organization && !this.isNullOrWhitespace(value.collections)) {\r\n const collections = (value.collections as string).split(',');\r\n collections.forEach((col) => {\r\n let addCollection = true;\r\n let collectionIndex = result.collections.length;\r\n\r\n for (let i = 0; i < result.collections.length; i++) {\r\n if (result.collections[i].name === col) {\r\n addCollection = false;\r\n collectionIndex = i;\r\n break;\r\n }\r\n }\r\n\r\n if (addCollection) {\r\n const collection = new CollectionView();\r\n collection.name = col;\r\n result.collections.push(collection);\r\n }\r\n\r\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\r\n });\r\n } else if (!this.organization) {\r\n this.processFolder(result, value.folder);\r\n }\r\n\r\n const cipher = new CipherView();\r\n cipher.favorite = !this.organization && this.getValueOrDefault(value.favorite, '0') !== '0' ? true : false;\r\n cipher.type = CipherType.Login;\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n\r\n if (!this.isNullOrWhitespace(value.fields)) {\r\n const fields = this.splitNewLine(value.fields);\r\n for (let i = 0; i < fields.length; i++) {\r\n if (this.isNullOrWhitespace(fields[i])) {\r\n continue;\r\n }\r\n\r\n const delimPosition = fields[i].lastIndexOf(': ');\r\n if (delimPosition === -1) {\r\n continue;\r\n }\r\n\r\n if (cipher.fields == null) {\r\n cipher.fields = [];\r\n }\r\n\r\n const field = new FieldView();\r\n field.name = fields[i].substr(0, delimPosition);\r\n field.value = null;\r\n field.type = FieldType.Text;\r\n if (fields[i].length > (delimPosition + 2)) {\r\n field.value = fields[i].substr(delimPosition + 2);\r\n }\r\n cipher.fields.push(field);\r\n }\r\n }\r\n\r\n const valueType = value.type != null ? value.type.toLowerCase() : null;\r\n switch (valueType) {\r\n case 'note':\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n break;\r\n default:\r\n cipher.type = CipherType.Login;\r\n cipher.login = new LoginView();\r\n cipher.login.totp = this.getValueOrDefault(value.login_totp || value.totp);\r\n cipher.login.username = this.getValueOrDefault(value.login_username || value.username);\r\n cipher.login.password = this.getValueOrDefault(value.login_password || value.password);\r\n const uris = this.parseSingleRowCsv(value.login_uri || value.uri);\r\n cipher.login.uris = this.makeUriArray(uris);\r\n break;\r\n }\r\n\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherWithIds } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId } from '../models/export/collectionWithId';\r\nimport { FolderWithId } from '../models/export/folderWithId';\r\n\r\nexport class BitwardenJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.items == null || results.items.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const groupingsMap = new Map();\r\n if (this.organization && results.collections != null) {\r\n results.collections.forEach((c: CollectionWithId) => {\r\n const collection = CollectionWithId.toView(c);\r\n if (collection != null) {\r\n collection.id = null;\r\n collection.organizationId = null;\r\n groupingsMap.set(c.id, result.collections.length);\r\n result.collections.push(collection);\r\n }\r\n });\r\n } else if (!this.organization && results.folders != null) {\r\n results.folders.forEach((f: FolderWithId) => {\r\n const folder = FolderWithId.toView(f);\r\n if (folder != null) {\r\n folder.id = null;\r\n groupingsMap.set(f.id, result.folders.length);\r\n result.folders.push(folder);\r\n }\r\n });\r\n }\r\n\r\n results.items.forEach((c: CipherWithIds) => {\r\n const cipher = CipherWithIds.toView(c);\r\n // reset ids incase they were set for some reason\r\n cipher.id = null;\r\n cipher.folderId = null;\r\n cipher.organizationId = null;\r\n cipher.collectionIds = null;\r\n\r\n if (!this.organization && c.folderId != null && groupingsMap.has(c.folderId)) {\r\n result.folderRelationships.push([result.ciphers.length, groupingsMap.get(c.folderId)]);\r\n } else if (this.organization && c.collectionIds != null) {\r\n c.collectionIds.forEach((cId) => {\r\n if (groupingsMap.has(cId)) {\r\n result.collectionRelationships.push([result.ciphers.length, groupingsMap.get(cId)]);\r\n }\r\n });\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class BlurCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.label === 'null') {\n value.label = null;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.label,\n this.getValueOrDefault(this.nameFromUrl(value.domain), '--'));\n cipher.login.uris = this.makeUriArray(value.domain);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.email) && !this.isNullOrWhitespace(value.username)) {\n cipher.login.username = value.username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.email);\n cipher.notes = this.getValueOrDefault(value.username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class ChromeCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name, '--');\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class ClipperzHtmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const textarea = doc.querySelector('textarea');\r\n if (textarea == null || this.isNullOrWhitespace(textarea.textContent)) {\r\n result.errorMessage = 'Missing textarea.';\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const entries = JSON.parse(textarea.textContent);\r\n entries.forEach((entry: any) => {\r\n const cipher = this.initLoginCipher();\r\n if (!this.isNullOrWhitespace(entry.label)) {\r\n cipher.name = entry.label.split(' ')[0];\r\n }\r\n if (entry.data != null && !this.isNullOrWhitespace(entry.data.notes)) {\r\n cipher.notes = entry.data.notes.split('\\\\n').join('\\n');\r\n }\r\n\r\n if (entry.currentVersion != null && entry.currentVersion.fields != null) {\r\n for (const property in entry.currentVersion.fields) {\r\n if (!entry.currentVersion.fields.hasOwnProperty(property)) {\r\n continue;\r\n }\r\n\r\n const field = entry.currentVersion.fields[property];\r\n const actionType = field.actionType != null ? field.actionType.toLowerCase() : null;\r\n switch (actionType) {\r\n case 'password':\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n break;\r\n case 'email':\r\n case 'username':\r\n case 'user':\r\n case 'name':\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n break;\r\n case 'url':\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n break;\r\n default:\r\n const labelLower = field.label != null ? field.label.toLowerCase() : null;\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { IdentityView } from '../models/view/identityView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nconst HandledResults = new Set(['ADDRESS', 'AUTHENTIFIANT', 'BANKSTATEMENT', 'IDCARD', 'IDENTITY',\r\n 'PAYMENTMEANS_CREDITCARD', 'PAYMENTMEAN_PAYPAL', 'EMAIL']);\r\n\r\nexport class DashlaneJsonImporter extends BaseImporter implements Importer {\r\n private result: ImportResult;\r\n\r\n parse(data: string): ImportResult {\r\n this.result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.length === 0) {\r\n this.result.success = false;\r\n return this.result;\r\n }\r\n\r\n if (results.ADDRESS != null) {\r\n this.processAddress(results.ADDRESS);\r\n }\r\n if (results.AUTHENTIFIANT != null) {\r\n this.processAuth(results.AUTHENTIFIANT);\r\n }\r\n if (results.BANKSTATEMENT != null) {\r\n this.processNote(results.BANKSTATEMENT, 'BankAccountName');\r\n }\r\n if (results.IDCARD != null) {\r\n this.processNote(results.IDCARD, 'Fullname');\r\n }\r\n if (results.PAYMENTMEANS_CREDITCARD != null) {\r\n this.processCard(results.PAYMENTMEANS_CREDITCARD);\r\n }\r\n if (results.IDENTITY != null) {\r\n this.processIdentity(results.IDENTITY);\r\n }\r\n\r\n for (const key in results) {\r\n if (results.hasOwnProperty(key) && !HandledResults.has(key)) {\r\n this.processNote(results[key], null, 'Generic Note');\r\n }\r\n }\r\n\r\n this.result.success = true;\r\n return this.result;\r\n }\r\n\r\n private processAuth(results: any[]) {\r\n results.forEach((credential: any) => {\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(credential.title);\r\n\r\n cipher.login.username = this.getValueOrDefault(credential.login,\r\n this.getValueOrDefault(credential.secondaryLogin));\r\n if (this.isNullOrWhitespace(cipher.login.username)) {\r\n cipher.login.username = this.getValueOrDefault(credential.email);\r\n } else if (!this.isNullOrWhitespace(credential.email)) {\r\n cipher.notes = ('Email: ' + credential.email + '\\n');\r\n }\r\n\r\n cipher.login.password = this.getValueOrDefault(credential.password);\r\n cipher.login.uris = this.makeUriArray(credential.domain);\r\n cipher.notes += this.getValueOrDefault(credential.note, '');\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processIdentity(results: any[]) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.identity = new IdentityView();\r\n cipher.type = CipherType.Identity;\r\n cipher.name = this.getValueOrDefault(obj.fullName, '');\r\n const nameParts = cipher.name.split(' ');\r\n if (nameParts.length > 0) {\r\n cipher.identity.firstName = this.getValueOrDefault(nameParts[0]);\r\n }\r\n if (nameParts.length === 2) {\r\n cipher.identity.lastName = this.getValueOrDefault(nameParts[1]);\r\n } else if (nameParts.length === 3) {\r\n cipher.identity.middleName = this.getValueOrDefault(nameParts[1]);\r\n cipher.identity.lastName = this.getValueOrDefault(nameParts[2]);\r\n }\r\n cipher.identity.username = this.getValueOrDefault(obj.pseudo);\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processAddress(results: any[]) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.identity = new IdentityView();\r\n cipher.type = CipherType.Identity;\r\n cipher.name = this.getValueOrDefault(obj.addressName);\r\n cipher.identity.address1 = this.getValueOrDefault(obj.addressFull);\r\n cipher.identity.city = this.getValueOrDefault(obj.city);\r\n cipher.identity.state = this.getValueOrDefault(obj.state);\r\n cipher.identity.postalCode = this.getValueOrDefault(obj.zipcode);\r\n cipher.identity.country = this.getValueOrDefault(obj.country);\r\n if (cipher.identity.country != null) {\r\n cipher.identity.country = cipher.identity.country.toUpperCase();\r\n }\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processCard(results: any[]) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.card = new CardView();\r\n cipher.type = CipherType.Card;\r\n cipher.name = this.getValueOrDefault(obj.bank);\r\n cipher.card.number = this.getValueOrDefault(obj.cardNumber);\r\n cipher.card.brand = this.getCardBrand(cipher.card.number);\r\n cipher.card.cardholderName = this.getValueOrDefault(obj.owner);\r\n if (!this.isNullOrWhitespace(cipher.card.brand)) {\r\n if (this.isNullOrWhitespace(cipher.name)) {\r\n cipher.name = cipher.card.brand;\r\n } else {\r\n cipher.name += (' - ' + cipher.card.brand);\r\n }\r\n }\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processNote(results: any[], nameProperty: string, name: string = null) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.type = CipherType.SecureNote;\r\n if (name != null) {\r\n cipher.name = name;\r\n } else {\r\n cipher.name = this.getValueOrDefault(obj[nameProperty]);\r\n }\r\n for (const key in obj) {\r\n if (obj.hasOwnProperty(key) && key !== nameProperty) {\r\n this.processKvp(cipher, key, obj[key].toString());\r\n }\r\n }\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nimport { CardView } from '../models/view/cardView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nexport class EnpassCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n let firstRow = true;\n results.forEach((value) => {\n if (value.length < 2 || (firstRow && (value[0] === 'Title' || value[0] === 'title'))) {\n firstRow = false;\n return;\n }\n\n const cipher = this.initLoginCipher();\n cipher.notes = this.getValueOrDefault(value[value.length - 1]);\n cipher.name = this.getValueOrDefault(value[0], '--');\n\n if (value.length === 2 || (!this.containsField(value, 'username') &&\n !this.containsField(value, 'password') && !this.containsField(value, 'email') &&\n !this.containsField(value, 'url'))) {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n }\n\n if (this.containsField(value, 'cardholder') && this.containsField(value, 'number') &&\n this.containsField(value, 'expiry date')) {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n }\n\n if (value.length > 2 && (value.length % 2) === 0) {\n for (let i = 0; i < value.length - 2; i += 2) {\n const fieldValue: string = value[i + 2];\n if (this.isNullOrWhitespace(fieldValue)) {\n continue;\n }\n\n const fieldName: string = value[i + 1];\n const fieldNameLower = fieldName.toLowerCase();\n\n if (cipher.type === CipherType.Login) {\n if (fieldNameLower === 'url' && (cipher.login.uris == null || cipher.login.uris.length === 0)) {\n cipher.login.uris = this.makeUriArray(fieldValue);\n continue;\n } else if ((fieldNameLower === 'username' || fieldNameLower === 'email') &&\n this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = fieldValue;\n continue;\n } else if (fieldNameLower === 'password' && this.isNullOrWhitespace(cipher.login.password)) {\n cipher.login.password = fieldValue;\n continue;\n } else if (fieldNameLower === 'totp' && this.isNullOrWhitespace(cipher.login.totp)) {\n cipher.login.totp = fieldValue;\n continue;\n }\n } else if (cipher.type === CipherType.Card) {\n if (fieldNameLower === 'cardholder' && this.isNullOrWhitespace(cipher.card.cardholderName)) {\n cipher.card.cardholderName = fieldValue;\n continue;\n } else if (fieldNameLower === 'number' && this.isNullOrWhitespace(cipher.card.number)) {\n cipher.card.number = fieldValue;\n cipher.card.brand = this.getCardBrand(fieldValue);\n continue;\n } else if (fieldNameLower === 'cvc' && this.isNullOrWhitespace(cipher.card.code)) {\n cipher.card.code = fieldValue;\n continue;\n } else if (fieldNameLower === 'expiry date' && this.isNullOrWhitespace(cipher.card.expMonth) &&\n this.isNullOrWhitespace(cipher.card.expYear)) {\n const parts = fieldValue.split('/');\n if (parts.length === 2) {\n let month: string = null;\n let year: string = null;\n if (parts[0].length === 1 || parts[0].length === 2) {\n month = parts[0];\n if (month.length === 2 && month[0] === '0') {\n month = month.substr(1, 1);\n }\n }\n if (parts[1].length === 2 || parts[1].length === 4) {\n year = month.length === 2 ? '20' + parts[1] : parts[1];\n }\n if (month != null && year != null) {\n cipher.card.expMonth = month;\n cipher.card.expYear = year;\n continue;\n }\n }\n } else if (fieldNameLower === 'type') {\n // Skip since brand was determined from number above\n continue;\n }\n }\n\n this.processKvp(cipher, fieldName, fieldValue);\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n\n private containsField(fields: any[], name: string) {\n if (fields == null || name == null) {\n return false;\n }\n return fields.filter((f) => !this.isNullOrWhitespace(f) &&\n f.toLowerCase() === name.toLowerCase()).length > 0;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nexport class EnpassJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.items == null || results.items.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.items.forEach((item: any) => {\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(item.title);\r\n cipher.favorite = item.favorite > 0;\r\n\r\n if (item.template_type != null && item.fields != null && item.fields.length > 0) {\r\n if (item.template_type.indexOf('login.') === 0 || item.template_type.indexOf('password.') === 0) {\r\n this.processLogin(cipher, item.fields);\r\n } else if (item.template_type.indexOf('creditcard.') === 0) {\r\n this.processCard(cipher, item.fields);\r\n } else if (item.template_type.indexOf('identity.') < 0 &&\r\n item.fields.find((f: any) => f.type === 'password' && !this.isNullOrWhitespace(f.value)) != null) {\r\n this.processLogin(cipher, item.fields);\r\n } else {\r\n this.processNote(cipher, item.fields);\r\n }\r\n }\r\n\r\n cipher.notes += ('\\n' + this.getValueOrDefault(item.note, ''));\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private processLogin(cipher: CipherView, fields: any[]) {\r\n const urls: string[] = [];\r\n fields.forEach((field: any) => {\r\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\r\n return;\r\n }\r\n\r\n if ((field.type === 'username' || field.type === 'email') &&\r\n this.isNullOrWhitespace(cipher.login.username)) {\r\n cipher.login.username = field.value;\r\n } else if (field.type === 'password' && this.isNullOrWhitespace(cipher.login.password)) {\r\n cipher.login.password = field.value;\r\n } else if (field.type === 'totp' && this.isNullOrWhitespace(cipher.login.totp)) {\r\n cipher.login.totp = field.value;\r\n } else if (field.type === 'url') {\r\n urls.push(field.value);\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n });\r\n cipher.login.uris = this.makeUriArray(urls);\r\n }\r\n\r\n private processCard(cipher: CipherView, fields: any[]) {\r\n cipher.card = new CardView();\r\n cipher.type = CipherType.Card;\r\n fields.forEach((field: any) => {\r\n if (this.isNullOrWhitespace(field.value) || field.type === 'section' || field.type === 'ccType') {\r\n return;\r\n }\r\n\r\n if (field.type === 'ccName' && this.isNullOrWhitespace(cipher.card.cardholderName)) {\r\n cipher.card.cardholderName = field.value;\r\n } else if (field.type === 'ccNumber' && this.isNullOrWhitespace(cipher.card.number)) {\r\n cipher.card.number = field.value;\r\n cipher.card.brand = this.getCardBrand(cipher.card.number);\r\n } else if (field.type === 'ccCvc' && this.isNullOrWhitespace(cipher.card.code)) {\r\n cipher.card.code = field.value;\r\n } else if (field.type === 'ccExpiry' && this.isNullOrWhitespace(cipher.card.expYear)) {\r\n const parts = field.value.split('/');\r\n if (parts.length === 2) {\r\n let month: string = null;\r\n let year: string = null;\r\n if (parts[0].length === 1 || parts[0].length === 2) {\r\n month = parts[0];\r\n if (month.length === 2 && month[0] === '0') {\r\n month = month.substr(1, 1);\r\n }\r\n }\r\n if (parts[1].length === 2 || parts[1].length === 4) {\r\n year = month.length === 2 ? '20' + parts[1] : parts[1];\r\n }\r\n if (month != null && year != null) {\r\n cipher.card.expMonth = month;\r\n cipher.card.expYear = year;\r\n }\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n });\r\n }\r\n\r\n private processNote(cipher: CipherView, fields: any[]) {\r\n fields.forEach((field: any) => {\r\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\r\n return;\r\n }\r\n this.processKvp(cipher, field.label, field.value);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class FirefoxCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(this.nameFromUrl(value.hostname), '--');\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.hostname);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class GnomeJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || Object.keys(results).length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n for (const keyRing in results) {\r\n if (!results.hasOwnProperty(keyRing) || this.isNullOrWhitespace(keyRing) ||\r\n results[keyRing].length === 0) {\r\n continue;\r\n }\r\n\r\n results[keyRing].forEach((value: any) => {\r\n if (this.isNullOrWhitespace(value.display_name) || value.display_name.indexOf('http') !== 0) {\r\n return;\r\n }\r\n\r\n this.processFolder(result, keyRing);\r\n const cipher = this.initLoginCipher();\r\n cipher.name = value.display_name.replace('http://', '').replace('https://', '');\r\n if (cipher.name.length > 30) {\r\n cipher.name = cipher.name.substring(0, 30);\r\n }\r\n cipher.login.password = this.getValueOrDefault(value.secret);\r\n cipher.login.uris = this.makeUriArray(value.display_name);\r\n\r\n if (value.attributes != null) {\r\n cipher.login.username = value.attributes != null ?\r\n this.getValueOrDefault(value.attributes.username_value) : null;\r\n for (const attr in value.attributes) {\r\n if (!value.attributes.hasOwnProperty(attr) || attr === 'username_value' ||\r\n attr === 'xdg:schema') {\r\n continue;\r\n }\r\n this.processKvp(cipher, attr, value.attributes[attr]);\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nexport class KeePass2XmlImporter extends BaseImporter implements Importer {\r\n result = new ImportResult();\r\n\r\n parse(data: string): ImportResult {\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n this.result.success = false;\r\n return this.result;\r\n }\r\n\r\n const rootGroup = doc.querySelector('KeePassFile > Root > Group');\r\n if (rootGroup == null) {\r\n this.result.errorMessage = 'Missing `KeePassFile > Root > Group` node.';\r\n this.result.success = false;\r\n return this.result;\r\n }\r\n\r\n this.traverse(rootGroup, true, '');\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(this.result);\r\n }\r\n\r\n this.result.success = true;\r\n return this.result;\r\n }\r\n\r\n traverse(node: Element, isRootNode: boolean, groupPrefixName: string) {\r\n const folderIndex = this.result.folders.length;\r\n let groupName = groupPrefixName;\r\n\r\n if (!isRootNode) {\r\n if (groupName !== '') {\r\n groupName += '/';\r\n }\r\n const nameEl = this.querySelectorDirectChild(node, 'Name');\r\n groupName += nameEl == null ? '-' : nameEl.textContent;\r\n const folder = new FolderView();\r\n folder.name = groupName;\r\n this.result.folders.push(folder);\r\n }\r\n\r\n this.querySelectorAllDirectChild(node, 'Entry').forEach((entry) => {\r\n const cipherIndex = this.result.ciphers.length;\r\n\r\n const cipher = this.initLoginCipher();\r\n this.querySelectorAllDirectChild(entry, 'String').forEach((entryString) => {\r\n const valueEl = this.querySelectorDirectChild(entryString, 'Value');\r\n const value = valueEl != null ? valueEl.textContent : null;\r\n if (this.isNullOrWhitespace(value)) {\r\n return;\r\n }\r\n const keyEl = this.querySelectorDirectChild(entryString, 'Key');\r\n const key = keyEl != null ? keyEl.textContent : null;\r\n\r\n if (key === 'URL') {\r\n cipher.login.uris = this.makeUriArray(value);\r\n } else if (key === 'UserName') {\r\n cipher.login.username = value;\r\n } else if (key === 'Password') {\r\n cipher.login.password = value;\r\n } else if (key === 'Title') {\r\n cipher.name = value;\r\n } else if (key === 'Notes') {\r\n cipher.notes += (value + '\\n');\r\n } else {\r\n this.processKvp(cipher, key, value);\r\n }\r\n });\r\n\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n\r\n if (!isRootNode) {\r\n this.result.folderRelationships.push([cipherIndex, folderIndex]);\r\n }\r\n });\r\n\r\n this.querySelectorAllDirectChild(node, 'Group').forEach((group) => {\r\n this.traverse(group, false, groupName);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class KeePassXCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.isNullOrWhitespace(value.Title)) {\r\n return;\r\n }\r\n\r\n value.Group = !this.isNullOrWhitespace(value.Group) && value.Group.startsWith('Root/') ?\r\n value.Group.replace('Root/', '') : value.Group;\r\n const groupName = !this.isNullOrWhitespace(value.Group) ? value.Group : null;\r\n this.processFolder(result, groupName);\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value.Notes);\r\n cipher.name = this.getValueOrDefault(value.Title, '--');\r\n cipher.login.username = this.getValueOrDefault(value.Username);\r\n cipher.login.password = this.getValueOrDefault(value.Password);\r\n cipher.login.uris = this.makeUriArray(value.URL);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { FolderView } from '../models/view/folderView';\n\nexport class KeeperCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.length < 6) {\n return;\n }\n\n this.processFolder(result, value[0]);\n const cipher = this.initLoginCipher();\n cipher.notes = this.getValueOrDefault(value[5]) + '\\n';\n cipher.name = this.getValueOrDefault(value[1], '--');\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.login.password = this.getValueOrDefault(value[3]);\n cipher.login.uris = this.makeUriArray(value[4]);\n\n if (value.length > 7) {\n // we have some custom fields.\n for (let i = 7; i < value.length; i = i + 2) {\n this.processKvp(cipher, value[i], value[i + 1]);\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { IdentityView } from '../models/view/identityView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class LastPassCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value, index) => {\r\n const cipherIndex = result.ciphers.length;\r\n let folderIndex = result.folders.length;\r\n const hasFolder = this.getValueOrDefault(value.grouping, '(none)') !== '(none)';\r\n let addFolder = hasFolder;\r\n\r\n if (hasFolder) {\r\n for (let i = 0; i < result.folders.length; i++) {\r\n if (result.folders[i].name === value.grouping) {\r\n addFolder = false;\r\n folderIndex = i;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n const cipher = this.buildBaseCipher(value);\r\n if (cipher.type === CipherType.Login) {\r\n cipher.notes = this.getValueOrDefault(value.extra);\r\n cipher.login = new LoginView();\r\n cipher.login.uris = this.makeUriArray(value.url);\r\n cipher.login.username = this.getValueOrDefault(value.username);\r\n cipher.login.password = this.getValueOrDefault(value.password);\r\n } else if (cipher.type === CipherType.SecureNote) {\r\n this.parseSecureNote(value, cipher);\r\n } else if (cipher.type === CipherType.Card) {\r\n cipher.card = this.parseCard(value);\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n } else if (cipher.type === CipherType.Identity) {\r\n cipher.identity = this.parseIdentity(value);\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n if (!this.isNullOrWhitespace(value.ccnum)) {\r\n // there is a card on this identity too\r\n const cardCipher = this.buildBaseCipher(value);\r\n cardCipher.identity = null;\r\n cardCipher.type = CipherType.Card;\r\n cardCipher.card = this.parseCard(value);\r\n result.ciphers.push(cardCipher);\r\n }\r\n }\r\n\r\n result.ciphers.push(cipher);\r\n\r\n if (addFolder) {\r\n const f = new FolderView();\r\n f.name = value.grouping;\r\n result.folders.push(f);\r\n }\r\n if (hasFolder) {\r\n result.folderRelationships.push([cipherIndex, folderIndex]);\r\n }\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private buildBaseCipher(value: any) {\r\n const cipher = new CipherView();\r\n if (value.hasOwnProperty('profilename') && value.hasOwnProperty('profilelanguage')) {\r\n // form fill\r\n cipher.favorite = false;\r\n cipher.name = this.getValueOrDefault(value.profilename, '--');\r\n cipher.type = CipherType.Card;\r\n\r\n if (!this.isNullOrWhitespace(value.title) || !this.isNullOrWhitespace(value.firstname) ||\r\n !this.isNullOrWhitespace(value.lastname) || !this.isNullOrWhitespace(value.address1) ||\r\n !this.isNullOrWhitespace(value.phone) || !this.isNullOrWhitespace(value.username) ||\r\n !this.isNullOrWhitespace(value.email)) {\r\n cipher.type = CipherType.Identity;\r\n }\r\n } else {\r\n // site or secure note\r\n cipher.favorite = !this.organization && this.getValueOrDefault(value.fav, '0') === '1';\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n cipher.type = value.url === 'http://sn' ? CipherType.SecureNote : CipherType.Login;\r\n }\r\n return cipher;\r\n }\r\n\r\n private parseCard(value: any): CardView {\r\n const card = new CardView();\r\n card.cardholderName = this.getValueOrDefault(value.ccname);\r\n card.number = this.getValueOrDefault(value.ccnum);\r\n card.code = this.getValueOrDefault(value.cccsc);\r\n card.brand = this.getCardBrand(value.ccnum);\r\n\r\n if (!this.isNullOrWhitespace(value.ccexp) && value.ccexp.indexOf('-') > -1) {\r\n const ccexpParts = (value.ccexp as string).split('-');\r\n if (ccexpParts.length > 1) {\r\n card.expYear = ccexpParts[0];\r\n card.expMonth = ccexpParts[1];\r\n if (card.expMonth.length === 2 && card.expMonth[0] === '0') {\r\n card.expMonth = card.expMonth[1];\r\n }\r\n }\r\n }\r\n\r\n return card;\r\n }\r\n\r\n private parseIdentity(value: any): IdentityView {\r\n const identity = new IdentityView();\r\n identity.title = this.getValueOrDefault(value.title);\r\n identity.firstName = this.getValueOrDefault(value.firstname);\r\n identity.middleName = this.getValueOrDefault(value.middlename);\r\n identity.lastName = this.getValueOrDefault(value.lastname);\r\n identity.username = this.getValueOrDefault(value.username);\r\n identity.company = this.getValueOrDefault(value.company);\r\n identity.ssn = this.getValueOrDefault(value.ssn);\r\n identity.address1 = this.getValueOrDefault(value.address1);\r\n identity.address2 = this.getValueOrDefault(value.address2);\r\n identity.address3 = this.getValueOrDefault(value.address3);\r\n identity.city = this.getValueOrDefault(value.city);\r\n identity.state = this.getValueOrDefault(value.state);\r\n identity.postalCode = this.getValueOrDefault(value.zip);\r\n identity.country = this.getValueOrDefault(value.country);\r\n identity.email = this.getValueOrDefault(value.email);\r\n identity.phone = this.getValueOrDefault(value.phone);\r\n\r\n if (!this.isNullOrWhitespace(identity.title)) {\r\n identity.title = identity.title.charAt(0).toUpperCase() + identity.title.slice(1);\r\n }\r\n\r\n return identity;\r\n }\r\n\r\n private parseSecureNote(value: any, cipher: CipherView) {\r\n const extraParts = this.splitNewLine(value.extra);\r\n let processedNote = false;\r\n\r\n if (extraParts.length) {\r\n const typeParts = extraParts[0].split(':');\r\n if (typeParts.length > 1 && typeParts[0] === 'NoteType' &&\r\n (typeParts[1] === 'Credit Card' || typeParts[1] === 'Address')) {\r\n if (typeParts[1] === 'Credit Card') {\r\n const mappedData = this.parseSecureNoteMapping(extraParts, {\r\n 'Number': 'number',\r\n 'Name on Card': 'cardholderName',\r\n 'Security Code': 'code',\r\n });\r\n cipher.type = CipherType.Card;\r\n cipher.card = mappedData[0];\r\n cipher.notes = mappedData[1];\r\n } else if (typeParts[1] === 'Address') {\r\n const mappedData = this.parseSecureNoteMapping(extraParts, {\r\n 'Title': 'title',\r\n 'First Name': 'firstName',\r\n 'Last Name': 'lastName',\r\n 'Middle Name': 'middleName',\r\n 'Company': 'company',\r\n 'Address 1': 'address1',\r\n 'Address 2': 'address2',\r\n 'Address 3': 'address3',\r\n 'City / Town': 'city',\r\n 'State': 'state',\r\n 'Zip / Postal Code': 'postalCode',\r\n 'Country': 'country',\r\n 'Email Address': 'email',\r\n 'Username': 'username',\r\n });\r\n cipher.type = CipherType.Identity;\r\n cipher.identity = mappedData[0];\r\n cipher.notes = mappedData[1];\r\n }\r\n processedNote = true;\r\n }\r\n }\r\n\r\n if (!processedNote) {\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n cipher.notes = this.getValueOrDefault(value.extra);\r\n }\r\n }\r\n\r\n private parseSecureNoteMapping(extraParts: string[], map: any): [T, string] {\r\n let notes: string = null;\r\n const dataObj: any = {};\r\n\r\n extraParts.forEach((extraPart) => {\r\n const fieldParts = extraPart.split(':');\r\n if (fieldParts.length < 1 || this.isNullOrWhitespace(fieldParts[0]) ||\r\n this.isNullOrWhitespace(fieldParts[1]) || fieldParts[0] === 'NoteType') {\r\n return;\r\n }\r\n\r\n if (fieldParts[0] === 'Notes') {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += ('\\n' + fieldParts[1]);\r\n } else {\r\n notes = fieldParts[1];\r\n }\r\n } else if (map.hasOwnProperty(fieldParts[0])) {\r\n dataObj[map[fieldParts[0]]] = fieldParts[1];\r\n } else {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += '\\n';\r\n } else {\r\n notes = '';\r\n }\r\n\r\n notes += (fieldParts[0] + ': ' + fieldParts[1]);\r\n }\r\n });\r\n\r\n return [dataObj as T, notes];\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class MeldiumCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.DisplayName, '--');\n cipher.notes = this.getValueOrDefault(value.Notes);\n cipher.login.username = this.getValueOrDefault(value.UserName);\n cipher.login.password = this.getValueOrDefault(value.Password);\n cipher.login.uris = this.makeUriArray(value.Url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nexport class MSecureCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.length < 3) {\n return;\n }\n\n const folderName = this.getValueOrDefault(value[0], 'Unassigned') !== 'Unassigned' ? value[0] : null;\n this.processFolder(result, folderName);\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[2], '--');\n\n if (value[1] === 'Web Logins') {\n cipher.login.uris = this.makeUriArray(value[4]);\n cipher.login.username = this.getValueOrDefault(value[5]);\n cipher.login.password = this.getValueOrDefault(value[6]);\n cipher.notes = !this.isNullOrWhitespace(value[3]) ? value[3].split('\\\\n').join('\\n') : null;\n } else if (value.length > 3) {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n for (let i = 3; i < value.length; i++) {\n if (!this.isNullOrWhitespace(value[i])) {\n cipher.notes += (value[i] + '\\n');\n }\n }\n }\n\n if (!this.isNullOrWhitespace(value[1]) && cipher.type !== CipherType.Login) {\n cipher.name = value[1] + ': ' + cipher.name;\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class OnePassword1PifImporter extends BaseImporter implements Importer {\r\n result = new ImportResult();\r\n\r\n parse(data: string): ImportResult {\r\n data.split(this.newLineRegex).forEach((line) => {\r\n if (this.isNullOrWhitespace(line) || line[0] !== '{') {\r\n return;\r\n }\r\n const item = JSON.parse(line);\r\n const cipher = this.initLoginCipher();\r\n\r\n if (this.isNullOrWhitespace(item.hmac)) {\r\n this.processStandardItem(item, cipher);\r\n } else {\r\n this.processWinOpVaultItem(item, cipher);\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n\r\n this.result.success = true;\r\n return this.result;\r\n }\r\n\r\n private processWinOpVaultItem(item: any, cipher: CipherView) {\r\n if (item.overview != null) {\r\n cipher.name = this.getValueOrDefault(item.overview.title);\r\n if (item.overview.URLs != null) {\r\n const urls: string[] = [];\r\n item.overview.URLs.forEach((url: any) => {\r\n if (!this.isNullOrWhitespace(url.u)) {\r\n urls.push(url.u);\r\n }\r\n });\r\n cipher.login.uris = this.makeUriArray(urls);\r\n }\r\n }\r\n\r\n if (item.details != null) {\r\n if (!this.isNullOrWhitespace(item.details.ccnum) || !this.isNullOrWhitespace(item.details.cvv)) {\r\n cipher.type = CipherType.Card;\r\n cipher.card = new CardView();\r\n }\r\n\r\n if (!this.isNullOrWhitespace(item.details.notesPlain)) {\r\n cipher.notes = item.details.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\r\n }\r\n if (item.details.fields != null) {\r\n this.parseFields(item.details.fields, cipher, 'designation', 'value', 'name');\r\n }\r\n if (item.details.sections != null) {\r\n item.details.sections.forEach((section: any) => {\r\n if (section.fields != null) {\r\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n private processStandardItem(item: any, cipher: CipherView) {\r\n cipher.favorite = item.openContents && item.openContents.faveIndex ? true : false;\r\n cipher.name = this.getValueOrDefault(item.title);\r\n\r\n if (item.typeName === 'securenotes.SecureNote') {\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n } else if (item.typeName === 'wallet.financial.CreditCard') {\r\n cipher.type = CipherType.Card;\r\n cipher.card = new CardView();\r\n } else {\r\n cipher.login.uris = this.makeUriArray(item.location);\r\n }\r\n\r\n if (item.secureContents != null) {\r\n if (!this.isNullOrWhitespace(item.secureContents.notesPlain)) {\r\n cipher.notes = item.secureContents.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\r\n }\r\n if (item.secureContents.fields != null) {\r\n this.parseFields(item.secureContents.fields, cipher, 'designation', 'value', 'name');\r\n }\r\n if (item.secureContents.sections != null) {\r\n item.secureContents.sections.forEach((section: any) => {\r\n if (section.fields != null) {\r\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n private parseFields(fields: any[], cipher: CipherView, designationKey: string, valueKey: string, nameKey: string) {\r\n fields.forEach((field: any) => {\r\n if (field[valueKey] == null || field[valueKey].toString().trim() === '') {\r\n return;\r\n }\r\n\r\n const fieldValue = field[valueKey].toString();\r\n const fieldDesignation = field[designationKey] != null ? field[designationKey].toString() : null;\r\n\r\n if (cipher.type === CipherType.Login) {\r\n if (this.isNullOrWhitespace(cipher.login.username) && fieldDesignation === 'username') {\r\n cipher.login.username = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.login.password) && fieldDesignation === 'password') {\r\n cipher.login.password = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.login.totp) && fieldDesignation != null &&\r\n fieldDesignation.startsWith('TOTP_')) {\r\n cipher.login.totp = fieldValue;\r\n return;\r\n }\r\n } else if (cipher.type === CipherType.Card) {\r\n if (this.isNullOrWhitespace(cipher.card.number) && fieldDesignation === 'ccnum') {\r\n cipher.card.number = fieldValue;\r\n cipher.card.brand = this.getCardBrand(fieldValue);\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.card.code) && fieldDesignation === 'cvv') {\r\n cipher.card.code = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.card.cardholderName) && fieldDesignation === 'cardholder') {\r\n cipher.card.cardholderName = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.card.expiration) && fieldDesignation === 'expiry' &&\r\n fieldValue.length === 6) {\r\n cipher.card.expMonth = (fieldValue as string).substr(4, 2);\r\n if (cipher.card.expMonth[0] === '0') {\r\n cipher.card.expMonth = cipher.card.expMonth.substr(1, 1);\r\n }\r\n cipher.card.expYear = (fieldValue as string).substr(0, 4);\r\n return;\r\n } else if (fieldDesignation === 'type') {\r\n // Skip since brand was determined from number above\r\n return;\r\n }\r\n }\r\n\r\n const fieldName = this.isNullOrWhitespace(field[nameKey]) ? 'no_name' : field[nameKey];\r\n this.processKvp(cipher, fieldName, fieldValue);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { CardView } from '../models/view';\r\n\r\nconst IgnoredProperties = ['ainfo', 'autosubmit', 'notesPlain', 'ps', 'scope', 'tags', 'title', 'uuid'];\r\n\r\nexport class OnePasswordWinCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.isNullOrWhitespace(value.title)) {\r\n return;\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(value.title, '--');\r\n cipher.notes = this.getValueOrDefault(value.notesPlain, '') + '\\n';\r\n\r\n if (!this.isNullOrWhitespace(value.number) && !this.isNullOrWhitespace(value['expiry date'])) {\r\n cipher.type = CipherType.Card;\r\n cipher.card = new CardView();\r\n }\r\n\r\n let altUsername: string = null;\r\n for (const property in value) {\r\n if (!value.hasOwnProperty(property) || this.isNullOrWhitespace(value[property])) {\r\n continue;\r\n }\r\n\r\n if (cipher.type === CipherType.Login) {\r\n if (this.isNullOrWhitespace(cipher.login.password) && property === 'password') {\r\n cipher.login.password = value[property];\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.login.username) && property === 'username') {\r\n cipher.login.username = value[property];\r\n continue;\r\n } else if ((cipher.login.uris == null || cipher.login.uri.length === 0) && property === 'urls') {\r\n const urls = value[property].split(this.newLineRegex);\r\n cipher.login.uris = this.makeUriArray(urls);\r\n continue;\r\n }\r\n } else if (cipher.type === CipherType.Card) {\r\n if (this.isNullOrWhitespace(cipher.card.number) && property === 'number') {\r\n cipher.card.number = value[property];\r\n cipher.card.brand = this.getCardBrand(value.number);\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.card.code) && property === 'verification number') {\r\n cipher.card.code = value[property];\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.card.cardholderName) && property === 'cardholder name') {\r\n cipher.card.cardholderName = value[property];\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.card.expiration) && property === 'expiry date' &&\r\n value[property].length === 6) {\r\n cipher.card.expMonth = (value[property] as string).substr(4, 2);\r\n if (cipher.card.expMonth[0] === '0') {\r\n cipher.card.expMonth = cipher.card.expMonth.substr(1, 1);\r\n }\r\n cipher.card.expYear = (value[property] as string).substr(0, 4);\r\n continue;\r\n } else if (property === 'type') {\r\n // Skip since brand was determined from number above\r\n continue;\r\n }\r\n }\r\n\r\n if (IgnoredProperties.indexOf(property) === -1 && !property.startsWith('section:')) {\r\n if (altUsername == null && property === 'email') {\r\n altUsername = value[property];\r\n }\r\n this.processKvp(cipher, property, value[property]);\r\n }\r\n }\r\n\r\n if (cipher.type === CipherType.Login && !this.isNullOrWhitespace(altUsername) &&\r\n this.isNullOrWhitespace(cipher.login.username) && altUsername.indexOf('://') === -1) {\r\n cipher.login.username = altUsername;\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","export { AttachmentView } from './attachmentView';\r\nexport { CardView } from './cardView';\r\nexport { CipherView } from './cipherView';\r\nexport { FieldView } from './fieldView';\r\nexport { IdentityView } from './identityView';\r\nexport { LoginUriView } from './loginUriView';\r\nexport { LoginView } from './loginView';\r\nexport { SecureNoteView } from './secureNoteView';\r\nexport { View } from './view';\r\n","export class View {\r\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CollectionView } from '../models/view/collectionView';\nimport { FolderView } from '../models/view/folderView';\n\nexport class PadlockCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n let headers: string[] = null;\n results.forEach((value) => {\n if (headers == null) {\n headers = value.map((v: string) => v);\n return;\n }\n\n if (value.length < 2 || value.length !== headers.length) {\n return;\n }\n\n if (!this.isNullOrWhitespace(value[1])) {\n if (this.organization) {\n const tags = (value[1] as string).split(',');\n tags.forEach((tag) => {\n tag = tag.trim();\n let addCollection = true;\n let collectionIndex = result.collections.length;\n\n for (let i = 0; i < result.collections.length; i++) {\n if (result.collections[i].name === tag) {\n addCollection = false;\n collectionIndex = i;\n break;\n }\n }\n\n if (addCollection) {\n const collection = new CollectionView();\n collection.name = tag;\n result.collections.push(collection);\n }\n\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\n });\n } else {\n const tags = (value[1] as string).split(',');\n const tag = tags.length > 0 ? tags[0].trim() : null;\n this.processFolder(result, tag);\n }\n }\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[0], '--');\n\n for (let i = 2; i < value.length; i++) {\n const header = headers[i].trim().toLowerCase();\n if (this.isNullOrWhitespace(value[i]) || this.isNullOrWhitespace(header)) {\n continue;\n }\n\n if (this.usernameFieldNames.indexOf(header) > -1) {\n cipher.login.username = value[i];\n } else if (this.passwordFieldNames.indexOf(header) > -1) {\n cipher.login.password = value[i];\n } else if (this.uriFieldNames.indexOf(header) > -1) {\n cipher.login.uris = this.makeUriArray(value[i]);\n } else {\n this.processKvp(cipher, headers[i], value[i]);\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PassKeepCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n this.processFolder(result, this.getValue('category', value));\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValue('description', value);\r\n cipher.name = this.getValueOrDefault(this.getValue('title', value), '--');\r\n cipher.login.username = this.getValue('username', value);\r\n cipher.login.password = this.getValue('password', value);\r\n cipher.login.uris = this.makeUriArray(this.getValue('site', value));\r\n this.processKvp(cipher, 'Password 2', this.getValue('password2', value));\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private getValue(key: string, value: any) {\r\n return this.getValueOrDefault(value[key], this.getValueOrDefault(value[(' ' + key)]));\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PassmanJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((credential: any) => {\r\n if (credential.tags != null && credential.tags.length > 0) {\r\n const folderName = credential.tags[0].text;\r\n this.processFolder(result, folderName);\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.name = credential.label;\r\n\r\n cipher.login.username = this.getValueOrDefault(credential.username);\r\n if (this.isNullOrWhitespace(cipher.login.username)) {\r\n cipher.login.username = this.getValueOrDefault(credential.email);\r\n } else if (!this.isNullOrWhitespace(credential.email)) {\r\n cipher.notes = ('Email: ' + credential.email + '\\n');\r\n }\r\n\r\n cipher.login.password = this.getValueOrDefault(credential.password);\r\n cipher.login.uris = this.makeUriArray(credential.url);\r\n cipher.notes += this.getValueOrDefault(credential.description, '');\r\n if (credential.otp != null) {\r\n cipher.login.totp = this.getValueOrDefault(credential.otp.secret);\r\n }\r\n\r\n if (credential.custom_fields != null) {\r\n credential.custom_fields.forEach((customField: any) => {\r\n switch (customField.field_type) {\r\n case 'text':\r\n case 'password':\r\n this.processKvp(cipher, customField.label, customField.value);\r\n break;\r\n }\r\n });\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CollectionView } from '../models/view/collectionView';\r\n\r\nexport class PasspackCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n const tagsJson = !this.isNullOrWhitespace(value.Tags) ? JSON.parse(value.Tags) : null;\r\n const tags: string[] = tagsJson != null && tagsJson.tags != null && tagsJson.tags.length > 0 ?\r\n tagsJson.tags.map((tagJson: string) => {\r\n try {\r\n const t = JSON.parse(tagJson);\r\n return this.getValueOrDefault(t.tag);\r\n } catch { }\r\n return null;\r\n }).filter((t: string) => !this.isNullOrWhitespace(t)) : null;\r\n\r\n if (this.organization && tags != null && tags.length > 0) {\r\n tags.forEach((tag) => {\r\n let addCollection = true;\r\n let collectionIndex = result.collections.length;\r\n\r\n for (let i = 0; i < result.collections.length; i++) {\r\n if (result.collections[i].name === tag) {\r\n addCollection = false;\r\n collectionIndex = i;\r\n break;\r\n }\r\n }\r\n\r\n if (addCollection) {\r\n const collection = new CollectionView();\r\n collection.name = tag;\r\n result.collections.push(collection);\r\n }\r\n\r\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\r\n });\r\n } else if (!this.organization && tags != null && tags.length > 0) {\r\n this.processFolder(result, tags[0]);\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value.Notes, '');\r\n cipher.notes += ('\\n\\n' + this.getValueOrDefault(value['Shared Notes'], '') + '\\n');\r\n cipher.name = this.getValueOrDefault(value['Entry Name'], '--');\r\n cipher.login.username = this.getValueOrDefault(value['User ID']);\r\n cipher.login.password = this.getValueOrDefault(value.Password);\r\n cipher.login.uris = this.makeUriArray(value.URL);\r\n\r\n if (value.__parsed_extra != null && value.__parsed_extra.length > 0) {\r\n value.__parsed_extra.forEach((extra: string) => {\r\n if (!this.isNullOrWhitespace(extra)) {\r\n cipher.notes += ('\\n' + extra);\r\n }\r\n });\r\n }\r\n\r\n const fieldsJson = !this.isNullOrWhitespace(value['Extra Fields']) ?\r\n JSON.parse(value['Extra Fields']) : null;\r\n const fields = fieldsJson != null && fieldsJson.extraFields != null &&\r\n fieldsJson.extraFields.length > 0 ? fieldsJson.extraFields.map((fieldJson: string) => {\r\n try {\r\n return JSON.parse(fieldJson);\r\n } catch { }\r\n return null;\r\n }) : null;\r\n if (fields != null) {\r\n fields.forEach((f: any) => {\r\n if (f != null) {\r\n this.processKvp(cipher, f.name, f.data);\r\n }\r\n });\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PasswordAgentCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 9) {\r\n return;\r\n }\r\n const folder = this.getValueOrDefault(value[8], '(None)');\r\n const folderName = folder !== '(None)' ? folder.split('\\\\').join('/') : null;\r\n this.processFolder(result, folderName);\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[3]);\r\n cipher.name = this.getValueOrDefault(value[0], '--');\r\n cipher.login.username = this.getValueOrDefault(value[1]);\r\n cipher.login.password = this.getValueOrDefault(value[2]);\r\n cipher.login.uris = this.makeUriArray(value[4]);\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nexport class PasswordBossJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value: any) => {\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n cipher.login.uris = this.makeUriArray(value.login_url);\r\n\r\n if (value.identifiers == null) {\r\n return;\r\n }\r\n\r\n if (!this.isNullOrWhitespace(value.identifiers.notes)) {\r\n cipher.notes = value.identifiers.notes.split('\\\\r\\\\n').join('\\n').split('\\\\n').join('\\n');\r\n }\r\n\r\n if (value.type === 'CreditCard') {\r\n cipher.card = new CardView();\r\n cipher.type = CipherType.Card;\r\n }\r\n\r\n for (const property in value.identifiers) {\r\n if (!value.identifiers.hasOwnProperty(property)) {\r\n continue;\r\n }\r\n const valObj = value.identifiers[property];\r\n const val = valObj != null ? valObj.toString() : null;\r\n if (this.isNullOrWhitespace(val) || property === 'notes' || property === 'ignoreItemInSecurityScore') {\r\n continue;\r\n }\r\n\r\n if (cipher.type === CipherType.Card) {\r\n if (property === 'cardNumber') {\r\n cipher.card.number = val;\r\n cipher.card.brand = this.getCardBrand(val);\r\n continue;\r\n } else if (property === 'nameOnCard') {\r\n cipher.card.cardholderName = val;\r\n continue;\r\n } else if (property === 'security_code') {\r\n cipher.card.code = val;\r\n continue;\r\n } else if (property === 'expires') {\r\n try {\r\n const expDate = new Date(val);\r\n cipher.card.expYear = expDate.getFullYear().toString();\r\n cipher.card.expMonth = (expDate.getMonth() + 1).toString();\r\n } catch { }\r\n continue;\r\n } else if (property === 'cardType') {\r\n continue;\r\n }\r\n } else {\r\n if (property === 'username') {\r\n cipher.login.username = val;\r\n continue;\r\n } else if (property === 'password') {\r\n cipher.login.password = val;\r\n continue;\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(property) > -1) {\r\n cipher.login.uris = this.makeUriArray(val);\r\n continue;\r\n }\r\n }\r\n\r\n this.processKvp(cipher, property, val);\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class PasswordDragonXmlImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const doc = this.parseXml(data);\n if (doc == null) {\n result.success = false;\n return result;\n }\n\n const records = doc.querySelectorAll('PasswordManager > record');\n Array.from(records).forEach((record) => {\n const category = this.querySelectorDirectChild(record, 'Category');\n const categoryText = category != null && !this.isNullOrWhitespace(category.textContent) &&\n category.textContent !== 'Unfiled' ? category.textContent : null;\n this.processFolder(result, categoryText);\n\n const accountName = this.querySelectorDirectChild(record, 'Account-Name');\n const userId = this.querySelectorDirectChild(record, 'User-Id');\n const password = this.querySelectorDirectChild(record, 'Password');\n const url = this.querySelectorDirectChild(record, 'URL');\n const notes = this.querySelectorDirectChild(record, 'Notes');\n const cipher = this.initLoginCipher();\n cipher.name = accountName != null ? this.getValueOrDefault(accountName.textContent, '--') : '--';\n cipher.notes = notes != null ? this.getValueOrDefault(notes.textContent) : '';\n cipher.login.username = userId != null ? this.getValueOrDefault(userId.textContent) : null;\n cipher.login.password = password != null ? this.getValueOrDefault(password.textContent) : null;\n cipher.login.uris = url != null ? this.makeUriArray(url.textContent) : null;\n\n const attributes: string[] = [];\n for (let i = 1; i <= 10; i++) {\n attributes.push('Attribute-' + i);\n }\n\n this.querySelectorAllDirectChild(record, attributes.join(',')).forEach((attr) => {\n if (this.isNullOrWhitespace(attr.textContent) || attr.textContent === 'null') {\n return;\n }\n this.processKvp(cipher, attr.tagName, attr.textContent);\n });\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PasswordSafeXmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const passwordSafe = doc.querySelector('passwordsafe');\r\n if (passwordSafe == null) {\r\n result.errorMessage = 'Missing `passwordsafe` node.';\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const notesDelimiter = passwordSafe.getAttribute('delimiter');\r\n const entries = doc.querySelectorAll('passwordsafe > entry');\r\n Array.from(entries).forEach((entry) => {\r\n const group = this.querySelectorDirectChild(entry, 'group');\r\n const groupText = group != null && !this.isNullOrWhitespace(group.textContent) ?\r\n group.textContent.split('.').join('/') : null;\r\n this.processFolder(result, groupText);\r\n\r\n const title = this.querySelectorDirectChild(entry, 'title');\r\n const username = this.querySelectorDirectChild(entry, 'username');\r\n const email = this.querySelectorDirectChild(entry, 'email');\r\n const password = this.querySelectorDirectChild(entry, 'password');\r\n const url = this.querySelectorDirectChild(entry, 'url');\r\n const notes = this.querySelectorDirectChild(entry, 'notes');\r\n const cipher = this.initLoginCipher();\r\n cipher.name = title != null ? this.getValueOrDefault(title.textContent, '--') : '--';\r\n cipher.notes = notes != null ?\r\n this.getValueOrDefault(notes.textContent, '').split(notesDelimiter).join('\\n') : null;\r\n cipher.login.username = username != null ? this.getValueOrDefault(username.textContent) : null;\r\n cipher.login.password = password != null ? this.getValueOrDefault(password.textContent) : null;\r\n cipher.login.uris = url != null ? this.makeUriArray(url.textContent) : null;\r\n\r\n if (this.isNullOrWhitespace(cipher.login.username) && email != null) {\r\n cipher.login.username = this.getValueOrDefault(email.textContent);\r\n } else if (email != null && !this.isNullOrWhitespace(email.textContent)) {\r\n cipher.notes = this.isNullOrWhitespace(cipher.notes) ? 'Email: ' + email.textContent\r\n : (cipher.notes + '\\n' + 'Email: ' + email.textContent);\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class RoboFormCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n let i = 1;\r\n results.forEach((value) => {\r\n const folder = !this.isNullOrWhitespace(value.Folder) && value.Folder.startsWith('/') ?\r\n value.Folder.replace('/', '') : value.Folder;\r\n const folderName = !this.isNullOrWhitespace(folder) ? folder : null;\r\n this.processFolder(result, folderName);\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value.Note);\r\n cipher.name = this.getValueOrDefault(value.Name, '--');\r\n cipher.login.username = this.getValueOrDefault(value.Login);\r\n cipher.login.password = this.getValueOrDefault(value.Pwd);\r\n cipher.login.uris = this.makeUriArray(value.Url);\r\n this.cleanupCipher(cipher);\r\n\r\n if (i === results.length && cipher.name === '--' && this.isNullOrWhitespace(cipher.login.password)) {\r\n return;\r\n }\r\n result.ciphers.push(cipher);\r\n i++;\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { FolderView } from '../models/view/folderView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nexport class SafeInCloudXmlImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const doc = this.parseXml(data);\n if (doc == null) {\n result.success = false;\n return result;\n }\n\n const db = doc.querySelector('database');\n if (db == null) {\n result.errorMessage = 'Missing `database` node.';\n result.success = false;\n return result;\n }\n\n const foldersMap = new Map();\n\n Array.from(doc.querySelectorAll('database > label')).forEach((labelEl) => {\n const name = labelEl.getAttribute('name');\n const id = labelEl.getAttribute('id');\n if (!this.isNullOrWhitespace(name) && !this.isNullOrWhitespace(id)) {\n foldersMap.set(id, result.folders.length);\n const folder = new FolderView();\n folder.name = name;\n result.folders.push(folder);\n }\n });\n\n Array.from(doc.querySelectorAll('database > card')).forEach((cardEl) => {\n if (cardEl.getAttribute('template') === 'true') {\n return;\n }\n\n const labelIdEl = this.querySelectorDirectChild(cardEl, 'label_id');\n if (labelIdEl != null) {\n const labelId = labelIdEl.textContent;\n if (!this.isNullOrWhitespace(labelId) && foldersMap.has(labelId)) {\n result.folderRelationships.push([result.ciphers.length, foldersMap.get(labelId)]);\n }\n }\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(cardEl.getAttribute('title'), '--');\n\n const cardType = cardEl.getAttribute('type');\n if (cardType === 'note') {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n } else {\n Array.from(this.querySelectorAllDirectChild(cardEl, 'field')).forEach((fieldEl) => {\n const text = fieldEl.textContent;\n if (this.isNullOrWhitespace(text)) {\n return;\n }\n const name = fieldEl.getAttribute('name');\n const fieldType = this.getValueOrDefault(fieldEl.getAttribute('type'), '').toLowerCase();\n if (fieldType === 'login') {\n cipher.login.username = text;\n } else if (fieldType === 'password') {\n cipher.login.password = text;\n } else if (fieldType === 'notes') {\n cipher.notes += (text + '\\n');\n } else if (fieldType === 'weblogin' || fieldType === 'website') {\n cipher.login.uris = this.makeUriArray(text);\n } else {\n this.processKvp(cipher, name, text);\n }\n });\n }\n\n Array.from(this.querySelectorAllDirectChild(cardEl, 'notes')).forEach((notesEl) => {\n cipher.notes += (notesEl.textContent + '\\n');\n });\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class SaferPassCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(this.nameFromUrl(value.url), '--');\n cipher.notes = this.getValueOrDefault(value.notes);\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\nimport { CipherView } from '../models/view/cipherView';\r\n\r\nexport class SplashIdCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 3) {\r\n return;\r\n }\r\n\r\n this.processFolder(result, this.getValueOrDefault(value[value.length - 1]));\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[value.length - 2], '');\r\n cipher.name = this.getValueOrDefault(value[1], '--');\r\n\r\n if (value[0] === 'Web Logins' || value[0] === 'Servers' || value[0] === 'Email Accounts') {\r\n cipher.login.username = this.getValueOrDefault(value[2]);\r\n cipher.login.password = this.getValueOrDefault(value[3]);\r\n cipher.login.uris = this.makeUriArray(value[4]);\r\n this.parseFieldsToNotes(cipher, 5, value);\r\n } else {\r\n this.parseFieldsToNotes(cipher, 2, value);\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private parseFieldsToNotes(cipher: CipherView, startIndex: number, value: any) {\r\n // last 3 rows do not get parsed\r\n for (let i = startIndex; i < value.length - 3; i++) {\r\n if (this.isNullOrWhitespace(value[i])) {\r\n continue;\r\n }\r\n cipher.notes += (value[i] + '\\n');\r\n }\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class StickyPasswordXmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const loginNodes = doc.querySelectorAll('root > Database > Logins > Login');\r\n Array.from(loginNodes).forEach((loginNode) => {\r\n const accountId = loginNode.getAttribute('ID');\r\n if (this.isNullOrWhitespace(accountId)) {\r\n return;\r\n }\r\n\r\n const usernameText = loginNode.getAttribute('Name');\r\n const passwordText = loginNode.getAttribute('Password');\r\n let titleText: string = null;\r\n let linkText: string = null;\r\n let notesText: string = null;\r\n let groupId: string = null;\r\n let groupText: string = null;\r\n\r\n const accountLogin = doc.querySelector('root > Database > Accounts > Account > ' +\r\n 'LoginLinks > Login[SourceLoginID=\"' + accountId + '\"]');\r\n if (accountLogin != null) {\r\n const account = accountLogin.parentElement.parentElement;\r\n if (account != null) {\r\n titleText = account.getAttribute('Name');\r\n linkText = account.getAttribute('Link');\r\n groupId = account.getAttribute('ParentID');\r\n notesText = account.getAttribute('Comments');\r\n if (!this.isNullOrWhitespace(notesText)) {\r\n notesText = notesText.split('/n').join('\\n');\r\n }\r\n }\r\n }\r\n\r\n if (!this.isNullOrWhitespace(groupId)) {\r\n groupText = this.buildGroupText(doc, groupId, '');\r\n this.processFolder(result, groupText);\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(titleText, '--');\r\n cipher.notes = this.getValueOrDefault(notesText);\r\n cipher.login.username = this.getValueOrDefault(usernameText);\r\n cipher.login.password = this.getValueOrDefault(passwordText);\r\n cipher.login.uris = this.makeUriArray(linkText);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n buildGroupText(doc: Document, groupId: string, groupText: string): string {\r\n const group = doc.querySelector('root > Database > Groups > Group[ID=\"' + groupId + '\"]');\r\n if (group == null) {\r\n return groupText;\r\n }\r\n if (!this.isNullOrWhitespace(groupText)) {\r\n groupText = '/' + groupText;\r\n }\r\n groupText = group.getAttribute('Name') + groupText;\r\n return this.buildGroupText(doc, group.getAttribute('ParentID'), groupText);\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nconst PropertiesToIgnore = ['kind', 'autologin', 'favorite', 'hexcolor', 'protectedwithpassword', 'subdomainonly',\n 'type', 'tk_export_version', 'note', 'title', 'document_content',\n];\n\nexport class TrueKeyCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.favorite = this.getValueOrDefault(value.favorite, '').toLowerCase() === 'true';\n cipher.name = this.getValueOrDefault(value.name, '--');\n cipher.notes = this.getValueOrDefault(value.memo, '');\n cipher.login.username = this.getValueOrDefault(value.login);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n\n if (value.kind !== 'login') {\n cipher.name = this.getValueOrDefault(value.title, '--');\n cipher.notes = this.getValueOrDefault(value.note, '');\n }\n\n if (value.kind === 'cc') {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n cipher.card.cardholderName = this.getValueOrDefault(value.cardholder);\n cipher.card.number = this.getValueOrDefault(value.number);\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n if (!this.isNullOrWhitespace(value.expiryDate)) {\n try {\n const expDate = new Date(value.expiryDate);\n cipher.card.expYear = expDate.getFullYear().toString();\n cipher.card.expMonth = (expDate.getMonth() + 1).toString();\n } catch { }\n }\n } else if (value.kind !== 'login') {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n if (!this.isNullOrWhitespace(cipher.notes)) {\n cipher.notes = this.getValueOrDefault(value.document_content, '');\n }\n for (const property in value) {\n if (value.hasOwnProperty(property) && PropertiesToIgnore.indexOf(property.toLowerCase()) < 0 &&\n !this.isNullOrWhitespace(value[property])) {\n this.processKvp(cipher, property, value[property]);\n }\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class UpmCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.length !== 5) {\n return;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[0], '--');\n cipher.notes = this.getValueOrDefault(value[4]);\n cipher.login.username = this.getValueOrDefault(value[1]);\n cipher.login.password = this.getValueOrDefault(value[2]);\n cipher.login.uris = this.makeUriArray(value[3]);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\nimport { CipherView } from '../models/view';\r\n\r\nexport class ZohoVaultCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.isNullOrWhitespace(value['Secret Name'])) {\r\n return;\r\n }\r\n this.processFolder(result, this.getValueOrDefault(value.ChamberName));\r\n const cipher = this.initLoginCipher();\r\n cipher.favorite = this.getValueOrDefault(value.Favorite, '0') === '1';\r\n cipher.notes = this.getValueOrDefault(value.Notes);\r\n cipher.name = this.getValueOrDefault(value['Secret Name'], '--');\r\n cipher.login.uris = this.makeUriArray(value['Secret URL']);\r\n this.parseData(cipher, value.SecretData);\r\n this.parseData(cipher, value.CustomData);\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private parseData(cipher: CipherView, data: string) {\r\n if (this.isNullOrWhitespace(data)) {\r\n return;\r\n }\r\n const dataLines = this.splitNewLine(data);\r\n dataLines.forEach((line) => {\r\n const delimPosition = line.indexOf(':');\r\n if (delimPosition < 0) {\r\n return;\r\n }\r\n const field = line.substring(0, delimPosition);\r\n const value = line.length > delimPosition ? line.substring(delimPosition + 1) : null;\r\n if (this.isNullOrWhitespace(field) || this.isNullOrWhitespace(value) || field === 'SecretType') {\r\n return;\r\n }\r\n const fieldLower = field.toLowerCase();\r\n if (cipher.login.username == null && this.usernameFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.username = value;\r\n } else if (cipher.login.password == null && this.passwordFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.password = value;\r\n } else {\r\n this.processKvp(cipher, field, value);\r\n }\r\n });\r\n }\r\n}\r\n","import * as signalR from '@aspnet/signalr';\r\nimport * as signalRMsgPack from '@aspnet/signalr-protocol-msgpack';\r\n\r\nimport { NotificationType } from '../enums/notificationType';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { AppIdService } from '../abstractions/appId.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { EnvironmentService } from '../abstractions/environment.service';\r\nimport { NotificationsService as NotificationsServiceAbstraction } from '../abstractions/notifications.service';\r\nimport { SyncService } from '../abstractions/sync.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport {\r\n NotificationResponse,\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\n\r\nexport class NotificationsService implements NotificationsServiceAbstraction {\r\n private signalrConnection: signalR.HubConnection;\r\n private url: string;\r\n private connected = false;\r\n private inited = false;\r\n private inactive = false;\r\n private reconnectTimer: any = null;\r\n\r\n constructor(private userService: UserService, private syncService: SyncService,\r\n private appIdService: AppIdService, private apiService: ApiService,\r\n private cryptoService: CryptoService, private logoutCallback: () => Promise) { }\r\n\r\n async init(environmentService: EnvironmentService): Promise {\r\n this.inited = false;\r\n this.url = 'https://notifications.bitwarden.com';\r\n if (environmentService.notificationsUrl != null) {\r\n this.url = environmentService.notificationsUrl;\r\n } else if (environmentService.baseUrl != null) {\r\n this.url = environmentService.baseUrl + '/notifications';\r\n }\r\n\r\n // Set notifications server URL to `https://-` to effectively disable communication\r\n // with the notifications server from the client app\r\n if (this.url === 'https://-') {\r\n return;\r\n }\r\n\r\n if (this.signalrConnection != null) {\r\n this.signalrConnection.off('ReceiveMessage');\r\n await this.signalrConnection.stop();\r\n this.connected = false;\r\n this.signalrConnection = null;\r\n }\r\n\r\n this.signalrConnection = new signalR.HubConnectionBuilder()\r\n .withUrl(this.url + '/hub', {\r\n accessTokenFactory: () => this.apiService.getActiveBearerToken(),\r\n })\r\n .withHubProtocol(new signalRMsgPack.MessagePackHubProtocol())\r\n // .configureLogging(signalR.LogLevel.Trace)\r\n .build();\r\n\r\n this.signalrConnection.on('ReceiveMessage',\r\n (data: any) => this.processNotification(new NotificationResponse(data)));\r\n this.signalrConnection.onclose(() => {\r\n this.connected = false;\r\n this.reconnect(true);\r\n });\r\n this.inited = true;\r\n if (await this.isAuthedAndUnlocked()) {\r\n await this.reconnect(false);\r\n }\r\n }\r\n\r\n async updateConnection(sync = false): Promise {\r\n if (!this.inited) {\r\n return;\r\n }\r\n try {\r\n if (await this.isAuthedAndUnlocked()) {\r\n await this.reconnect(sync);\r\n } else {\r\n await this.signalrConnection.stop();\r\n }\r\n } catch (e) {\r\n // tslint:disable-next-line\r\n console.error(e.toString());\r\n }\r\n }\r\n\r\n async reconnectFromActivity(): Promise {\r\n this.inactive = false;\r\n if (this.inited && !this.connected) {\r\n await this.reconnect(true);\r\n }\r\n }\r\n\r\n async disconnectFromInactivity(): Promise {\r\n this.inactive = true;\r\n if (this.inited && this.connected) {\r\n await this.signalrConnection.stop();\r\n }\r\n }\r\n\r\n private async processNotification(notification: NotificationResponse) {\r\n const appId = await this.appIdService.getAppId();\r\n if (notification == null || notification.contextId === appId) {\r\n return;\r\n }\r\n\r\n const isAuthenticated = await this.userService.isAuthenticated();\r\n const payloadUserId = notification.payload.userId || notification.payload.UserId;\r\n const myUserId = await this.userService.getUserId();\r\n if (isAuthenticated && payloadUserId != null && payloadUserId !== myUserId) {\r\n return;\r\n }\r\n\r\n switch (notification.type) {\r\n case NotificationType.SyncCipherCreate:\r\n case NotificationType.SyncCipherUpdate:\r\n await this.syncService.syncUpsertCipher(notification.payload as SyncCipherNotification,\r\n notification.type === NotificationType.SyncCipherUpdate);\r\n break;\r\n case NotificationType.SyncCipherDelete:\r\n case NotificationType.SyncLoginDelete:\r\n await this.syncService.syncDeleteCipher(notification.payload as SyncCipherNotification);\r\n break;\r\n case NotificationType.SyncFolderCreate:\r\n case NotificationType.SyncFolderUpdate:\r\n await this.syncService.syncUpsertFolder(notification.payload as SyncFolderNotification,\r\n notification.type === NotificationType.SyncFolderUpdate);\r\n break;\r\n case NotificationType.SyncFolderDelete:\r\n await this.syncService.syncDeleteFolder(notification.payload as SyncFolderNotification);\r\n break;\r\n case NotificationType.SyncVault:\r\n case NotificationType.SyncCiphers:\r\n case NotificationType.SyncSettings:\r\n if (isAuthenticated) {\r\n await this.syncService.fullSync(false);\r\n }\r\n break;\r\n case NotificationType.SyncOrgKeys:\r\n if (isAuthenticated) {\r\n await this.apiService.refreshIdentityToken();\r\n await this.syncService.fullSync(true);\r\n // Stop so a reconnect can be made\r\n await this.signalrConnection.stop();\r\n }\r\n break;\r\n case NotificationType.LogOut:\r\n if (isAuthenticated) {\r\n this.logoutCallback();\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n private async reconnect(sync: boolean) {\r\n if (this.reconnectTimer != null) {\r\n clearTimeout(this.reconnectTimer);\r\n this.reconnectTimer = null;\r\n }\r\n if (this.connected || !this.inited || this.inactive) {\r\n return;\r\n }\r\n const authedAndUnlocked = await this.isAuthedAndUnlocked();\r\n if (!authedAndUnlocked) {\r\n return;\r\n }\r\n\r\n try {\r\n await this.signalrConnection.start();\r\n this.connected = true;\r\n if (sync) {\r\n await this.syncService.fullSync(false);\r\n }\r\n } catch { }\r\n\r\n if (!this.connected) {\r\n this.reconnectTimer = setTimeout(() => this.reconnect(sync), this.random(120000, 300000));\r\n }\r\n }\r\n\r\n private async isAuthedAndUnlocked() {\r\n if (await this.userService.isAuthenticated()) {\r\n return this.cryptoService.hasKey();\r\n }\r\n return false;\r\n }\r\n\r\n private random(min: number, max: number) {\r\n min = Math.ceil(min);\r\n max = Math.floor(max);\r\n return Math.floor(Math.random() * (max - min + 1)) + min;\r\n }\r\n}\r\n","import { NotificationType } from '../../enums/notificationType';\n\nexport class NotificationResponse {\n contextId: string;\n type: NotificationType;\n payload: any;\n\n constructor(response: any) {\n this.contextId = response.contextId || response.ContextId;\n this.type = response.type != null ? response.type : response.Type;\n\n const payload = response.payload || response.Payload;\n switch (this.type) {\n case NotificationType.SyncCipherCreate:\n case NotificationType.SyncCipherDelete:\n case NotificationType.SyncCipherUpdate:\n case NotificationType.SyncLoginDelete:\n this.payload = new SyncCipherNotification(payload);\n break;\n case NotificationType.SyncFolderCreate:\n case NotificationType.SyncFolderDelete:\n case NotificationType.SyncFolderUpdate:\n this.payload = new SyncFolderNotification(payload);\n break;\n case NotificationType.SyncVault:\n case NotificationType.SyncCiphers:\n case NotificationType.SyncOrgKeys:\n case NotificationType.SyncSettings:\n case NotificationType.LogOut:\n this.payload = new UserNotification(payload);\n break;\n default:\n break;\n }\n }\n}\n\nexport class SyncCipherNotification {\n id: string;\n userId: string;\n organizationId: string;\n collectionIds: string[];\n revisionDate: Date;\n\n constructor(response: any) {\n this.id = response.id || response.Id;\n this.userId = response.userId || response.UserId;\n this.organizationId = response.organizationId || response.OrganizationId;\n this.collectionIds = response.collectionIds || response.CollectionIds;\n this.revisionDate = new Date(response.revisionDate || response.RevisionDate);\n }\n}\n\nexport class SyncFolderNotification {\n id: string;\n userId: string;\n revisionDate: Date;\n\n constructor(response: any) {\n this.id = response.id || response.Id;\n this.userId = response.userId || response.UserId;\n this.revisionDate = new Date(response.revisionDate || response.RevisionDate);\n }\n}\n\nexport class UserNotification {\n userId: string;\n date: Date;\n\n constructor(response: any) {\n this.userId = response.userId || response.UserId;\n this.date = new Date(response.date || response.Date);\n }\n}\n","import * as lunr from 'lunr';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\n\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { SearchService as SearchServiceAbstraction } from '../abstractions/search.service';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { DeviceType } from '../enums/deviceType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { UriMatchType } from '../enums/uriMatchType';\r\n\r\nexport class SearchService implements SearchServiceAbstraction {\r\n private indexing = false;\r\n private index: lunr.Index = null;\r\n private onlySearchName = false;\r\n\r\n constructor(private cipherService: CipherService, platformUtilsService: PlatformUtilsService) {\r\n this.onlySearchName = platformUtilsService == null ||\r\n platformUtilsService.getDevice() === DeviceType.EdgeExtension;\r\n }\r\n\r\n clearIndex(): void {\r\n this.index = null;\r\n }\r\n\r\n isSearchable(query: string): boolean {\r\n const notSearchable = query == null || (this.index == null && query.length < 2) ||\r\n (this.index != null && query.length < 2 && query.indexOf('>') !== 0);\r\n return !notSearchable;\r\n }\r\n\r\n async indexCiphers(): Promise {\r\n if (this.indexing) {\r\n return;\r\n }\r\n // tslint:disable-next-line\r\n console.time('search indexing');\r\n this.indexing = true;\r\n this.index = null;\r\n const builder = new lunr.Builder();\r\n builder.ref('id');\r\n (builder as any).field('shortid', { boost: 100, extractor: (c: CipherView) => c.id.substr(0, 8) });\r\n (builder as any).field('name', { boost: 10 });\r\n (builder as any).field('subtitle', {\r\n boost: 5,\r\n extractor: (c: CipherView) => {\r\n if (c.subTitle != null && c.type === CipherType.Card) {\r\n return c.subTitle.replace(/\\*/g, '');\r\n }\r\n return c.subTitle;\r\n },\r\n });\r\n builder.field('notes');\r\n (builder as any).field('login.username', {\r\n extractor: (c: CipherView) => c.login != null ? c.login.username : null,\r\n });\r\n (builder as any).field('login.uris', { boost: 2, extractor: (c: CipherView) => this.uriExtractor(c) });\r\n (builder as any).field('fields', { extractor: (c: CipherView) => this.fieldExtractor(c, false) });\r\n (builder as any).field('fields_joined', { extractor: (c: CipherView) => this.fieldExtractor(c, true) });\r\n (builder as any).field('attachments', { extractor: (c: CipherView) => this.attachmentExtractor(c, false) });\r\n (builder as any).field('attachments_joined',\r\n { extractor: (c: CipherView) => this.attachmentExtractor(c, true) });\r\n (builder as any).field('organizationid', { extractor: (c: CipherView) => c.organizationId });\r\n const ciphers = await this.cipherService.getAllDecrypted();\r\n ciphers.forEach((c) => builder.add(c));\r\n this.index = builder.build();\r\n this.indexing = false;\r\n // tslint:disable-next-line\r\n console.timeEnd('search indexing');\r\n }\r\n\r\n async searchCiphers(query: string, filter: (cipher: CipherView) => boolean = null, ciphers: CipherView[] = null):\r\n Promise {\r\n const results: CipherView[] = [];\r\n if (query != null) {\r\n query = query.trim().toLowerCase();\r\n }\r\n if (query === '') {\r\n query = null;\r\n }\r\n\r\n if (ciphers == null) {\r\n ciphers = await this.cipherService.getAllDecrypted();\r\n }\r\n if (filter != null) {\r\n ciphers = ciphers.filter(filter);\r\n }\r\n\r\n if (!this.isSearchable(query)) {\r\n return ciphers;\r\n }\r\n\r\n const index = this.getIndexForSearch();\r\n if (index == null) {\r\n // Fall back to basic search if index is not available\r\n return this.searchCiphersBasic(ciphers, query);\r\n }\r\n\r\n const ciphersMap = new Map();\r\n ciphers.forEach((c) => ciphersMap.set(c.id, c));\r\n\r\n let searchResults: lunr.Index.Result[] = null;\r\n const isQueryString = query != null && query.length > 1 && query.indexOf('>') === 0;\r\n if (isQueryString) {\r\n try {\r\n searchResults = index.search(query.substr(1).trim());\r\n } catch { }\r\n } else {\r\n // tslint:disable-next-line\r\n const soWild = lunr.Query.wildcard.LEADING | lunr.Query.wildcard.TRAILING;\r\n searchResults = index.query((q) => {\r\n q.term(query, { fields: ['name'], wildcard: soWild });\r\n q.term(query, { fields: ['subtitle'], wildcard: soWild });\r\n q.term(query, { fields: ['login.uris'], wildcard: soWild });\r\n lunr.tokenizer(query).forEach((token) => {\r\n q.term(token.toString(), {});\r\n });\r\n });\r\n }\r\n\r\n if (searchResults != null) {\r\n searchResults.forEach((r) => {\r\n if (ciphersMap.has(r.ref)) {\r\n results.push(ciphersMap.get(r.ref));\r\n }\r\n });\r\n }\r\n return results;\r\n }\r\n\r\n searchCiphersBasic(ciphers: CipherView[], query: string) {\r\n query = query.trim().toLowerCase();\r\n return ciphers.filter((c) => {\r\n if (c.name != null && c.name.toLowerCase().indexOf(query) > -1) {\r\n return true;\r\n }\r\n if (this.onlySearchName) {\r\n return false;\r\n }\r\n if (query.length >= 8 && c.id.startsWith(query)) {\r\n return true;\r\n }\r\n if (c.subTitle != null && c.subTitle.toLowerCase().indexOf(query) > -1) {\r\n return true;\r\n }\r\n if (c.login && c.login.uri != null && c.login.uri.toLowerCase().indexOf(query) > -1) {\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n\r\n getIndexForSearch(): lunr.Index {\r\n return this.index;\r\n }\r\n\r\n private fieldExtractor(c: CipherView, joined: boolean) {\r\n if (!c.hasFields) {\r\n return null;\r\n }\r\n let fields: string[] = [];\r\n c.fields.forEach((f) => {\r\n if (f.name != null) {\r\n fields.push(f.name);\r\n }\r\n if (f.type === FieldType.Text && f.value != null) {\r\n fields.push(f.value);\r\n }\r\n });\r\n fields = fields.filter((f) => f.trim() !== '');\r\n if (fields.length === 0) {\r\n return null;\r\n }\r\n return joined ? fields.join(' ') : fields;\r\n }\r\n\r\n private attachmentExtractor(c: CipherView, joined: boolean) {\r\n if (!c.hasAttachments) {\r\n return null;\r\n }\r\n let attachments: string[] = [];\r\n c.attachments.forEach((a) => {\r\n if (a != null && a.fileName != null) {\r\n if (joined && a.fileName.indexOf('.') > -1) {\r\n attachments.push(a.fileName.substr(0, a.fileName.lastIndexOf('.')));\r\n } else {\r\n attachments.push(a.fileName);\r\n }\r\n }\r\n });\r\n attachments = attachments.filter((f) => f.trim() !== '');\r\n if (attachments.length === 0) {\r\n return null;\r\n }\r\n return joined ? attachments.join(' ') : attachments;\r\n }\r\n\r\n private uriExtractor(c: CipherView) {\r\n if (c.login == null || !c.login.hasUris) {\r\n return null;\r\n }\r\n const uris: string[] = [];\r\n c.login.uris.forEach((u) => {\r\n if (u.uri == null || u.uri === '') {\r\n return;\r\n }\r\n if (u.hostname != null) {\r\n uris.push(u.hostname);\r\n return;\r\n }\r\n let uri = u.uri;\r\n if (u.match !== UriMatchType.RegularExpression) {\r\n const protocolIndex = uri.indexOf('://');\r\n if (protocolIndex > -1) {\r\n uri = uri.substr(protocolIndex + 3);\r\n }\r\n const queryIndex = uri.search(/\\?|&|#/);\r\n if (queryIndex > -1) {\r\n uri = uri.substring(0, queryIndex);\r\n }\r\n }\r\n uris.push(uri);\r\n });\r\n return uris.length > 0 ? uris : null;\r\n }\r\n}\r\n","import * as forge from 'node-forge';\r\n\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { DecryptParameters } from '../models/domain/decryptParameters';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nexport class WebCryptoFunctionService implements CryptoFunctionService {\r\n private crypto: Crypto;\r\n private subtle: SubtleCrypto;\r\n private isEdge: boolean;\r\n private isIE: boolean;\r\n private isOldSafari: boolean;\r\n\r\n constructor(private win: Window, private platformUtilsService: PlatformUtilsService) {\r\n this.crypto = typeof win.crypto !== 'undefined' ? win.crypto : null;\r\n this.subtle = (!!this.crypto && typeof win.crypto.subtle !== 'undefined') ? win.crypto.subtle : null;\r\n this.isEdge = platformUtilsService.isEdge();\r\n this.isIE = platformUtilsService.isIE();\r\n const ua = win.navigator.userAgent;\r\n this.isOldSafari = platformUtilsService.isSafari() &&\r\n (ua.indexOf(' Version/10.') > -1 || ua.indexOf(' Version/9.') > -1);\r\n }\r\n\r\n async pbkdf2(password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\r\n iterations: number): Promise {\r\n if (this.isEdge || this.isIE || this.isOldSafari) {\r\n const forgeLen = algorithm === 'sha256' ? 32 : 64;\r\n const passwordBytes = this.toByteString(password);\r\n const saltBytes = this.toByteString(salt);\r\n const derivedKeyBytes = (forge as any).pbkdf2(passwordBytes, saltBytes, iterations, forgeLen, algorithm);\r\n return Utils.fromByteStringToArray(derivedKeyBytes).buffer;\r\n }\r\n\r\n const wcLen = algorithm === 'sha256' ? 256 : 512;\r\n const passwordBuf = this.toBuf(password);\r\n const saltBuf = this.toBuf(salt);\r\n\r\n const pbkdf2Params: Pbkdf2Params = {\r\n name: 'PBKDF2',\r\n salt: saltBuf,\r\n iterations: iterations,\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', passwordBuf, { name: 'PBKDF2' } as any,\r\n false, ['deriveBits']);\r\n return await this.subtle.deriveBits(pbkdf2Params, impKey, wcLen);\r\n }\r\n\r\n async hash(value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): Promise {\r\n if (((this.isEdge || this.isIE) && algorithm === 'sha1') || algorithm === 'md5') {\r\n const md = algorithm === 'md5' ? forge.md.md5.create() : forge.md.sha1.create();\r\n const valueBytes = this.toByteString(value);\r\n md.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(md.digest().data).buffer;\r\n }\r\n\r\n const valueBuf = this.toBuf(value);\r\n return await this.subtle.digest({ name: this.toWebCryptoAlgorithm(algorithm) }, valueBuf);\r\n }\r\n\r\n async hmac(value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n if (this.isIE && algorithm === 'sha512') {\r\n const hmac = (forge as any).hmac.create();\r\n const keyBytes = this.toByteString(key);\r\n const valueBytes = this.toByteString(value);\r\n hmac.start(algorithm, keyBytes);\r\n hmac.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(hmac.digest().data).buffer;\r\n }\r\n\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', key, signingAlgorithm, false, ['sign']);\r\n return await this.subtle.sign(signingAlgorithm, impKey, value);\r\n }\r\n\r\n // Safely compare two values in a way that protects against timing attacks (Double HMAC Verification).\r\n // ref: https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2011/february/double-hmac-verification/\r\n // ref: https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-string-comparison-with-double-hmac-strategy\r\n async compare(a: ArrayBuffer, b: ArrayBuffer): Promise {\r\n const macKey = await this.randomBytes(32);\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: 'SHA-256' },\r\n };\r\n const impKey = await this.subtle.importKey('raw', macKey, signingAlgorithm, false, ['sign']);\r\n const mac1 = await this.subtle.sign(signingAlgorithm, impKey, a);\r\n const mac2 = await this.subtle.sign(signingAlgorithm, impKey, b);\r\n\r\n if (mac1.byteLength !== mac2.byteLength) {\r\n return false;\r\n }\r\n\r\n const arr1 = new Uint8Array(mac1);\r\n const arr2 = new Uint8Array(mac2);\r\n for (let i = 0; i < arr2.length; i++) {\r\n if (arr1[i] !== arr2[i]) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n hmacFast(value: string, key: string, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start(algorithm, key);\r\n hmac.update(value);\r\n const bytes = hmac.digest().getBytes();\r\n return Promise.resolve(bytes);\r\n }\r\n\r\n async compareFast(a: string, b: string): Promise {\r\n const rand = await this.randomBytes(32);\r\n const bytes = new Uint32Array(rand);\r\n const buffer = forge.util.createBuffer();\r\n for (let i = 0; i < bytes.length; i++) {\r\n buffer.putInt32(bytes[i]);\r\n }\r\n const macKey = buffer.getBytes();\r\n\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start('sha256', macKey);\r\n hmac.update(a);\r\n const mac1 = hmac.digest().getBytes();\r\n\r\n hmac.start(null, null);\r\n hmac.update(b);\r\n const mac2 = hmac.digest().getBytes();\r\n\r\n const equals = mac1 === mac2;\r\n return equals;\r\n }\r\n\r\n async aesEncrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['encrypt']);\r\n return await this.subtle.encrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n aesDecryptFastParameters(data: string, iv: string, mac: string, key: SymmetricCryptoKey):\r\n DecryptParameters {\r\n const p = new DecryptParameters();\r\n if (key.meta != null) {\r\n p.encKey = key.meta.encKeyByteString;\r\n p.macKey = key.meta.macKeyByteString;\r\n }\r\n\r\n if (p.encKey == null) {\r\n p.encKey = forge.util.decode64(key.encKeyB64);\r\n }\r\n p.data = forge.util.decode64(data);\r\n p.iv = forge.util.decode64(iv);\r\n p.macData = p.iv + p.data;\r\n if (p.macKey == null && key.macKeyB64 != null) {\r\n p.macKey = forge.util.decode64(key.macKeyB64);\r\n }\r\n if (mac != null) {\r\n p.mac = forge.util.decode64(mac);\r\n }\r\n\r\n // cache byte string keys for later\r\n if (key.meta == null) {\r\n key.meta = {};\r\n }\r\n if (key.meta.encKeyByteString == null) {\r\n key.meta.encKeyByteString = p.encKey;\r\n }\r\n if (p.macKey != null && key.meta.macKeyByteString == null) {\r\n key.meta.macKeyByteString = p.macKey;\r\n }\r\n\r\n return p;\r\n }\r\n\r\n aesDecryptFast(parameters: DecryptParameters): Promise {\r\n const dataBuffer = (forge as any).util.createBuffer(parameters.data);\r\n const decipher = (forge as any).cipher.createDecipher('AES-CBC', parameters.encKey);\r\n decipher.start({ iv: parameters.iv });\r\n decipher.update(dataBuffer);\r\n decipher.finish();\r\n const val = decipher.output.toString('utf8');\r\n return Promise.resolve(val);\r\n }\r\n\r\n async aesDecrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['decrypt']);\r\n return await this.subtle.decrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('spki', publicKey, rsaParams, false, ['encrypt']);\r\n return await this.subtle.encrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaDecrypt(data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, false, ['decrypt']);\r\n return await this.subtle.decrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaExtractPublicKey(privateKey: ArrayBuffer): Promise {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const impPrivateKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, true, ['decrypt']);\r\n const jwkPrivateKey = await this.subtle.exportKey('jwk', impPrivateKey);\r\n const jwkPublicKeyParams = {\r\n kty: 'RSA',\r\n e: jwkPrivateKey.e,\r\n n: jwkPrivateKey.n,\r\n alg: 'RSA-OAEP',\r\n ext: true,\r\n };\r\n const impPublicKey = await this.subtle.importKey('jwk', jwkPublicKeyParams, rsaParams, true, ['encrypt']);\r\n return await this.subtle.exportKey('spki', impPublicKey);\r\n }\r\n\r\n async rsaGenerateKeyPair(length: 1024 | 2048 | 4096): Promise<[ArrayBuffer, ArrayBuffer]> {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n modulusLength: length,\r\n publicExponent: new Uint8Array([0x01, 0x00, 0x01]), // 65537\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const keyPair = await this.subtle.generateKey(rsaParams, true, ['encrypt', 'decrypt']);\r\n const publicKey = await this.subtle.exportKey('spki', keyPair.publicKey);\r\n const privateKey = await this.subtle.exportKey('pkcs8', keyPair.privateKey);\r\n return [publicKey, privateKey];\r\n }\r\n\r\n randomBytes(length: number): Promise {\r\n const arr = new Uint8Array(length);\r\n this.crypto.getRandomValues(arr);\r\n return Promise.resolve(arr.buffer);\r\n }\r\n\r\n private toBuf(value: string | ArrayBuffer): ArrayBuffer {\r\n let buf: ArrayBuffer;\r\n if (typeof (value) === 'string') {\r\n buf = Utils.fromUtf8ToArray(value).buffer;\r\n } else {\r\n buf = value;\r\n }\r\n return buf;\r\n }\r\n\r\n private toByteString(value: string | ArrayBuffer): string {\r\n let bytes: string;\r\n if (typeof (value) === 'string') {\r\n bytes = forge.util.encodeUtf8(value);\r\n } else {\r\n bytes = Utils.fromBufferToByteString(value);\r\n }\r\n return bytes;\r\n }\r\n\r\n private toWebCryptoAlgorithm(algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): string {\r\n if (algorithm === 'md5') {\r\n throw new Error('MD5 is not supported in WebCrypto.');\r\n }\r\n return algorithm === 'sha1' ? 'SHA-1' : algorithm === 'sha256' ? 'SHA-256' : 'SHA-512';\r\n }\r\n}\r\n","export class DecryptParameters {\n encKey: T;\n data: T;\n iv: T;\n macKey: T;\n mac: T;\n macData: T;\n}\n","import { NgModule } from '@angular/core';\nimport {\n RouterModule,\n Routes,\n} from '@angular/router';\n\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingsComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { VaultComponent } from './vault/vault.component';\n\nimport { OrganizationGuardService } from './services/organization-guard.service';\nimport { OrganizationTypeGuardService } from './services/organization-type-guard.service';\nimport { UnauthGuardService } from './services/unauth-guard.service';\n\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\n\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nconst routes: Routes = [\n {\n path: '',\n component: FrontendLayoutComponent,\n children: [\n { path: '', pathMatch: 'full', component: LoginComponent, canActivate: [UnauthGuardService] },\n { path: '2fa', component: TwoFactorComponent, canActivate: [UnauthGuardService] },\n {\n path: 'register', component: RegisterComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'createAccount' },\n },\n {\n path: 'hint', component: HintComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'passwordHint' },\n },\n { path: 'lock', component: LockComponent },\n { path: 'verify-email', component: VerifyEmailTokenComponent },\n {\n path: 'accept-organization',\n component: AcceptOrganizationComponent,\n data: { titleId: 'joinOrganization' },\n },\n { path: 'recover', pathMatch: 'full', redirectTo: 'recover-2fa' },\n {\n path: 'recover-2fa',\n component: RecoverTwoFactorComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'recoverAccountTwoStep' },\n },\n {\n path: 'recover-delete',\n component: RecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n {\n path: 'verify-recover-delete',\n component: VerifyRecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n ],\n },\n {\n path: '',\n component: UserLayoutComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: 'vault', component: VaultComponent, data: { titleId: 'myVault' } },\n {\n path: 'settings',\n component: SettingsComponent,\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: AccountComponent, data: { titleId: 'myAccount' } },\n { path: 'options', component: OptionsComponent, data: { titleId: 'options' } },\n { path: 'domain-rules', component: DomainRulesComponent, data: { titleId: 'domainRules' } },\n { path: 'two-factor', component: TwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n { path: 'premium', component: PremiumComponent, data: { titleId: 'goPremium' } },\n { path: 'billing', component: UserBillingComponent, data: { titleId: 'billingAndLicensing' } },\n { path: 'organizations', component: OrganizationsComponent, data: { titleId: 'organizations' } },\n {\n path: 'create-organization',\n component: CreateOrganizationComponent,\n data: { titleId: 'newOrganization' },\n },\n ],\n },\n {\n path: 'tools',\n component: ToolsComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'generator' },\n { path: 'import', component: ImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: ExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'generator',\n component: PasswordGeneratorComponent,\n data: { titleId: 'passwordGenerator' },\n },\n { path: 'breach-report', component: BreachReportComponent, data: { titleId: 'dataBreachReport' } },\n {\n path: 'reused-passwords-report',\n component: ReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: UnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: WeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n {\n path: 'exposed-passwords-report',\n component: ExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: InactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n ],\n },\n ],\n },\n {\n path: 'organizations/:organizationId',\n component: OrganizationLayoutComponent,\n canActivate: [AuthGuardService, OrganizationGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'vault' },\n { path: 'vault', component: OrgVaultComponent, data: { titleId: 'vault' } },\n {\n path: 'tools',\n component: OrgToolsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner, OrganizationUserType.Admin] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'import' },\n { path: 'import', component: OrgImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: OrgExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'exposed-passwords-report',\n component: OrgExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: OrgInactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n {\n path: 'reused-passwords-report',\n component: OrgReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: OrgUnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: OrgWeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n ],\n },\n {\n path: 'manage',\n component: OrgManageComponent,\n canActivate: [OrganizationTypeGuardService],\n data: {\n allowedTypes: [\n OrganizationUserType.Owner,\n OrganizationUserType.Admin,\n OrganizationUserType.Manager,\n ],\n },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'people' },\n { path: 'collections', component: OrgManageCollectionsComponent, data: { titleId: 'collections' } },\n { path: 'events', component: OrgEventsComponent, data: { titleId: 'eventLogs' } },\n { path: 'groups', component: OrgGroupsComponent, data: { titleId: 'groups' } },\n { path: 'people', component: OrgPeopleComponent, data: { titleId: 'people' } },\n ],\n },\n {\n path: 'settings',\n component: OrgSettingsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: OrgAccountComponent, data: { titleId: 'myOrganization' } },\n { path: 'two-factor', component: OrgTwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n {\n path: 'billing',\n component: OrganizationBillingComponent,\n data: { titleId: 'billingAndLicensing' },\n },\n ],\n },\n ],\n },\n { path: '**', redirectTo: '' },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, {\n useHash: true,\n /*enableTracing: true,*/\n })],\n exports: [RouterModule],\n})\nexport class AppRoutingModule { }\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./jslib/src/abstractions/i18n.service.ts","webpack:///./jslib/src/abstractions/api.service.ts","webpack:///./jslib/src/angular/pipes/i18n.pipe.ts","webpack:///./jslib/src/abstractions/user.service.ts","webpack:///./jslib/src/abstractions/platformUtils.service.ts","webpack:///./jslib/src/angular/services/validation.service.ts","webpack:///./jslib/src/angular/directives/api-action.directive.ts","webpack:///./jslib/src/abstractions/messaging.service.ts","webpack:///./jslib/src/abstractions/crypto.service.ts","webpack:///./jslib/src/abstractions/cipher.service.ts","webpack:///./src/app/components/callout.component.ts","webpack:///./jslib/src/abstractions/state.service.ts","webpack:///./src/app/components/callout.component.html","webpack:///./jslib/src/importers/baseImporter.ts","webpack:///./jslib/src/models/domain/importResult.ts","webpack:///./jslib/src/angular/directives/stop-click.directive.ts","webpack:///./jslib/src/misc/utils.ts","webpack:///./jslib/src/enums/cipherType.ts","webpack:///./jslib/src/abstractions/collection.service.ts","webpack:///./jslib/src/angular/directives/input-verbatim.directive.ts","webpack:///./jslib/src/abstractions/folder.service.ts","webpack:///./jslib/src/abstractions/passwordGeneration.service.ts","webpack:///./jslib/src/abstractions/sync.service.ts","webpack:///./jslib/src/abstractions/storage.service.ts","webpack:///./jslib/src/abstractions/token.service.ts","webpack:///./jslib/src/abstractions/environment.service.ts","webpack:///./jslib/src/models/request/passwordVerificationRequest.ts","webpack:///./jslib/src/abstractions/auth.service.ts","webpack:///./jslib/src/services/constants.service.ts","webpack:///./jslib/src/angular/components/icon.component.ts","webpack:///./jslib/src/models/view/secureNoteView.ts","webpack:///./jslib/src/angular/directives/autofocus.directive.ts","webpack:///./src/app/modal.component.ts","webpack:///./jslib/src/enums/twoFactorProviderType.ts","webpack:///./jslib/src/angular/directives/stop-prop.directive.ts","webpack:///./jslib/src/angular/components/icon.component.html","webpack:///./jslib/src/abstractions/cryptoFunction.service.ts","webpack:///./jslib/src/abstractions/audit.service.ts","webpack:///./jslib/src/models/view/cardView.ts","webpack:///./jslib/src/models/domain/domainBase.ts","webpack:///./jslib/src/angular/services/broadcaster.service.ts","webpack:///./jslib/src/enums/secureNoteType.ts","webpack:///./jslib/src/abstractions/search.service.ts","webpack:///./jslib/src/models/view/cipherView.ts","webpack:///./src/app/components/avatar.component.ts","webpack:///./jslib/src/models/view/folderView.ts","webpack:///./jslib/src/models/view/collectionView.ts","webpack:///./src/app/components/avatar.component.ts.AvatarComponent.html","webpack:///./jslib/src/models/view/loginView.ts","webpack:///./src/app/settings/payment.component.ts","webpack:///./jslib/src/models/data/cipherData.ts","webpack:///./jslib/src/models/data/collectionData.ts","webpack:///./src/app/settings/two-factor-verify.component.ts","webpack:///./jslib/src/enums/deviceType.ts","webpack:///./jslib/src/models/request/cipherRequest.ts","webpack:///./jslib/src/enums/fieldType.ts","webpack:///./jslib/src/models/view/fieldView.ts","webpack:///./jslib/src/models/view/identityView.ts","webpack:///./jslib/src/models/domain/collection.ts","webpack:///./src/app/settings/two-factor-verify.component.html","webpack:///./jslib/src/abstractions/lock.service.ts","webpack:///./src/app/services/router.service.ts","webpack:///./src/app/settings/organizations.component.ts","webpack:///./jslib/src/abstractions/totp.service.ts","webpack:///./jslib/src/models/view/loginUriView.ts","webpack:///./src/app/settings/two-factor-base.component.ts","webpack:///./jslib/src/abstractions/import.service.ts","webpack:///./jslib/src/abstractions/export.service.ts","webpack:///./src/app/tools/cipher-report.component.ts","webpack:///./jslib/src/models/domain/cipher.ts","webpack:///./src/app/services/event.service.ts","webpack:///./jslib/src/enums/organizationUserType.ts","webpack:///./jslib/src/services/auth.service.ts","webpack:///./src/app/vault/groupings.component.ts","webpack:///./src/app/vault/ciphers.component.ts","webpack:///./src/app/vault/add-edit.component.ts","webpack:///./jslib/src/enums/organizationUserStatusType.ts","webpack:///./src/app/settings/two-factor-setup.component.ts","webpack:///./src/app/tools/import.component.ts","webpack:///./src/app/tools/export.component.ts","webpack:///./src/app/tools/reused-passwords-report.component.ts","webpack:///./jslib/src/models/domain/cipherString.ts","webpack:///./src/app/tools/unsecured-websites-report.component.ts","webpack:///./src/app/tools/weak-passwords-report.component.ts","webpack:///./src/app/tools/exposed-passwords-report.component.ts","webpack:///./src/app/tools/inactive-two-factor-report.component.ts","webpack:///./jslib/src/angular/pipes/search.pipe.ts","webpack:///./jslib/src/models/request/selectionReadOnlyRequest.ts","webpack:///./jslib/src/models/response/selectionReadOnlyResponse.ts","webpack:///./jslib/src/abstractions/notifications.service.ts","webpack:///./jslib/src/abstractions/settings.service.ts","webpack:///./src/app/layouts/frontend-layout.component.ts","webpack:///./src/app/accounts/login.component.ts","webpack:///./src/app/accounts/two-factor.component.ts","webpack:///./src/app/components/password-strength.component.ts","webpack:///./src/app/accounts/register.component.ts","webpack:///./jslib/src/enums/kdfType.ts","webpack:///./src/app/accounts/hint.component.ts","webpack:///./src/app/accounts/lock.component.ts","webpack:///./src/app/accounts/verify-email-token.component.ts","webpack:///./src/app/accounts/accept-organization.component.ts","webpack:///./src/app/accounts/recover-two-factor.component.ts","webpack:///./src/app/accounts/recover-delete.component.ts","webpack:///./src/app/accounts/verify-recover-delete.component.ts","webpack:///./src/app/layouts/navbar.component.ts","webpack:///./src/app/layouts/footer.component.ts","webpack:///./src/app/layouts/user-layout.component.ts","webpack:///./src/app/vault/vault.component.ts","webpack:///./jslib/src/models/request/cipherWithIdRequest.ts","webpack:///./jslib/src/models/request/folderRequest.ts","webpack:///./jslib/src/enums/uriMatchType.ts","webpack:///./src/app/vault/attachments.component.ts","webpack:///./src/app/vault/collections.component.ts","webpack:///./src/app/settings/settings.component.ts","webpack:///./src/app/settings/account.component.ts","webpack:///./src/app/settings/purge-vault.component.ts","webpack:///./src/app/settings/options.component.ts","webpack:///./src/app/settings/domain-rules.component.ts","webpack:///./src/app/settings/two-factor-duo.component.ts","webpack:///./src/app/settings/payment.component.html","webpack:///./src/app/settings/premium.component.ts","webpack:///./src/app/settings/update-license.component.ts","webpack:///./src/app/settings/adjust-storage.component.ts","webpack:///./src/app/settings/adjust-payment.component.ts","webpack:///./jslib/src/enums/paymentMethodType.ts","webpack:///./src/app/settings/user-billing.component.ts","webpack:///./src/app/settings/create-organization.component.ts","webpack:///./src/app/tools/tools.component.ts","webpack:///./src/app/tools/password-generator.component.ts","webpack:///./src/app/tools/breach-report.component.ts","webpack:///./src/app/organizations/vault/add-edit.component.ts","webpack:///./jslib/src/enums/encryptionType.ts","webpack:///./src/app/layouts/organization-layout.component.ts","webpack:///./src/app/organizations/vault/groupings.component.ts","webpack:///./src/app/organizations/vault/ciphers.component.ts","webpack:///./src/app/organizations/vault/vault.component.ts","webpack:///./src/app/organizations/manage/entity-events.component.ts","webpack:///./src/app/organizations/tools/tools.component.ts","webpack:///./src/app/organizations/tools/import.component.ts","webpack:///./src/app/organizations/tools/export.component.ts","webpack:///./src/app/organizations/tools/exposed-passwords-report.component.ts","webpack:///./src/app/organizations/tools/inactive-two-factor-report.component.ts","webpack:///./src/app/organizations/tools/reused-passwords-report.component.ts","webpack:///./src/app/organizations/tools/unsecured-websites-report.component.ts","webpack:///./src/app/organizations/tools/weak-passwords-report.component.ts","webpack:///./src/app/organizations/manage/manage.component.ts","webpack:///./src/app/organizations/manage/collections.component.ts","webpack:///./src/app/organizations/manage/entity-users.component.ts","webpack:///./src/app/organizations/manage/events.component.ts","webpack:///./src/app/organizations/manage/groups.component.ts","webpack:///./src/app/organizations/manage/people.component.ts","webpack:///./src/app/organizations/settings/settings.component.ts","webpack:///./src/app/organizations/settings/account.component.ts","webpack:///./src/app/organizations/settings/two-factor-setup.component.ts","webpack:///./src/app/organizations/settings/organization-billing.component.ts","webpack:///./src lazy namespace object","webpack:///./src/app/app.component.ts","webpack:///./src/app/accounts/two-factor-options.component.ts","webpack:///./jslib/src/models/request/twoFactorEmailRequest.ts","webpack:///./jslib/src/models/request/keysRequest.ts","webpack:///./src/app/components/password-strength.component.html","webpack:///./src/app/layouts/navbar.component.html","webpack:///./src/app/layouts/footer.component.html","webpack:///./src/app/settings/verify-email.component.ts","webpack:///./src/app/settings/organizations.component.html","webpack:///./src/app/settings/update-key.component.ts","webpack:///./jslib/src/models/request/folderWithIdRequest.ts","webpack:///./jslib/src/models/request/updateKeyRequest.ts","webpack:///./src/app/vault/bulk-delete.component.ts","webpack:///./src/app/vault/bulk-move.component.ts","webpack:///./src/app/vault/bulk-share.component.ts","webpack:///./src/app/vault/folder-add-edit.component.ts","webpack:///./src/app/vault/share.component.ts","webpack:///./src/app/settings/profile.component.ts","webpack:///./src/app/settings/change-email.component.ts","webpack:///./jslib/src/models/request/emailTokenRequest.ts","webpack:///./src/app/settings/change-password.component.ts","webpack:///./jslib/src/models/request/passwordRequest.ts","webpack:///./src/app/settings/change-kdf.component.ts","webpack:///./src/app/settings/deauthorize-sessions.component.ts","webpack:///./src/app/settings/delete-account.component.ts","webpack:///./src/app/settings/two-factor-authenticator.component.ts","webpack:///./src/app/settings/two-factor-email.component.ts","webpack:///./src/app/settings/two-factor-recovery.component.ts","webpack:///./src/app/settings/two-factor-u2f.component.ts","webpack:///./src/app/settings/two-factor-yubikey.component.ts","webpack:///./src/app/settings/update-license.component.html","webpack:///./src/app/settings/adjust-storage.component.html","webpack:///./src/app/settings/adjust-payment.component.html","webpack:///./jslib/src/enums/planType.ts","webpack:///./jslib/src/angular/pipes/color-password.pipe.ts","webpack:///./src/app/tools/password-generator-history.component.ts","webpack:///./jslib/src/models/data/attachmentData.ts","webpack:///./jslib/src/models/data/cardData.ts","webpack:///./jslib/src/models/data/fieldData.ts","webpack:///./jslib/src/models/data/identityData.ts","webpack:///./jslib/src/models/data/loginData.ts","webpack:///./jslib/src/models/data/loginUriData.ts","webpack:///./jslib/src/models/data/passwordHistoryData.ts","webpack:///./jslib/src/models/data/secureNoteData.ts","webpack:///./jslib/src/models/domain/attachment.ts","webpack:///./jslib/src/models/view/attachmentView.ts","webpack:///./jslib/src/models/domain/symmetricCryptoKey.ts","webpack:///./jslib/src/models/domain/card.ts","webpack:///./jslib/src/models/domain/field.ts","webpack:///./jslib/src/models/domain/identity.ts","webpack:///./jslib/src/models/domain/login.ts","webpack:///./jslib/src/models/domain/loginUri.ts","webpack:///./jslib/src/models/domain/password.ts","webpack:///./jslib/src/models/view/passwordHistoryView.ts","webpack:///./jslib/src/models/domain/secureNote.ts","webpack:///./jslib/src/models/request/cipherCreateRequest.ts","webpack:///./src/app/organizations/vault/attachments.component.ts","webpack:///./src/app/organizations/vault/collections.component.ts","webpack:///./jslib/src/models/request/cipherCollectionsRequest.ts","webpack:///./src/app/organizations/manage/collection-add-edit.component.ts","webpack:///./jslib/src/models/request/collectionRequest.ts","webpack:///./src/app/organizations/manage/group-add-edit.component.ts","webpack:///./jslib/src/models/request/organizationUserConfirmRequest.ts","webpack:///./src/app/organizations/manage/user-add-edit.component.ts","webpack:///./src/app/organizations/manage/user-confirm.component.ts","webpack:///./src/app/organizations/manage/user-groups.component.ts","webpack:///./src/app/organizations/settings/delete-organization.component.ts","webpack:///./src/app/organizations/settings/adjust-seats.component.ts","webpack:///./jslib/src/angular/directives/box-row.directive.ts","webpack:///./jslib/src/angular/directives/true-false-value.directive.ts","webpack:///./jslib/src/services/api.service.ts","webpack:///./jslib/src/models/response/billingResponse.ts","webpack:///./jslib/src/models/response/cipherResponse.ts","webpack:///./jslib/src/models/response/collectionResponse.ts","webpack:///./jslib/src/models/response/domainsResponse.ts","webpack:///./jslib/src/models/response/folderResponse.ts","webpack:///./jslib/src/models/response/organizationResponse.ts","webpack:///./jslib/src/models/response/profileResponse.ts","webpack:///./jslib/src/services/appId.service.ts","webpack:///./jslib/src/services/audit.service.ts","webpack:///./jslib/src/services/cipher.service.ts","webpack:///./jslib/src/misc/sequentialize.ts","webpack:///./jslib/src/services/collection.service.ts","webpack:///./jslib/src/misc/serviceUtils.ts","webpack:///./jslib/src/services/container.service.ts","webpack:///./jslib/src/services/crypto.service.ts","webpack:///./jslib/src/misc/wordlist.ts","webpack:///./jslib/src/services/environment.service.ts","webpack:///./jslib/src/services/folder.service.ts","webpack:///./jslib/src/models/data/folderData.ts","webpack:///./jslib/src/services/i18n.service.ts","webpack:///./jslib/src/services/lock.service.ts","webpack:///./jslib/src/services/passwordGeneration.service.ts","webpack:///./jslib/src/services/settings.service.ts","webpack:///./jslib/src/services/state.service.ts","webpack:///./jslib/src/services/sync.service.ts","webpack:///./jslib/src/services/token.service.ts","webpack:///./jslib/src/services/totp.service.ts","webpack:///./jslib/src/services/user.service.ts","webpack:///./jslib/src/models/export/cipherWithIds.ts","webpack:///./jslib/src/models/export/collectionWithId.ts","webpack:///./jslib/src/models/export/folderWithId.ts","webpack:///./jslib/src/enums/notificationType.ts","webpack:///./jslib/src/angular/services/auth-guard.service.ts","webpack:///./src/app/services/organization-guard.service.ts","webpack:///./src/app/services/organization-type-guard.service.ts","webpack:///./src/app/services/unauth-guard.service.ts","webpack:///./src/app/main.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/layouts/frontend-layout.component.html","webpack:///./src/app/accounts/login.component.html","webpack:///./jslib/src/angular/components/login.component.ts","webpack:///./jslib/src/misc/tldjs.noop.ts","webpack:///./src/app/accounts/two-factor.component.html","webpack:///./jslib/src/angular/components/two-factor-options.component.ts","webpack:///./jslib/src/angular/components/modal.component.ts","webpack:///./jslib/src/angular/components/two-factor.component.ts","webpack:///./jslib/src/models/domain/authResult.ts","webpack:///./jslib/src/models/request/deviceRequest.ts","webpack:///./jslib/src/models/request/preloginRequest.ts","webpack:///./jslib/src/models/request/tokenRequest.ts","webpack:///./jslib/src/misc/u2f.ts","webpack:///./src/app/accounts/register.component.html","webpack:///./jslib/src/angular/components/register.component.ts","webpack:///./jslib/src/models/request/registerRequest.ts","webpack:///./src/app/accounts/hint.component.html","webpack:///./jslib/src/angular/components/hint.component.ts","webpack:///./jslib/src/models/request/passwordHintRequest.ts","webpack:///./src/app/accounts/lock.component.html","webpack:///./jslib/src/angular/components/lock.component.ts","webpack:///./src/app/accounts/verify-email-token.component.html","webpack:///./jslib/src/models/request/verifyEmailRequest.ts","webpack:///./src/app/accounts/accept-organization.component.html","webpack:///./jslib/src/models/request/organizationUserAcceptRequest.ts","webpack:///./src/app/accounts/recover-two-factor.component.html","webpack:///./jslib/src/models/request/twoFactorRecoveryRequest.ts","webpack:///./src/app/accounts/recover-delete.component.html","webpack:///./jslib/src/models/request/deleteRecoverRequest.ts","webpack:///./src/app/accounts/verify-recover-delete.component.html","webpack:///./jslib/src/models/request/verifyDeleteRecoverRequest.ts","webpack:///./src/app/layouts/user-layout.component.html","webpack:///./src/app/vault/vault.component.html","webpack:///./src/app/settings/verify-email.component.html","webpack:///./src/app/vault/groupings.component.html","webpack:///./jslib/src/angular/components/groupings.component.ts","webpack:///./src/app/vault/ciphers.component.html","webpack:///./jslib/src/angular/directives/fallback-src.directive.ts","webpack:///./jslib/src/angular/components/ciphers.component.ts","webpack:///./jslib/src/models/request/attachmentRequest.ts","webpack:///./jslib/src/angular/components/add-edit.component.ts","webpack:///./jslib/src/angular/components/attachments.component.ts","webpack:///./jslib/src/angular/components/collections.component.ts","webpack:///./jslib/src/angular/components/folder-add-edit.component.ts","webpack:///./jslib/src/angular/components/share.component.ts","webpack:///./src/app/settings/settings.component.html","webpack:///./src/app/settings/account.component.html","webpack:///./src/app/settings/profile.component.html","webpack:///./jslib/src/models/request/updateProfileRequest.ts","webpack:///./src/app/settings/change-email.component.html","webpack:///./jslib/src/models/request/emailRequest.ts","webpack:///./src/app/settings/change-password.component.html","webpack:///./src/app/settings/change-kdf.component.html","webpack:///./jslib/src/models/request/kdfRequest.ts","webpack:///./src/app/settings/options.component.html","webpack:///./src/app/settings/domain-rules.component.html","webpack:///./jslib/src/models/request/updateDomainsRequest.ts","webpack:///./src/app/settings/two-factor-setup.component.html","webpack:///./jslib/src/models/request/updateTwoFactorAuthenticatorRequest.ts","webpack:///./jslib/src/models/request/twoFactorProviderRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorDuoRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorEmailRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorU2fDeleteRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorU2fRequest.ts","webpack:///./jslib/src/models/request/updateTwoFactorYubioOtpRequest.ts","webpack:///./src/app/settings/premium.component.html","webpack:///./src/app/settings/user-billing.component.html","webpack:///./jslib/src/models/request/storageRequest.ts","webpack:///./jslib/src/models/request/paymentRequest.ts","webpack:///./src/app/settings/create-organization.component.html","webpack:///./jslib/src/models/request/organizationCreateRequest.ts","webpack:///./src/app/tools/tools.component.html","webpack:///./src/app/tools/import.component.html","webpack:///./src/app/tools/export.component.html","webpack:///./jslib/src/angular/components/export.component.ts","webpack:///./src/app/tools/password-generator.component.html","webpack:///./jslib/src/angular/components/password-generator.component.ts","webpack:///./jslib/src/angular/components/password-generator-history.component.ts","webpack:///./src/app/tools/breach-report.component.html","webpack:///./src/app/tools/reused-passwords-report.component.html","webpack:///./src/app/tools/unsecured-websites-report.component.html","webpack:///./src/app/tools/weak-passwords-report.component.html","webpack:///./src/app/tools/exposed-passwords-report.component.html","webpack:///./src/app/tools/inactive-two-factor-report.component.html","webpack:///./src/app/layouts/organization-layout.component.html","webpack:///./src/app/organizations/vault/vault.component.html","webpack:///./jslib/src/enums/eventType.ts","webpack:///./src/app/organizations/tools/tools.component.html","webpack:///./src/app/organizations/manage/manage.component.html","webpack:///./src/app/organizations/manage/collections.component.html","webpack:///./src/app/organizations/manage/events.component.html","webpack:///./src/app/organizations/manage/groups.component.html","webpack:///./jslib/src/models/request/groupRequest.ts","webpack:///./src/app/organizations/manage/people.component.html","webpack:///./jslib/src/models/request/organizationUserInviteRequest.ts","webpack:///./jslib/src/models/request/organizationUserUpdateRequest.ts","webpack:///./jslib/src/models/request/organizationUserUpdateGroupsRequest.ts","webpack:///./src/app/organizations/settings/settings.component.html","webpack:///./src/app/organizations/settings/account.component.html","webpack:///./jslib/src/models/request/organizationUpdateRequest.ts","webpack:///./src/app/organizations/settings/organization-billing.component.html","webpack:///./src/app/organizations/settings/adjust-seats.component.html","webpack:///./jslib/src/models/request/seatRequest.ts","webpack:///./jslib/src/models/request/verifyBankRequest.ts","webpack:///./src/app/vault/add-edit.component.html","webpack:///./src/app/vault/attachments.component.html","webpack:///./src/app/vault/bulk-delete.component.html","webpack:///./src/app/vault/bulk-move.component.html","webpack:///./src/app/vault/bulk-share.component.html","webpack:///./src/app/vault/collections.component.html","webpack:///./src/app/settings/deauthorize-sessions.component.html","webpack:///./src/app/settings/delete-account.component.html","webpack:///./src/app/organizations/settings/delete-organization.component.html","webpack:///./src/app/vault/folder-add-edit.component.html","webpack:///./src/app/modal.component.ts.ModalComponent.html","webpack:///./src/app/organizations/manage/collection-add-edit.component.html","webpack:///./src/app/organizations/manage/entity-events.component.html","webpack:///./src/app/organizations/manage/entity-users.component.html","webpack:///./src/app/organizations/manage/group-add-edit.component.html","webpack:///./src/app/organizations/manage/user-add-edit.component.html","webpack:///./src/app/organizations/manage/user-confirm.component.html","webpack:///./src/app/organizations/manage/user-groups.component.html","webpack:///./src/app/tools/password-generator-history.component.html","webpack:///./src/app/settings/purge-vault.component.html","webpack:///./src/app/vault/share.component.html","webpack:///./src/app/settings/two-factor-authenticator.component.html","webpack:///./src/app/settings/two-factor-duo.component.html","webpack:///./src/app/settings/two-factor-email.component.html","webpack:///./src/app/accounts/two-factor-options.component.html","webpack:///./src/app/settings/two-factor-recovery.component.html","webpack:///./src/app/settings/two-factor-u2f.component.html","webpack:///./src/app/settings/two-factor-yubikey.component.html","webpack:///./src/app/settings/update-key.component.html","webpack:///./src/app/app.component.html","webpack:///./src/app/services/services.module.ts","webpack:///./src/services/broadcasterMessaging.service.ts","webpack:///./src/services/htmlStorage.service.ts","webpack:///./jslib/src/services/index.ts","webpack:///./jslib/src/models/response/attachmentResponse.ts","webpack:///./jslib/src/models/response/passwordHistoryResponse.ts","webpack:///./jslib/src/models/api/cardApi.ts","webpack:///./jslib/src/models/api/fieldApi.ts","webpack:///./jslib/src/models/api/identityApi.ts","webpack:///./jslib/src/models/api/loginApi.ts","webpack:///./jslib/src/models/api/loginUriApi.ts","webpack:///./jslib/src/models/api/secureNoteApi.ts","webpack:///./jslib/src/models/response/globalDomainResponse.ts","webpack:///./jslib/src/models/response/errorResponse.ts","webpack:///./jslib/src/models/response/eventResponse.ts","webpack:///./jslib/src/models/response/groupResponse.ts","webpack:///./jslib/src/models/response/identityTokenResponse.ts","webpack:///./jslib/src/models/response/identityTwoFactorResponse.ts","webpack:///./jslib/src/models/response/listResponse.ts","webpack:///./jslib/src/models/response/organizationBillingResponse.ts","webpack:///./jslib/src/models/response/organizationUserResponse.ts","webpack:///./jslib/src/models/response/preloginResponse.ts","webpack:///./jslib/src/models/response/profileOrganizationResponse.ts","webpack:///./jslib/src/models/response/syncResponse.ts","webpack:///./jslib/src/models/response/twoFactorAuthenticatorResponse.ts","webpack:///./jslib/src/models/response/twoFactorDuoResponse.ts","webpack:///./jslib/src/models/response/twoFactorEmailResponse.ts","webpack:///./jslib/src/models/response/twoFactorProviderResponse.ts","webpack:///./jslib/src/models/response/twoFactorRescoverResponse.ts","webpack:///./jslib/src/models/response/twoFactorU2fResponse.ts","webpack:///./jslib/src/models/response/twoFactorYubiKeyResponse.ts","webpack:///./jslib/src/models/response/userKeyResponse.ts","webpack:///./jslib/src/models/response/breachAccountResponse.ts","webpack:///./jslib/src/models/request/cipherBulkDeleteRequest.ts","webpack:///./jslib/src/models/request/cipherBulkMoveRequest.ts","webpack:///./jslib/src/models/request/cipherBulkShareRequest.ts","webpack:///./jslib/src/models/request/cipherShareRequest.ts","webpack:///./jslib/src/models/domain/treeNode.ts","webpack:///./jslib/src/models/domain/encryptedObject.ts","webpack:///./jslib/src/models/domain/environmentUrls.ts","webpack:///./jslib/src/models/domain/folder.ts","webpack:///./jslib/src/models/domain/generatedPasswordHistory.ts","webpack:///./jslib/src/models/data/organizationData.ts","webpack:///./jslib/src/models/domain/organization.ts","webpack:///./src/services/i18n.service.ts","webpack:///./src/services/memoryStorage.service.ts","webpack:///./src/services/webPlatformUtils.service.ts","webpack:///./jslib/src/misc/analytics.ts","webpack:///./jslib/src/services/export.service.ts","webpack:///./jslib/src/models/export/cipher.ts","webpack:///./jslib/src/models/export/card.ts","webpack:///./jslib/src/models/export/field.ts","webpack:///./jslib/src/models/export/identity.ts","webpack:///./jslib/src/models/export/login.ts","webpack:///./jslib/src/models/export/loginUri.ts","webpack:///./jslib/src/models/export/secureNote.ts","webpack:///./jslib/src/models/export/collection.ts","webpack:///./jslib/src/models/export/folder.ts","webpack:///./jslib/src/services/import.service.ts","webpack:///./jslib/src/models/request/importCiphersRequest.ts","webpack:///./jslib/src/models/request/importOrganizationCiphersRequest.ts","webpack:///./jslib/src/models/request/kvpRequest.ts","webpack:///./jslib/src/importers/ascendoCsvImporter.ts","webpack:///./jslib/src/importers/avastCsvImporter.ts","webpack:///./jslib/src/importers/aviraCsvImporter.ts","webpack:///./jslib/src/importers/bitwardenCsvImporter.ts","webpack:///./jslib/src/importers/bitwardenJsonImporter.ts","webpack:///./jslib/src/importers/blurCsvImporter.ts","webpack:///./jslib/src/importers/chromeCsvImporter.ts","webpack:///./jslib/src/importers/clipperzHtmlImporter.ts","webpack:///./jslib/src/importers/dashlaneJsonImporter.ts","webpack:///./jslib/src/importers/enpassCsvImporter.ts","webpack:///./jslib/src/importers/enpassJsonImporter.ts","webpack:///./jslib/src/importers/firefoxCsvImporter.ts","webpack:///./jslib/src/importers/gnomeJsonImporter.ts","webpack:///./jslib/src/importers/keepass2XmlImporter.ts","webpack:///./jslib/src/importers/keepassxCsvImporter.ts","webpack:///./jslib/src/importers/keeperCsvImporter.ts","webpack:///./jslib/src/importers/lastpassCsvImporter.ts","webpack:///./jslib/src/importers/meldiumCsvImporter.ts","webpack:///./jslib/src/importers/msecureCsvImporter.ts","webpack:///./jslib/src/importers/onepassword1PifImporter.ts","webpack:///./jslib/src/importers/onepasswordWinCsvImporter.ts","webpack:///./jslib/src/models/view/index.ts","webpack:///./jslib/src/models/view/view.ts","webpack:///./jslib/src/importers/padlockCsvImporter.ts","webpack:///./jslib/src/importers/passkeepCsvImporter.ts","webpack:///./jslib/src/importers/passmanJsonImporter.ts","webpack:///./jslib/src/importers/passpackCsvImporter.ts","webpack:///./jslib/src/importers/passwordAgentCsvImporter.ts","webpack:///./jslib/src/importers/passwordBossJsonImporter.ts","webpack:///./jslib/src/importers/passwordDragonXmlImporter.ts","webpack:///./jslib/src/importers/passwordSafeXmlImporter.ts","webpack:///./jslib/src/importers/roboformCsvImporter.ts","webpack:///./jslib/src/importers/safeInCloudXmlImporter.ts","webpack:///./jslib/src/importers/saferpassCsvImport.ts","webpack:///./jslib/src/importers/splashIdCsvImporter.ts","webpack:///./jslib/src/importers/stickyPasswordXmlImporter.ts","webpack:///./jslib/src/importers/truekeyCsvImporter.ts","webpack:///./jslib/src/importers/upmCsvImporter.ts","webpack:///./jslib/src/importers/zohoVaultCsvImporter.ts","webpack:///./jslib/src/services/notifications.service.ts","webpack:///./jslib/src/models/response/notificationResponse.ts","webpack:///./jslib/src/services/search.service.ts","webpack:///./jslib/src/services/webCryptoFunction.service.ts","webpack:///./jslib/src/models/domain/decryptParameters.ts","webpack:///./src/app/app-routing.module.ts"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","1","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","I18nService","ApiService","I18nPipe","i18nService","this","transform","id","p1","p2","p3","UserService","PlatformUtilsService","ValidationService","platformUtilsService","showError","defaultErrorMessage","errors","validationErrors","message","forEach","item","prefix","indexOf","lastSep","lastIndexOf","substr","showToast","timeout","ApiActionDirective","el","validationService","ngOnChanges","changes","_this","appApiAction","then","nativeElement","loading","response","e","MessagingService","CryptoService","CipherService","CalloutComponent","type","ngOnInit","calloutStyle","undefined","title","icon","StateService","_l","i0","ɵeld","_ck","_v","_co","component","ɵinlineInterpolate","ɵted","ɵand","View_CalloutComponent_2","ɵdid","i1","NgIf","ViewContainerRef","TemplateRef","ngIf","View_CalloutComponent_1","ɵncd","papa","cipherView_1","collectionView_1","loginUriView_1","utils_1","fieldView_1","folderView_1","loginView_1","secureNoteView_1","cipherType_1","fieldType_1","secureNoteType_1","BaseImporter","organization","newLineRegex","passwordFieldNames","usernameFieldNames","notesFieldNames","uriFieldNames","parseXml","doc","DOMParser","parseFromString","querySelector","parseCsv","header","splitNewLine","join","trim","parse","encoding","skipEmptyLines","row","console","warn","parseSingleRowCsv","rowData","isNullOrWhitespace","parsedRow","makeUriArray","uri","loginUri","LoginUriView","fixUri","match","returnArr_1","u","toLowerCase","substring","nameFromUrl","url","hostname","Utils","getHostname","startsWith","replace","str","getValueOrDefault","defaultValue","split","getCardBrand","cardNum","re","RegExp","test","moveFoldersToCollections","folderRelationships","collectionRelationships","collections","folders","map","f","collection","CollectionView","querySelectorDirectChild","parentEl","query","els","querySelectorAllDirectChild","Array","from","querySelectorAll","filter","parentNode","initLoginCipher","cipher","CipherView","favorite","notes","fields","login","LoginView","CipherType","Login","cleanupCipher","processKvp","search","field","FieldView","FieldType","Text","processFolder","folderName","folderIndex","hasFolder","addFolder","FolderView","ciphers","convertToNoteIfNeeded","username","password","uris","SecureNote","secureNote","SecureNoteView","SecureNoteType","Generic","ImportResult","success","StopClickDirective","onClick","$event","preventDefault","tldjs","nodeURL","init","inited","isNode","process","release","isBrowser","isNativeScript","isMobileBrowser","isMobile","global","fromB64ToArray","Uint8Array","Buffer","binaryString","atob","bytes","charCodeAt","fromHexToArray","parseInt","fromUtf8ToArray","strUtf8","unescape","encodeURIComponent","arr","fromByteStringToArray","fromBufferToB64","buffer","toString","binary","byteLength","String","fromCharCode","btoa","fromBufferToUtf8","encodedString","decodeURIComponent","escape","fromBufferToByteString","fromBufferToHex","x","fromUrlB64ToUtf8","b64Str","output","Error","fromB64ToUtf8","newGuid","Math","random","uriString","getUrl","_a","getHost","host","getDomain","getUrlObject","validIpAddress","urlDomain","domain","getQueryParams","Map","pair","parts","set","getSortFunction","prop","a","b","collator","compare","localeCompare","ipString","win","mobile","navigator","userAgent","vendor","opera","hasProtocol","URL","anchor","document","createElement","href","CollectionService","InputVerbatimDirective","renderer","condition","disableComplete","hasAttribute","setAttribute","FolderService","PasswordGenerationService","SyncService","StorageService","TokenService","EnvironmentService","PasswordVerificationRequest","AuthService","ConstantsService","environmentUrlsKey","disableGaKey","disableAddLoginNotificationKey","disableContextMenuItemKey","disableFaviconKey","disableAutoTotpCopyKey","enableAutoFillOnPageLoadKey","lockOptionKey","lastActiveKey","neverDomainsKey","installedVersionKey","localeKey","themeKey","collapsedGroupingsKey","autoConfirmFingerprints","dontShowCardsCurrentTab","dontShowIdentitiesCurrentTab","disableChangedPasswordNotificationKey","constants_service_1","IconMap","fa-globe","fa-sticky-note-o","fa-id-card-o","fa-credit-card","fa-android","fa-apple","IconComponent","environmentService","stateService","iconsUrl","baseUrl","imageEnabled","_b","sent","load","setLoginIcon","Card","Identity","hostnameUri","isWebsite","image","fallbackImage","AutofocusDirective","autofocus","focus","jq","modal_component_1","ModalComponent","_super","componentFactoryResolver","__extends","ngOnDestroy","show","parentContainer","fade","factory","resolveComponentFactory","componentRef","container","createComponent","modals","modal","on","onShow","emit","onShown","find","onClose","onClosed","clear","instance","close","TwoFactorProviderType","StopPropDirective","stopPropagation","en","ad","View_IconComponent_1","i2","View_IconComponent_2","CryptoFunctionService","AuditService","CardView","expMonth","_brand","code","repeat","_subTitle","_number","brand","number","expYear","exp","formatYear","year","cipherString_1","Domain","buildDomainModel","dataObj","alreadyEncrypted","notEncList","objProp","CipherString","buildDataModel","notCipherStringList","encryptedString","decryptObj","viewModel","orgId","promises","self","theProp","Promise","resolve","mapProp","decrypt","val","all","BroadcasterService","subscribers","send","has","subscribe","messageCallback","unsubscribe","delete","SearchService","organizationUseTotp","edit","organizationId","folderId","localData","collectionIds","revisionDate","subTitle","card","identity","passwordHistory","attachments","hasAttachments","passwordRevisionDate","AvatarComponent","sanitizer","cryptoFunctionService","size","charCount","textColor","fontSize","fontWeight","dynamic","circle","generate","email","hash","hashBytes","src","chars","upperData","toUpperCase","getFirstLetters","charObj","getCharText","color","stringToColor","svg","getSvg","appendChild","html","outerHTML","svgHtml","count","text","svgTag","style","backgroundColor","width","height","character","textTag","textContent","readOnly","NgClass","IterableDiffers","KeyValueDiffers","ElementRef","Renderer2","ngClass","ɵpod","rounded-circle","bypassSecurityTrustResourceUrl","hasUris","canLaunch","Keys","stripeTest","stripeLive","btSandbox","btProduction","PaymentComponent","showOptions","method","hideBank","hidePaypal","exp_month","exp_year","address_country","address_zip","bank","routing_number","account_number","account_holder_name","account_holder_type","currency","country","btInstance","stripeScript","async","onload","Stripe","setPublishableKey","isDev","btScript","cardExpMonthOptions","cardExpYearOptions","Date","getFullYear","head","removeChild","body","btStylesheet","changeMethod","setTimeout","braintree","dropin","authorization","paymentOptionPriority","paypal","flow","buttonStyle","label","shape","createErr","error","createPaymentToken","reject","requestPaymentMethod","payload","nonce","catch","err","createObj","bankAccount","sourceObj","createToken","status","getCountry","attachmentData_1","cardData_1","fieldData_1","identityData_1","loginData_1","passwordHistoryData_1","secureNoteData_1","CipherData","userId","LoginData","SecureNoteData","CardData","IdentityData","FieldData","attachment","AttachmentData","ph","PasswordHistoryData","CollectionData","core_1","twoFactorProviderType_1","passwordVerificationRequest_1","TwoFactorVerifyComponent","apiService","toasterService","cryptoService","onAuthed","EventEmitter","submit","masterPassword","popAsync","request","hashPassword","masterPasswordHash","_d","formPromise","getTwoFactorRecover","Duo","OrganizationDuo","getTwoFactorOrganizationDuo","getTwoFactorDuo","Email","getTwoFactorEmail","U2f","getTwoFactorU2f","Authenticator","getTwoFactorAuthenticator","Yubikey","getTwoFactorYubiKey","DeviceType","attachmentRequest_1","CipherRequest","toISOString","totp","cardholderName","firstName","middleName","lastName","address1","address2","address3","city","state","postalCode","company","phone","ssn","passportNumber","licenseNumber","lastUsedDate","attachments2","fileName","attachmentRequest","AttachmentRequest","IdentityView","_firstName","_lastName","name_1","Collection","obj","default","i3","NgForm","ngSubmit","ɵprd","ControlContainer","NgControlStatusGroup","i4","i5","ɵppd","DefaultValueAccessor","COMPOSITION_BUFFER_MODE","RequiredValidator","required","NG_VALIDATORS","p0_0","NG_VALUE_ACCESSOR","NgModel","model","update","NgControl","NgControlStatus","i6","appInputVerbatim","ɵnov","ngClassUntouched","ngClassTouched","ngClassPristine","ngClassDirty","ngClassValid","ngClassInvalid","ngClassPending","ɵunv","LockService","router_1","RouterService","router","activatedRoute","titleService","previousUrl","currentUrl","events","event","NavigationEnd","titleId","rawTitle","child","firstChild","snapshot","newTitle","setTitle","getPreviousUrl","OrganizationsComponent","userService","analytics","syncService","vault","loaded","getAllOrganizations","orgs","sort","organizations","leave","org","showDialog","actionPromise","postLeaveOrganization","fullSync","eventTrack","next","action","TotpService","CanLaunchWhitelist","_uri","_domain","_canLaunch","_hostname","twoFactorProviderRequest_1","TwoFactorBaseComponent","onUpdated","twoFactorProviderType","enabled","authed","auth","authResponse","enable","enableFunction","disable","promise","TwoFactorProviderRequest","putTwoFactorOrganizationDisable","putTwoFactorDisable","ImportService","ExportService","add_edit_component_1","add_edit_component_2","CipherReportComponent","messagingService","requiresPaid","hasLoaded","setCiphers","selectCipher","childComponent","cipherAddEditModalRef","AddEditComponent","cipherId","onSavedCipher","__awaiter","onDeletedCipher","checkAccess","useTotp","canAccessPremium","accessPremium","cipherData_1","attachment_1","card_1","domainBase_1","field_1","identity_1","login_1","password_1","secureNote_1","Cipher","Attachment","Field","Password","_f","_c","_e","attachments_1","reduce","decAttachment","fields_1","decField","passwordHistory_1","decPh","toCipherData","toLoginData","toSecureNoteData","toCardData","toIdentityData","toFieldData","toAttachmentData","toPasswordHistoryData","deviceType_1","eventType_1","EventService","getDefaultDateFilters","end","getMonth","getDate","setDate","start","toDateTimeLocalString","formatDateFilters","filterStart","filterEnd","isNaN","getTime","getEventInfo","ev","options","EventOptions","appInfo","getAppInfo","deviceType","getEventMessage","appIcon","appName","msg","EventType","User_LoggedIn","User_ChangedPassword","User_Updated2fa","User_Disabled2fa","User_Recovered2fa","User_FailedLogIn","User_FailedLogIn2fa","Cipher_Created","formatCipherId","Cipher_Updated","Cipher_Deleted","Cipher_AttachmentCreated","Cipher_AttachmentDeleted","Cipher_Shared","Cipher_UpdatedCollections","Collection_Created","formatCollectionId","Collection_Updated","Collection_Deleted","Group_Created","formatGroupId","Group_Updated","Group_Deleted","OrganizationUser_Invited","formatOrgUserId","OrganizationUser_Confirmed","OrganizationUser_Updated","OrganizationUser_Removed","OrganizationUser_UpdatedGroups","Organization_Updated","Organization_PurgedVault","Android","iOS","UWP","ChromeExtension","FirefoxExtension","OperaExtension","EdgeExtension","VivaldiExtension","SafariExtension","WindowsDesktop","MacOsDesktop","LinuxDesktop","ChromeBrowser","FirefoxBrowser","OperaBrowser","SafariBrowser","VivaldiBrowser","EdgeBrowser","IEBrowser","UnknownBrowser","shortId","getShortId","cipherInfo","makeAnchor","groupId","collectionId","organizationUserId","innerHTML","date","pad","getHours","getMinutes","num","norm","floor","abs","EventInfo","OrganizationUserType","authResult_1","deviceRequest_1","keysRequest_1","preloginRequest_1","tokenRequest_1","TwoFactorProviders","description","priority","premium","tokenService","appIdService","setCryptoKeys","selectedTwoFactorProviderType","logIn","makePreloginKey","hashedPassword","logInHelper","logInTwoFactor","twoFactorProvider","twoFactorToken","remember","logInComplete","logOut","callback","getSupportedTwoFactorProviders","providers","twoFactorProviders","supportsDuo","supportsU2f","getDefaultTwoFactorProvider","u2fSupported","providerType","providerPriority","provider","kdf","kdfIterations","postPrelogin","PreloginRequest","preloginResponse","e_1","statusCode","makeKey","getTwoFactorToken","storedTwoFactorToken","getAppId","appId","deviceRequest","DeviceRequest","TokenRequest","Remember","postIdentityToken","clearState","AuthResult","twoFactor","accessToken","twoFactorResponse","twoFactorProviders2","tokenResponse","setTwoFactorToken","setTokens","refreshToken","setInformation","getUserId","getEmail","setKey","setKeyHash","setEncKey","privateKey","makeKeyPair","keyPair","postAccountKeys","KeysRequest","e_2","setEncPrivateKey","GroupingsComponent","collectionService","folderService","storageService","onSearchTextChanged","searchText","searchPlaceholder","searchTextChanged","ciphers_component_1","CiphersComponent","searchService","cipherService","showAddNew","onAttachmentsClicked","onShareClicked","onCollectionsClicked","cipherType","selectAll","checkCipher","select","checked","selectCount","getSelected","getSelectedIds","share","deleteCipher","refresh","copy","typeI18nKey","aType","copyToClipboard","deleteWithServer","showFixOldAttachments","hasOldAttachments","auditService","totpService","passwordGenerationService","showRevisionDate","hasPasswordHistory","viewingPasswordHistory","passwordRevisionDisplayDate","cleanUp","totpUpdateCode","interval_1","getTimeInterval","totpTick","totpInterval","setInterval","toggleFavorite","launch","launchUri","generatePassword","confirmed","getOptions","premiumRequired","upgradeOrganization","viewHistory","clearInterval","getCode","totpCode","half","totpCodeFormatted","intervalSeconds","epoch","round","mod","totpSec","totpDash","totpLow","OrganizationUserStatusType","auth_service_1","two_factor_authenticator_component_1","two_factor_duo_component_1","two_factor_email_component_1","two_factor_recovery_component_1","two_factor_u2f_component_1","two_factor_yubikey_component_1","TwoFactorSetupComponent","filterProvider","getTwoFactorProviders","manage","openModal","authenticatorModalRef","TwoFactorAuthenticatorComponent","updateStatus","yubikeyModalRef","TwoFactorYubiKeyComponent","duoModalRef","TwoFactorDuoComponent","emailModalRef","TwoFactorEmailComponent","u2fModalRef","TwoFactorU2fComponent","recoveryCode","recoveryModalRef","TwoFactorRecoveryComponent","ref","ImportComponent","importService","format","successNavigate","setImportOptions","importOptions","importer","getImporter","fileEl","getElementById","files","fileContents","getFileContents","content","import","properties","navigate","getFormatInstructionTitle","results","featuredImportOptions","concat","regularImportOptions","file","reader","FileReader","readAsText","evt","pre","target","onerror","ExportComponent","exportService","saved","ReusedPasswordsReportComponent","getAllCiphers","allCiphers","ciphersWithPasswords","passwordUseMap","reusedPasswordCiphers","getAllDecrypted","encryptionType_1","encryptedStringOrType","iv","mac","encType","encryptionType","headerPieces","encPieces","EncryptionType","AesCbc128_HmacSha256_B64","AesCbc256_B64","AesCbc256_HmacSha256_B64","Rsa2048_OaepSha256_B64","Rsa2048_OaepSha1_B64","decryptedValue","containerService","bitwardenContainerService","getCryptoService","getOrgKey","orgKey","decryptToUtf8","UnsecuredWebsitesReportComponent","unsecuredCiphers","WeakPasswordsReportComponent","passwordStrengthMap","passwordStrengthCache","weakPasswordCiphers","hasUsername","cacheKey","userInput","atPosition","passwordStrength","score","scoreKey","ExposedPasswordsReportComponent","exposedPasswordMap","exposedPasswordCiphers","passwordLeaked","exposedCount","InactiveTwoFactorReportComponent","services","cipherDocs","load2fa","inactive2faCiphers_1","docs_1","fetch","Request","json","categoryName","responseJson","serviceName","category","service","tfa","SearchPipe","items","prop1","prop2","prop3","SelectionReadOnlyRequest","SelectionReadOnlyResponse","Id","ReadOnly","NotificationsService","SettingsService","FrontendLayoutComponent","version","getApplicationVersion","classList","add","remove","LoginComponent","authService","route","onSuccessfulLoginNavigate","goAfterLogIn","queryParamsSub","queryParams","qParams","save","plan","invite","loginRedirect","successRoute","two_factor_options_component_1","TwoFactorComponent","anotherMethod","twoFactorOptionsModal","TwoFactorOptionsComponent","onProviderSelected","selectedProviderType","onRecoverSelected","PasswordStrengthComponent","showText","scoreWidth","RegisterComponent","showCreateOrgMessage","showTerms","isSelfHost","KdfType","HintComponent","LockComponent","routerService","isAuthenticated","hasKey","verifyEmailRequest_1","VerifyEmailTokenComponent","fired","token","postAccountVerifyEmailToken","VerifyEmailRequest","refreshIdentityToken","organizationUserAcceptRequest_1","AcceptOrganizationComponent","OrganizationUserAcceptRequest","postOrganizationUserAccept","toast","orgName","organizationName","twoFactorRecoveryRequest_1","RecoverTwoFactorComponent","TwoFactorRecoveryRequest","postTwoFactorRecover","deleteRecoverRequest_1","RecoverDeleteComponent","DeleteRecoverRequest","postAccountRecoverDelete","verifyDeleteRecoverRequest_1","VerifyRecoverDeleteComponent","VerifyDeleteRecoverRequest","postAccountRecoverDeleteToken","NavbarComponent","selfHosted","getName","lock","FooterComponent","UserLayoutComponent","update_key_component_1","attachments_component_1","bulk_delete_component_1","bulk_move_component_1","bulk_share_component_1","collections_component_1","folder_add_edit_component_1","share_component_1","VaultComponent","changeDetectorRef","broadcasterService","ngZone","favorites","showVerifyEmail","showBrowserOutdated","showUpdateKey","showPremiumCallout","getEmailVerified","params","hasEncKey","groupingsComponent","organizationsComponent","selectedAll","ciphersComponent","selectedFavorites","filterFavorites","selectedType","filterCipherType","selectedFolder","selectedFolderId","filterFolder","selectedCollectionId","filterCollection","run","command","successfully","detectChanges","clearGroupingFilters","clearFilters","go","filterSearchText","editCipherAttachments","getOrganization","maxStorageGb","attachmentsModalRef","AttachmentsComponent","madeAttachmentChanges","onUploadedAttachment","onDeletedAttachment","onReuploadedAttachment","shareCipher","shareModalRef","ShareComponent","onSharedCipher","editCipherCollections","collectionsModalRef","CollectionsComponent","onSavedCollections","folderAddEditModalRef","FolderAddEditComponent","onSavedFolder","loadFolders","editFolder","onDeletedFolder","addCipher","editCipher","bulkDelete","selectedIds","bulkDeleteModalRef","BulkDeleteComponent","cipherIds","onDeleted","bulkShare","selectedCiphers","bulkShareModalRef","BulkShareComponent","onShared","bulkMove","bulkMoveModalRef","BulkMoveComponent","onMoved","updateKey","updateKeyModalRef","UpdateKeyComponent","relativeTo","replaceUrl","CipherWithIdRequest","FolderRequest","folder","UriMatchType","reupload","reuploadCipherAttachment","check","SettingsComponent","getPremium","deauthorize_sessions_component_1","delete_account_component_1","purge_vault_component_1","AccountComponent","deauthorizeSessions","deauthModalRef","DeauthorizeSessionsComponent","purgeVault","purgeModalRef","PurgeVaultComponent","deleteAccount","deleteModalRef","DeleteAccountComponent","postPurgeCiphers","OptionsComponent","lockService","lockOption","lockOptions","localeOptions","supportedTranslationLocales","locale","disableIcons","enableGravatars","startingLocale","setLockOption","location","reload","updateDomainsRequest_1","DomainRulesComponent","custom","getSettingsDomains","equivalentDomains","globalEquivalentDomains","domains","excluded","toggleExcluded","globalDomain","customize","index","UpdateDomainsRequest","excludedGlobalEquivalentDomains","d2","putSettingsDomains","indexTrackBy","updateTwoFactorDuoRequest_1","processResponse","UpdateTwoFactorDuoRequest","integrationKey","ikey","secretKey","skey","putTwoFactorOrganizationDuo","putTwoFactorDuo","RadioControlValueAccessor","ɵangular_packages_forms_forms_i","Injector","p1_0","parent","View_PaymentComponent_2","View_PaymentComponent_3","NgSelectOption","SelectControlValueAccessor","ngValue","ɵangular_packages_forms_forms_r","context","$implicit","PatternValidator","pattern","View_PaymentComponent_5","NgForOf","ngForOf","View_PaymentComponent_6","cvc","View_CalloutComponent_0","RenderType_CalloutComponent","View_PaymentComponent_1","View_PaymentComponent_4","View_PaymentComponent_7","View_PaymentComponent_8","PremiumComponent","premiumPrice","storageGbPrice","additionalStorage","fd","FormData","append","postAccountLicense","finalizePremium","paymentComponent","postPremium","additionalStorageTotal","UpdateLicenseComponent","onCanceled","postOrganizationLicenseUpdate","cancel","storageRequest_1","AdjustStorageComponent","interval","onAdjusted","storageAdjustment","StorageRequest","storageGbAdjustment","postAccountStorage","postOrganizationStorage","paymentRequest_1","paymentMethodType_1","AdjustPaymentComponent","paymentMethodType","PaymentMethodType","request_1","PaymentRequest","paymentToken","postAccountPayment","postOrganizationPayment","currentType","UserBillingComponent","firstLoaded","adjustStorageAdd","showAdjustStorage","showAdjustPayment","showUpdateLicense","getUserBilling","billing","reinstate","reinstatePromise","postReinstatePremium","cancelPromise","postCancelPremium","downloadLicense","licenseString","JSON","stringify","license","saveFile","updateLicense","closeUpdateLicense","adjustStorage","closeStorage","changePayment","closePayment","subscription","cancelled","cancelAtEndDate","upcomingInvoice","paymentSource","charges","storageGb","toFixed","storagePercentage","planType_1","organizationCreateRequest_1","CreateOrganizationComponent","ownedBusiness","premiumAccessAddon","storageGbPriceMonthly","additionalSeats","price","monthlyPrice","yearlyPrice","plans","free","basePrice","noAdditionalSeats","noPayment","families","annualBasePrice","baseSeats","annualPlanType","PlanType","FamiliesAnnually","canBuyPremiumAccessAddon","teams","monthlyBasePrice","seatPrice","annualSeatPrice","monthlySeatPrice","monthPlanType","TeamsMonthly","TeamsAnnually","enterprise","EnterpriseMonthly","EnterpriseAnnually","collectionCt","makeShareKey","shareKey","encrypt","postOrganizationLicense","OrganizationCreateRequest","collectionName","billingEmail","planType","Free","businessName","additionalStorageGb","postOrganization","finalize","changedPlan","changedOwnedBusiness","annual","seatTotal","baseTotal","premiumAccessTotal","ToolsComponent","password_generator_component_1","password_generator_history_component_1","PasswordGeneratorComponent","history","historyModalRef","PasswordGeneratorHistoryComponent","BreachReportComponent","breachedAccounts","checkedUsername","cipher_1","cipherCreateRequest_1","cipherRequest_1","originalCipher","loadCollections","isAdmin","loadCipher","getCipherAdmin","encryptCipher","saveCipher","editMode","putCipherAdmin","CipherCreateRequest","postCipherAdmin","deleteCipherAdmin","OrganizationLayoutComponent","collectionData_1","collection_1","getCollections","collectionDomains","decryptMany","unassignedCollection","getAllNested","nestedCollections","collapse","grouping","isCollapsed","onEventsClicked","accessEvents","useEvents","getAllFromApiForOrganization","applyFilter","searchPending","filteredCiphers","searchCiphersBasic","entity_events_component_1","viewEvents","eventsModalRef","EntityEventsComponent","entityId","showUser","entity","eventService","orgUsersUserIdMap","orgUsersIdMap","defaultDates","getOrganizationUsers","loadEvents","clearExisting","refreshPromise","morePromise","dates","getEventsOrganizationUser","continuationToken","getEventsCipher","actingUserId","eventInfo","user","userName","userEmail","ip","ipAddress","accessReports","getExportData","getOrganizationExport","getFileName","ManageComponent","accessGroups","useGroups","collection_add_edit_component_1","entity_users_component_1","getUserCollections","addEditModalRef","CollectionAddEditComponent","onSavedCollection","onDeletedCollection","removeCollection","deleteCollection","users","usersModalRef","EntityUsersComponent","entityName","onEditedUsers","organizationUserStatusType_1","organizationUserType_1","selectionReadOnlyRequest_1","organizationUserType","organizationUserStatusType","showSelected","selectedCount","allUsers","loadUsers","getGroupUsers","getCollectionUsers","accessAll","selectedChanged","filterSelected","selections","putGroupUsers","putCollectionUsers","EventsComponent","getEventsOrganization","group_add_edit_component_1","GroupsComponent","getGroups","groups","group","GroupAddEditComponent","onSavedGroup","onDeletedGroup","removeGroup","deleteGroup","organizationUserConfirmRequest_1","user_add_edit_component_1","user_confirm_component_1","user_groups_component_1","PeopleComponent","statusMap","Confirmed","Invited","Accepted","confirmedCount","acceptedCount","UserAddEditComponent","onSavedUser","onDeletedUser","removeUser","groupsModalRef","UserGroupsComponent","deleteOrganizationUser","reinvite","postOrganizationUserReinvite","confirm","updateUser","mapIndex","autoConfirm","doConfirmation","UserConfirmComponent","confirmModalRef","onConfirmedUser","getUserPublicKey","publicKeyResponse","publicKey","log","getFingerprint","rsaEncrypt","OrganizationUserConfirmRequest","postOrganizationUserConfirm","access2fa","use2fa","organizationUpdateRequest_1","delete_organization_component_1","OrganizationUpdateRequest","putOrganization","deleteOrganization","DeleteOrganizationComponent","duoComp","getTwoFactorOrganizationProviders","verifyBankRequest_1","OrganizationBillingComponent","adjustSeatsAdd","showAdjustSeats","getOrganizationBilling","postOrganizationReinstate","postOrganizationCancel","changePlan","installationId","prompt","licensePromise","getOrganizationLicense","verifyBank","VerifyBankRequest","amount1","verifyAmount1","amount2","verifyAmount2","verifyBankPromise","postOrganizationVerifyBank","adjustSeats","closeSeats","viewInvoice","charge","getToken","apiBaseUrl","invoiceId","expiration","billingInterval","webpackEmptyAsyncContext","req","keys","_swal","angular2_toaster_1","swal","AppComponent","angulartics2GoogleAnalytics","settingsService","notificationsService","toasterConfig","ToasterConfig","showCloseButton","mouseoverTimerStop","animation","limit","lastActivity","idleTimer","isIdle","runOutsideAngular","onmousemove","recordActivity","onmousedown","ontouchstart","onclick","onscroll","onkeypress","updateConnection","expired","_i","modals_1","setLastSync","clearToken","clearKeys","clearIndex","now","idleStateChanged","clearTimeout","message_1","sanitize","SecurityContext","HTML","bodyOutputType","BodyOutputType","TrustedHtml","trustedHtml","disconnectFromInactivity","reconnectFromActivity","TwoFactorEmailRequest","encryptedPrivateKey","NgStyle","ngStyle","View_PasswordStrengthComponent_1","View_AvatarComponent_0","RenderType_AvatarComponent","DomSanitizer","i9","klass","bg-secondary-alt","i10","RouterLinkActive","Router","ChangeDetectorRef","routerLinkActive","ɵqud","links","linksWithHrefs","View_NavbarComponent_1","VerifyEmailComponent","postAccountVerifyEmail","ɵpad","View_OrganizationsComponent_6","View_OrganizationsComponent_5","View_OrganizationsComponent_4","View_OrganizationsComponent_7","View_OrganizationsComponent_2","View_OrganizationsComponent_3","i7","View_OrganizationsComponent_16","i8","View_OrganizationsComponent_15","View_OrganizationsComponent_13","View_OrganizationsComponent_14","View_OrganizationsComponent_9","View_OrganizationsComponent_10","View_OrganizationsComponent_11","View_OrganizationsComponent_12","View_OrganizationsComponent_1","View_OrganizationsComponent_8","cipherWithIdRequest_1","folderWithIdRequest_1","updateKeyRequest_1","makeRequest","postAccountKey","getKey","makeEncKey","encKey","getPrivateKey","encPrivateKey","UpdateKeyRequest","FolderWithIdRequest","deleteManyWithServer","moveManyWithServer","nonShareableCount","shareableCiphers","writeableCollections","allCollections","filterCollections","checkedCollectionIds","shareManyWithServer","updateProfileRequest_1","ProfileComponent","getProfile","profile","fingerprint","UpdateProfileRequest","masterPasswordHint","putProfile","emailRequest_1","emailTokenRequest_1","ChangeEmailComponent","tokenSent","newEmail","EmailTokenRequest","postEmailToken","EmailRequest","getKdf","getKdfIterations","newKey","newMasterPasswordHash","remakeEncKey","newEncKey","postEmail","reset","passwordRequest_1","ChangePasswordComponent","rotateEncKey","currentMasterPassword","newMasterPassword","confirmNewMasterPassword","strengthResult","getPasswordStrengthUserInput","PasswordRequest","postPassword","updatePasswordStrength","masterPasswordStrengthTimeout","masterPasswordScore","rotateEncKeyClicked","kdfRequest_1","kdfType_1","ChangeKdfComponent","PBKDF2_SHA256","kdfOptions","KdfRequest","postAccountKdf","postSecurityStamp","updateTwoFactorAuthenticatorRequest_1","qrScript","UpdateTwoFactorAuthenticatorRequest","putTwoFactorAuthenticator","QRious","element","twoFactorEmailRequest_1","updateTwoFactorEmailRequest_1","sendEmail","emailPromise","postTwoFactorEmailSetup","sentEmail","UpdateTwoFactorEmailRequest","putTwoFactorEmail","print","w","open","write","formatString","updateTwoFactorU2fDeleteRequest_1","updateTwoFactorU2fRequest_1","keyIdAvailable","keysConfiguredCount","u2fScript","u2fResponse","UpdateTwoFactorU2fRequest","deviceResponse","putTwoFactorU2f","removePromise","UpdateTwoFactorU2fDeleteRequest","deleteTwoFactorU2f","readKey","challengePromise","getTwoFactorU2fChallenge","challenge","readDevice","u2fChallenge","resetU2f","u2f","register","u2fListening","errorCode","u2fError","listening","k","this_1","configured","compromised","updateTwoFactorYubioOtpRequest_1","nfc","UpdateTwoFactorYubioOtpRequest","key1","key2","key3","key4","key5","putTwoFactorYubiKey","disablePromise","existingKey","padRight","max","adjustedStorageTotal","ɵangular_packages_forms_forms_bd","View_AdjustStorageComponent_1","View_PaymentComponent_0","RenderType_PaymentComponent","View_AdjustPaymentComponent_1","i11","View_AdjustPaymentComponent_2","canChange","ColorPasswordPipe","colorizedPassword","isSpecial","sizeName","loginUriData_1","LoginUriData","attachmentView_1","symmetricCryptoKey_1","AttachmentView","view","decryptToBytes","decValue","SymmetricCryptoKey","macKey","keyB64","encKeyB64","macKeyB64","cardView_1","identityView_1","loginUri_1","LoginUri","toLoginUriData","passwordHistoryView_1","PasswordHistoryView","saveCipherAttachment","saveAttachmentWithServer","cipherDomain","deleteCipherAttachment","attachmentId","deleteCipherAttachmentAdmin","cipherCollectionsRequest_1","loadCipherCollections","saveCollections","CipherCollectionsRequest","putCipherCollectionsAdmin","collectionRequest_1","groupsResponse","getCollectionDetails","g","CollectionRequest","putCollection","postCollection","deletePromise","groupRequest_1","access","getGroupDetails","externalId","GroupRequest","putGroup","postGroup","organizationUserInviteRequest_1","organizationUserUpdateRequest_1","User","getOrganizationUser","OrganizationUserUpdateRequest","putOrganizationUser","OrganizationUserInviteRequest","emails","postOrganizationUserInvite","dontAskAgain","organizationUserUpdateGroupsRequest_1","getOrganizationUserGroups","userGroups","ug","OrganizationUserUpdateGroupsRequest","groupIds","putOrganizationUserGroups","seatRequest_1","AdjustSeatsComponent","seatAdjustment","SeatRequest","postOrganizationSeat","BoxRowDirective","elRef","formEls","formEl","addEventListener","contains","tagName","inputEl","click","TrueFalseValueDirective","elementRef","trueValue","falseValue","propagateChange","_","onHostChange","writeValue","setProperty","registerOnChange","fn","registerOnTouched","setDisabledState","isDisabled","billingResponse_1","cipherResponse_1","collectionResponse_1","domainsResponse_1","errorResponse_1","eventResponse_1","folderResponse_1","groupResponse_1","identityTokenResponse_1","identityTwoFactorResponse_1","listResponse_1","organizationBillingResponse_1","organizationResponse_1","organizationUserResponse_1","preloginResponse_1","profileResponse_1","selectionReadOnlyResponse_1","syncResponse_1","twoFactorAuthenticatorResponse_1","twoFactorDuoResponse_1","twoFactorEmailResponse_1","twoFactorProviderResponse_1","twoFactorRescoverResponse_1","twoFactorU2fResponse_1","twoFactorYubiKeyResponse_1","userKeyResponse_1","logoutCallback","urlsSet","isWebClient","isDesktopClient","usingBaseUrl","device","getDevice","setUrls","urls","base","identityBaseUrl","api","qsStringify","toIdentityToken","identityClientId","credentials","getCredentials","cache","headers","Headers","Content-Type","Accept","Device-Type","typeHeader","IdentityTokenResponse","TwoFactorProviders2","clearTwoFactorToken","IdentityTwoFactorResponse","ErrorResponse","doRefreshToken","ProfileResponse","BillingResponse","PreloginResponse","getAccountRevisionDate","postPasswordHint","postRegister","getFolder","FolderResponse","postFolder","putFolder","deleteFolder","getCipher","CipherResponse","getCiphersOrganization","ListResponse","postCipher","postCipherCreate","putCipher","deleteManyCiphers","putMoveCiphers","putShareCipher","putShareCiphers","putCipherCollections","path","postImportCiphers","postImportOrganizationCiphers","postCipherAttachment","postCipherAttachmentAdmin","postShareCipherAttachment","CollectionGroupDetailsResponse","CollectionResponse","dr","deleteCollectionUser","GroupDetailsResponse","GroupResponse","deleteGroupUser","OrganizationUserDetailsResponse","OrganizationUserUserDetailsResponse","getSync","SyncResponse","postImportDirectory","DomainsResponse","TwoFactorProviderResponse","TwoFactorAuthenticatorResponse","TwoFactorEmailResponse","TwoFactorDuoResponse","TwoFactorYubiKeyResponse","TwoFactorU2fResponse","ChallengeResponse","TwoFactorRecoverResponse","postTwoFactorEmail","OrganizationResponse","OrganizationBillingResponse","getEvents","addEventParameters","EventResponse","UserKeyResponse","getActiveBearerToken","tokenNeedsRefresh","hasResponse","requestInit","authHeader","handleError","tokenError","getRefreshToken","decodedToken","decodeToken","grant_type","client_id","refresh_token","storageName","StorageName","StorageGb","MaxStorageGb","PaymentSource","BillingSourceResponse","Subscription","BillingSubscriptionResponse","UpcomingInvoice","BillingInvoiceResponse","Charges","BillingChargeResponse","License","Expiration","Type","cardBrand","CardBrand","Description","needsVerification","NeedsVerification","trialEndDate","TrialStartDate","TrialEndDate","periodStartDate","PeriodStartDate","periodEndDate","PeriodEndDate","cancelledDate","CancelledDate","CancelAtEndDate","Status","Cancelled","Items","BillingSubscriptionItemResponse","Name","amount","Amount","quantity","Quantity","Interval","createdDate","CreatedDate","failureMessage","FailureMessage","refunded","Refunded","partiallyRefunded","PartiallyRefunded","refundedAmount","RefundedAmount","InvoiceId","attachmentResponse_1","passwordHistoryResponse_1","cardApi_1","fieldApi_1","identityApi_1","loginApi_1","secureNoteApi_1","OrganizationId","FolderId","Notes","Favorite","Edit","OrganizationUseTotp","RevisionDate","LoginApi","CardApi","IdentityApi","SecureNoteApi","Fields","FieldApi","Attachments","AttachmentResponse","PasswordHistory","PasswordHistoryResponse","CollectionIds","CollectionDetailsResponse","Groups","globalDomainResponse_1","EquivalentDomains","GlobalEquivalentDomains","GlobalDomainResponse","BusinessName","businessAddress1","BusinessAddress1","businessAddress2","BusinessAddress2","businessAddress3","BusinessAddress3","businessCountry","BusinessCountry","businessTaxNumber","BusinessTaxNumber","BillingEmail","Plan","seats","Seats","maxCollections","MaxCollections","UseGroups","useDirectory","UseDirectory","UseEvents","UseTotp","Use2fa","profileOrganizationResponse_1","emailVerified","EmailVerified","MasterPasswordHint","Premium","culture","Culture","twoFactorEnabled","TwoFactorEnabled","Key","PrivateKey","securityStamp","SecurityStamp","Organizations","ProfileOrganizationResponse","AppIdService","makeAndGetAppId","getAnonymousAppId","existingId","guid","breachAccountResponse_1","hashStart","hashEnding","leakedHashes","v","BreachAccountResponse","uriMatchType_1","cipherBulkDeleteRequest_1","cipherBulkMoveRequest_1","cipherBulkShareRequest_1","cipherShareRequest_1","sequentialize_1","DomainMatchBlacklist","Set","_decryptedCipherCache","indexCiphers","clearCache","decryptedCipherCache","existingCipher","hasFields","existingHiddenFields","Hidden","hiddenFields_1","ef","matchedField","encryptObjProperty","encryptCipherData","encryptFields","encryptPasswordHistories","encryptAttachments","attachmentsModel","encAttachments","fieldsModel","encFields","encryptField","encField","fieldModel","Boolean","phModels","encPhs","encryptPasswordHistory","encPh","phModel","getAll","decCiphers","getLocaleSortingFunction","getAllDecryptedForGrouping","groupingId","getAllDecryptedForUrl","includeOtherTypes","eqDomainsPromise","getEquivalentDomains","eqDomains","matches","eqDomain","matchingDomains","domainUrlHost","Host","urlHost","Exact","StartsWith","RegularExpression","Never","decCiphers_1","promises_1","getLastUsedForUrl","sortCiphersByLastUsed","updateLastUsedDate","ciphersLocalData","cached","saveNeverDomain","saveWithServer","upsert","shareWithServer","attachmentPromises","shareAttachmentWithServer","encCipher","CipherShareRequest","encCiphers","ciphers_1","CipherBulkShareRequest","unencryptedFile","admin","readAsArrayBuffer","saveAttachmentRawWithServer","cData","filename","encFileName","dataEncKey","encryptToBytes","encData","blob","Blob","filepath","contentType","getSingleMessage","saveCollectionsWithServer","ids","CipherBulkMoveRequest","CipherBulkDeleteRequest","deleteAttachment","deleteAttachmentWithServer","e_3","aLastUsed","bLastUsed","sortCiphersByLastUsedThenName","aName","bName","attachmentView","attachmentResponse","arrayBuffer","buf","decryptFromBytes","decBuf","e_4","theObj","modelProp","__decorate","sequentialize","ɵ0","propertyKey","descriptor","originalMethod","caches","args","arguments","argsCacheKey","getCache","serviceUtils_1","decryptedCollectionCache","decCollections","nodes","collectionCopy","ServiceUtils","nestedTraverse","getNested","getTreeNodeObject","treeNode_1","nodeTree","partIndex","delimiter","partName","node","TreeNode","children","newPartName","ContainerService","attachToWindow","attachToGlobal","bigInt","encryptedObject_1","wordlist_1","ɵ1","secureStorageService","keyHash","setOrgKeys","orgKeys","getKeyHash","getEncKey","encKeyCipher","decEncKey","stretchKey","getPublicKey","rsaExtractPublicKey","keyFingerprint","hkdfExpand","userFingerprint","hashPhrase","getOrgKeys","encOrgKeys","rsaDecrypt","clearKey","legacyEtmKey","clearKeyHash","clearEncKey","memoryOnly","clearKeyPair","clearOrgKeys","toggleKey","option","salt","pbkdf2","randomBytes","rsaGenerateKeyPair","publicB64","privateEnc","getKeyForEncryption","theKey","buildEncKey","plainValue","plainBuf","aesEncrypt","encObj","encValue","macLen","encBytes","cipherString","aesDecryptToBytes","decipher","aesDecryptToUtf8","encBuf","ctBytes","ivBytes","macBytes","randomNumber","min","rval","range","bitsNeeded","ceil","log2","bytesNeeded","mask","pow","byteArray","EncryptedObject","macData","hmac","keyForEnc","resolveLegacyKey","fastParams","aesDecryptFastParameters","hmacFast","computedMac","compareFast","aesDecryptFast","aesDecrypt","Rsa2048_OaepSha256_HmacSha256_B64","Rsa2048_OaepSha1_HmacSha256_B64","alg","prk","info","hashLen","okm","previousT","minimumEntropy","entropyPerWord","EEFLongWordList","numWords","hashArr","entropyAvailable","phrase","hashNumber","fromArray","remainder","divide","encKeyEnc","environmentUrls_1","getWebVaultUrl","webVaultUrl","setUrlsFromStorage","urlsObj","icons","notifications","webVault","envUrls","EnvironmentUrls","apiUrl","identityUrl","notificationsUrl","formatUrl","folderData_1","folder_1","folderRequest_1","decryptedFolderCache","Folder","decFolders","noneFolder","folderCopy","FolderData","cId","updates","systemLanguage","localesDirectory","getLocalesJson","defaultMessages","localeMessages","translationLocale","Intl","Collator","numeric","sensitivity","loadMessages","translate","messagesObj","formattedLocale","locales","placeholders","placeProp","replaceToken","replaceContent","lockedCallback","checkOnInterval","checkLock","isViewOpen","lockTimeout","lastActive","lockOptionSeconds","zxcvbn","generatedPasswordHistory_1","DefaultOptions","ambiguous","minNumber","uppercase","minUppercase","lowercase","minLowercase","special","minSpecial","wordSeparator","assign","generatePassphrase","minLength","positions","shuffleArray","allCharSet","lowercaseCharSet","uppercaseCharSet","numberCharSet","specialCharSet","positionChars","randomCharIndex","charAt","listLength","wordList","wordIndex","optionsCache","saveOptions","getHistory","encrypted","decryptHistory","addHistory","currentHistory","matchesPrevious","unshift","GeneratedPasswordHistory","pop","encryptHistory","newHistory","userInputs","globalUserInputs","finalUserInputs","decrypted","array","settingsCache","getSettingsKey","setEquivalentDomains","setSettingsKey","getSettings","settings","purge","organizationData_1","syncInProgress","getLastSync","lastSync","toJSON","forceSync","syncStarted","needsSyncing","syncCompleted","needsSyncResult","needsSync","syncProfile","syncFolders","syncCollections","syncCiphers","syncSettings","syncUpsertFolder","notification","isEdit","localFolder","remoteFolder","syncDeleteFolder","syncUpsertCipher","shouldUpdate","localCipher","checkCollections","remoteCipher","syncDeleteCipher","getSecurityStamp","stamp","setSecurityStamp","OrganizationData","replaceOrganizations","setToken","setRefreshToken","decoded","getTokenExpirationDate","setUTCSeconds","tokenSecondsRemaining","offsetSeconds","msRemaining","valueOf","minutes","sub","email_verified","getIssuer","iss","B32Chars","SteamChars","period","digits","keyB32","isOtpAuth","isSteamAuth","digitParams","periodParam","algParam","timeHex","leftPad","decToHex","timeBytes","keyBytes","b32ToBytes","sign","offset","otp","fullCode","trunc","isAutoCopyEnabled","b32ToHex","cleanedInput","bits","hex","byteIndex","chunk","signature","organization_1","clearOrganizations","usersGetPremium","Organization","CipherWithIds","build","CollectionWithId","FolderWithId","NotificationType","AuthGuardService","canActivate","OrganizationGuardService","isOwner","OrganizationTypeGuardService","allowedTypes","UnauthGuardService","enableProdMode","__NgCli_bootstrap_2","platformBrowser","bootstrapModuleFactory","__NgCli_bootstrap_1","AppModuleNgFactory","preserveWhitespaces","common_1","cs_1","da_1","de_1","es_1","et_1","fr_1","it_1","ja_1","nb_1","nl_1","pl_1","pt_1","pt_PT_1","ru_1","sk_1","sv_1","uk_1","zh_Hans_1","zh_Hant_1","registerLocaleData","AppModule","RouterOutlet","ChildrenOutletContexts","ComponentFactoryResolver","fa-eye","fa-eye-slash","CheckboxControlValueAccessor","showPassword","rememberEmail","twoFactorRoute","onSuccessfulLoginTwoFactorNavigate","onSuccessfulLogin","togglePassword","twoFactorEmail","View_TwoFactorComponent_5","View_TwoFactorComponent_2","View_TwoFactorComponent_3","appAutofocus","View_TwoFactorComponent_4","View_TwoFactorComponent_8","View_TwoFactorComponent_9","u2fReady","col-9","View_TwoFactorComponent_1","View_TwoFactorComponent_6","View_TwoFactorComponent_7","View_TwoFactorComponent_10","View_TwoFactorComponent_11","View_TwoFactorComponent_12","View_TwoFactorComponent_13","View_TwoFactorComponent_14","View_TwoFactorComponent_15","choose","recover","backdrop","className","DuoWebSDK","u2f_1","loginRoute","customWebVaultUrl","cleanupU2f","Challenge","challenges","Challenges","keyHandle","iframe","sig_request","Signature","submit_callback","sig","stop","doToast","cleanup","getDeviceString","identifier","pushToken","clientId","scope","deviceIdentifier","deviceName","twoFactorRemember","successCallback","errorCallback","infoCallback","parseFunction","parseMessage","connectorLink","base64Encode","sendMessage","contentWindow","postMessage","removeEventListener","validMessage","origin","View_RegisterComponent_1","View_PasswordStrengthComponent_0","RenderType_PasswordStrengthComponent","i12","View_RegisterComponent_2","confirmMasterPassword","hint","registerRequest_1","useLowerKdf","isEdge","isIE","RegisterRequest","orgInvite","confirmField","passwordHintRequest_1","PasswordHintRequest","onSuccessfulSubmit","storedKeyHash","View_AcceptOrganizationComponent_1","View_AcceptOrganizationComponent_2","View_NavbarComponent_0","RenderType_NavbarComponent","View_FooterComponent_0","RenderType_FooterComponent","View_VerifyEmailComponent_0","RenderType_VerifyEmailComponent","Angulartics2","ToasterService","View_GroupingsComponent_0","RenderType_GroupingsComponent","i13","i14","i15","onAllClicked","onFavoritesClicked","onCipherTypeClicked","onFolderClicked","onAddFolder","onEditFolder","onCollectionClicked","i16","i17","View_VaultComponent_1","i18","i19","View_CiphersComponent_0","RenderType_CiphersComponent","i20","i21","i22","i23","onCipherClicked","onAddCipher","View_VaultComponent_2","View_VaultComponent_3","View_VaultComponent_4","View_VaultComponent_5","i24","View_OrganizationsComponent_0","RenderType_OrganizationsComponent","i25","i26","View_VaultComponent_6","View_VaultComponent_7","View_VaultComponent_8","View_VaultComponent_9","View_VaultComponent_10","View_VaultComponent_11","View_VaultComponent_12","View_VaultComponent_13","View_VaultComponent_14","active","View_GroupingsComponent_9","NgTemplateOutlet","ngTemplateOutletContext","ngTemplateOutlet","fa-caret-right","fa-caret-down","View_GroupingsComponent_7","View_GroupingsComponent_8","View_GroupingsComponent_6","View_GroupingsComponent_5","View_GroupingsComponent_10","nestedFolders","View_GroupingsComponent_15","View_GroupingsComponent_14","View_GroupingsComponent_13","View_GroupingsComponent_12","View_GroupingsComponent_16","View_GroupingsComponent_4","View_GroupingsComponent_11","showFolders","showCollections","View_GroupingsComponent_1","View_GroupingsComponent_2","View_GroupingsComponent_3","showFavorites","setLoaded","collapsedGroupings","clearSelections","selectFavorites","selectType","selectFolder","selectCollection","idPrefix","View_CiphersComponent_7","View_CiphersComponent_4","View_IconComponent_0","RenderType_IconComponent","View_CiphersComponent_5","View_CiphersComponent_6","View_CiphersComponent_8","View_CiphersComponent_9","View_CiphersComponent_10","View_CiphersComponent_11","View_CiphersComponent_3","View_CiphersComponent_15","View_CiphersComponent_13","View_CiphersComponent_14","View_CiphersComponent_2","View_CiphersComponent_12","View_CiphersComponent_1","FallbackSrcDirective","onError","appFallbackSrc","activeCipherId","onCipherRightClicked","onAddCipherOptions","searchTimeout","searchCiphers","rightClickCipher","addCipherOptions","onCancelled","onEditAttachments","onShareCipher","onEditCollections","onGeneratePassword","showCardCode","fieldType","addFieldType","ownershipOptions","typeOptions","cardBrandOptions","identityTitleOptions","addFieldTypeOptions","uriMatchOptions","myEmail","organizationChanged","addUri","removeUri","addField","removeField","editCollections","toggleCardCode","toggleFieldValue","showValue","toggleUriOptions","loginUriMatchChanged","checkPassword","checkPasswordPromise","deletePromises","reuploadPromises","hasUpdatedKey","canAccessAttachments","download","downloading","foundAttachment","a2","cipherView","View_SettingsComponent_1","View_SettingsComponent_2","View_ProfileComponent_0","RenderType_ProfileComponent","View_ChangeEmailComponent_0","RenderType_ChangeEmailComponent","View_ChangePasswordComponent_0","RenderType_ChangePasswordComponent","View_ChangeKdfComponent_0","RenderType_ChangeKdfComponent","View_AccountComponent_1","View_AccountComponent_2","View_AccountComponent_3","View_ProfileComponent_3","View_ProfileComponent_1","View_ProfileComponent_2","View_ChangeEmailComponent_1","View_ChangeEmailComponent_2","View_ChangeEmailComponent_3","View_ChangeEmailComponent_4","View_ChangeKdfComponent_1","View_OptionsComponent_1","View_OptionsComponent_2","View_DomainRulesComponent_3","ngForTrackBy","table-list-strike","View_DomainRulesComponent_7","View_DomainRulesComponent_8","View_DomainRulesComponent_6","View_DomainRulesComponent_1","View_DomainRulesComponent_2","View_DomainRulesComponent_4","View_DomainRulesComponent_5","View_TwoFactorSetupComponent_6","View_TwoFactorSetupComponent_7","View_TwoFactorSetupComponent_1","View_TwoFactorSetupComponent_2","View_TwoFactorSetupComponent_3","mt-5","View_TwoFactorSetupComponent_4","View_TwoFactorSetupComponent_5","View_TwoFactorSetupComponent_8","View_TwoFactorSetupComponent_9","View_TwoFactorSetupComponent_10","View_TwoFactorSetupComponent_11","View_TwoFactorSetupComponent_12","View_TwoFactorSetupComponent_13","total","View_PremiumComponent_1","mb-0","View_PremiumComponent_2","View_PremiumComponent_3","View_PremiumComponent_4","View_UserBillingComponent_7","View_UserBillingComponent_8","View_UserBillingComponent_12","View_UserBillingComponent_10","View_UserBillingComponent_11","subscriptionMarkedForCancel","nextInvoice","View_UpdateLicenseComponent_0","RenderType_UpdateLicenseComponent","View_UserBillingComponent_14","View_AdjustStorageComponent_0","RenderType_AdjustStorageComponent","View_UserBillingComponent_19","View_UserBillingComponent_20","fa-university","fa-paypal text-primary","BankAccount","PayPal","View_AdjustPaymentComponent_0","RenderType_AdjustPaymentComponent","text-strike","View_UserBillingComponent_27","View_UserBillingComponent_16","View_UserBillingComponent_17","View_UserBillingComponent_18","View_UserBillingComponent_21","View_UserBillingComponent_22","View_UserBillingComponent_23","View_UserBillingComponent_24","View_UserBillingComponent_25","View_UserBillingComponent_26","storageProgressWidth","View_UserBillingComponent_4","View_UserBillingComponent_5","View_UserBillingComponent_6","View_UserBillingComponent_9","View_UserBillingComponent_13","View_UserBillingComponent_15","View_UserBillingComponent_1","View_UserBillingComponent_2","View_UserBillingComponent_3","View_CreateOrganizationComponent_12","View_CreateOrganizationComponent_13","View_CreateOrganizationComponent_18","View_CreateOrganizationComponent_19","View_CreateOrganizationComponent_16","View_CreateOrganizationComponent_17","View_CreateOrganizationComponent_7","View_CreateOrganizationComponent_8","View_CreateOrganizationComponent_9","View_CreateOrganizationComponent_10","View_CreateOrganizationComponent_11","View_CreateOrganizationComponent_14","View_CreateOrganizationComponent_15","View_CreateOrganizationComponent_3","View_CreateOrganizationComponent_4","View_CreateOrganizationComponent_5","View_CreateOrganizationComponent_6","mt-4","View_CreateOrganizationComponent_1","View_CreateOrganizationComponent_2","View_ToolsComponent_1","View_ToolsComponent_2","View_ImportComponent_3","View_ImportComponent_18","View_ImportComponent_5","View_ImportComponent_6","View_ImportComponent_7","View_ImportComponent_8","View_ImportComponent_9","View_ImportComponent_10","View_ImportComponent_11","View_ImportComponent_12","View_ImportComponent_13","View_ImportComponent_14","View_ImportComponent_15","View_ImportComponent_16","View_ImportComponent_17","View_ImportComponent_19","View_ImportComponent_20","View_ImportComponent_21","View_ImportComponent_22","View_ImportComponent_23","View_ImportComponent_24","View_ImportComponent_25","View_ImportComponent_26","View_ImportComponent_27","View_ImportComponent_28","View_ImportComponent_29","View_ImportComponent_30","View_ImportComponent_31","View_ImportComponent_32","View_ImportComponent_33","View_ImportComponent_34","View_ImportComponent_35","View_ImportComponent_36","View_ImportComponent_37","View_ImportComponent_38","View_ImportComponent_39","View_ImportComponent_40","View_ImportComponent_41","View_ImportComponent_1","View_ImportComponent_2","View_ImportComponent_4","onSaved","downloadFile","getExport","csv","MaxLengthValidator","maxlength","avoidAmbiguous","View_PasswordGeneratorComponent_1","View_PasswordGeneratorComponent_2","View_PasswordGeneratorComponent_3","showSelect","onSelected","sliderChanged","sliderInput","normalizeOptions","regenerate","copyOptions","toggleOptions","View_BreachReportComponent_8","dataClasses","logoPath","pwnCount","breachDate","addedDate","View_BreachReportComponent_7","View_BreachReportComponent_4","View_BreachReportComponent_5","View_BreachReportComponent_6","View_BreachReportComponent_2","View_BreachReportComponent_3","View_BreachReportComponent_1","View_ReusedPasswordsReportComponent_7","View_ReusedPasswordsReportComponent_8","View_ReusedPasswordsReportComponent_6","View_ReusedPasswordsReportComponent_4","View_ReusedPasswordsReportComponent_5","View_ReusedPasswordsReportComponent_1","View_ReusedPasswordsReportComponent_2","View_ReusedPasswordsReportComponent_3","View_ReusedPasswordsReportComponent_9","View_UnsecuredWebsitesReportComponent_7","View_UnsecuredWebsitesReportComponent_8","View_UnsecuredWebsitesReportComponent_6","View_UnsecuredWebsitesReportComponent_4","View_UnsecuredWebsitesReportComponent_5","View_UnsecuredWebsitesReportComponent_1","View_UnsecuredWebsitesReportComponent_2","View_UnsecuredWebsitesReportComponent_3","View_UnsecuredWebsitesReportComponent_9","View_WeakPasswordsReportComponent_7","View_WeakPasswordsReportComponent_8","View_WeakPasswordsReportComponent_6","View_WeakPasswordsReportComponent_4","View_WeakPasswordsReportComponent_5","View_WeakPasswordsReportComponent_1","View_WeakPasswordsReportComponent_2","View_WeakPasswordsReportComponent_3","View_WeakPasswordsReportComponent_9","View_ExposedPasswordsReportComponent_5","View_ExposedPasswordsReportComponent_6","View_ExposedPasswordsReportComponent_4","View_ExposedPasswordsReportComponent_2","View_ExposedPasswordsReportComponent_3","View_ExposedPasswordsReportComponent_1","View_ExposedPasswordsReportComponent_7","View_InactiveTwoFactorReportComponent_7","View_InactiveTwoFactorReportComponent_8","View_InactiveTwoFactorReportComponent_9","View_InactiveTwoFactorReportComponent_6","View_InactiveTwoFactorReportComponent_4","View_InactiveTwoFactorReportComponent_5","View_InactiveTwoFactorReportComponent_1","View_InactiveTwoFactorReportComponent_2","View_InactiveTwoFactorReportComponent_3","View_InactiveTwoFactorReportComponent_10","View_OrganizationLayoutComponent_4","View_OrganizationLayoutComponent_5","View_OrganizationLayoutComponent_2","View_OrganizationLayoutComponent_3","isManager","View_OrganizationLayoutComponent_1","View_ManageComponent_2","View_ManageComponent_3","View_ManageComponent_4","View_ManageComponent_1","View_CollectionsComponent_5","View_CollectionsComponent_3","View_CollectionsComponent_4","View_CollectionsComponent_1","View_CollectionsComponent_2","View_CollectionsComponent_6","View_CollectionsComponent_7","View_EventsComponent_5","View_EventsComponent_3","View_EventsComponent_4","View_EventsComponent_6","fa-spin","View_EventsComponent_1","View_EventsComponent_2","View_GroupsComponent_5","View_GroupsComponent_3","View_GroupsComponent_4","View_GroupsComponent_1","View_GroupsComponent_2","View_GroupsComponent_6","View_GroupsComponent_7","invitedCount","View_PeopleComponent_9","View_PeopleComponent_10","View_PeopleComponent_11","View_PeopleComponent_12","View_PeopleComponent_13","View_PeopleComponent_14","View_PeopleComponent_15","View_PeopleComponent_16","View_PeopleComponent_17","View_PeopleComponent_18","View_PeopleComponent_19","View_PeopleComponent_20","Owner","Admin","Manager","View_PeopleComponent_7","View_PeopleComponent_8","showConfirmUsers","View_PeopleComponent_5","View_PeopleComponent_6","View_PeopleComponent_1","View_PeopleComponent_2","View_PeopleComponent_3","View_PeopleComponent_4","View_PeopleComponent_21","View_PeopleComponent_22","View_PeopleComponent_23","View_PeopleComponent_24","View_AccountComponent_4","View_OrganizationBillingComponent_8","isExpired","View_OrganizationBillingComponent_7","View_OrganizationBillingComponent_9","View_OrganizationBillingComponent_12","View_OrganizationBillingComponent_14","View_OrganizationBillingComponent_11","View_OrganizationBillingComponent_13","View_OrganizationBillingComponent_16","View_AdjustSeatsComponent_0","RenderType_AdjustSeatsComponent","View_OrganizationBillingComponent_21","View_OrganizationBillingComponent_22","View_OrganizationBillingComponent_24","View_OrganizationBillingComponent_25","View_OrganizationBillingComponent_28","View_OrganizationBillingComponent_33","View_OrganizationBillingComponent_18","View_OrganizationBillingComponent_19","View_OrganizationBillingComponent_20","View_OrganizationBillingComponent_23","View_OrganizationBillingComponent_26","View_OrganizationBillingComponent_27","View_OrganizationBillingComponent_29","View_OrganizationBillingComponent_30","View_OrganizationBillingComponent_31","View_OrganizationBillingComponent_32","canDownloadLicense","canAdjustSeats","View_OrganizationBillingComponent_4","View_OrganizationBillingComponent_5","View_OrganizationBillingComponent_6","View_OrganizationBillingComponent_10","View_OrganizationBillingComponent_15","View_OrganizationBillingComponent_17","View_OrganizationBillingComponent_1","View_OrganizationBillingComponent_2","View_OrganizationBillingComponent_3","adjustedSeatTotal","View_AdjustSeatsComponent_1","View_AddEditComponent_3","View_AddEditComponent_5","View_AddEditComponent_8","View_AddEditComponent_9","stroke-dashoffset.px","View_AddEditComponent_13","View_AddEditComponent_12","low","View_AddEditComponent_7","View_AddEditComponent_10","View_AddEditComponent_11","View_AddEditComponent_15","View_AddEditComponent_16","View_AddEditComponent_18","View_AddEditComponent_21","View_AddEditComponent_22","View_AddEditComponent_23","View_AddEditComponent_20","View_AddEditComponent_26","View_AddEditComponent_30","View_AddEditComponent_28","View_AddEditComponent_29","View_AddEditComponent_35","View_AddEditComponent_32","View_AddEditComponent_33","View_AddEditComponent_34","View_AddEditComponent_2","View_AddEditComponent_4","View_AddEditComponent_6","View_AddEditComponent_14","View_AddEditComponent_17","View_AddEditComponent_19","View_AddEditComponent_24","View_AddEditComponent_25","View_AddEditComponent_27","View_AddEditComponent_31","fa-star","fa-star-o","View_AddEditComponent_37","View_AddEditComponent_38","View_AddEditComponent_1","View_AddEditComponent_36","View_AttachmentsComponent_4","View_AttachmentsComponent_5","View_AttachmentsComponent_6","View_AttachmentsComponent_3","View_AttachmentsComponent_1","View_AttachmentsComponent_2","ɵangular_packages_forms_forms_bg","View_BulkMoveComponent_1","View_BulkShareComponent_5","View_BulkShareComponent_1","View_BulkShareComponent_2","View_BulkShareComponent_3","View_BulkShareComponent_4","canSave","View_FolderAddEditComponent_1","View_ModalComponent_1","View_CollectionAddEditComponent_8","View_CollectionAddEditComponent_7","View_CollectionAddEditComponent_4","View_CollectionAddEditComponent_5","View_CollectionAddEditComponent_6","View_CollectionAddEditComponent_3","View_CollectionAddEditComponent_1","View_CollectionAddEditComponent_2","View_CollectionAddEditComponent_9","View_EntityEventsComponent_8","View_EntityEventsComponent_6","View_EntityEventsComponent_7","View_EntityEventsComponent_4","View_EntityEventsComponent_5","View_EntityEventsComponent_9","View_EntityEventsComponent_1","View_EntityEventsComponent_2","View_EntityEventsComponent_3","View_EntityUsersComponent_13","View_EntityUsersComponent_9","View_EntityUsersComponent_10","View_EntityUsersComponent_11","View_EntityUsersComponent_12","View_EntityUsersComponent_14","View_EntityUsersComponent_15","View_EntityUsersComponent_16","View_EntityUsersComponent_17","View_EntityUsersComponent_18","View_EntityUsersComponent_6","View_EntityUsersComponent_7","View_EntityUsersComponent_8","View_EntityUsersComponent_3","View_EntityUsersComponent_4","View_EntityUsersComponent_5","View_EntityUsersComponent_1","View_EntityUsersComponent_2","View_GroupAddEditComponent_7","View_GroupAddEditComponent_5","View_GroupAddEditComponent_6","View_GroupAddEditComponent_3","View_GroupAddEditComponent_4","View_GroupAddEditComponent_1","View_GroupAddEditComponent_2","View_GroupAddEditComponent_8","View_UserAddEditComponent_9","View_UserAddEditComponent_7","View_UserAddEditComponent_8","View_UserAddEditComponent_4","View_UserAddEditComponent_5","View_UserAddEditComponent_6","modal-lg","View_UserAddEditComponent_1","View_UserAddEditComponent_2","View_UserAddEditComponent_3","View_UserAddEditComponent_10","View_UserConfirmComponent_1","View_UserGroupsComponent_6","View_UserGroupsComponent_4","View_UserGroupsComponent_5","View_UserGroupsComponent_1","View_UserGroupsComponent_2","View_UserGroupsComponent_3","View_PasswordGeneratorHistoryComponent_2","View_PasswordGeneratorHistoryComponent_1","View_PasswordGeneratorHistoryComponent_3","View_ShareComponent_8","View_ShareComponent_4","View_ShareComponent_5","View_ShareComponent_6","View_ShareComponent_7","View_ShareComponent_1","View_ShareComponent_2","View_ShareComponent_3","View_ShareComponent_9","View_ShareComponent_10","View_TwoFactorVerifyComponent_0","RenderType_TwoFactorVerifyComponent","View_TwoFactorAuthenticatorComponent_3","View_TwoFactorAuthenticatorComponent_4","View_TwoFactorAuthenticatorComponent_5","View_TwoFactorAuthenticatorComponent_6","View_TwoFactorAuthenticatorComponent_7","View_TwoFactorAuthenticatorComponent_8","View_TwoFactorAuthenticatorComponent_9","View_TwoFactorAuthenticatorComponent_1","View_TwoFactorAuthenticatorComponent_2","View_TwoFactorDuoComponent_3","View_TwoFactorDuoComponent_4","View_TwoFactorDuoComponent_5","View_TwoFactorDuoComponent_6","View_TwoFactorDuoComponent_1","View_TwoFactorDuoComponent_2","View_TwoFactorEmailComponent_5","View_TwoFactorEmailComponent_3","View_TwoFactorEmailComponent_4","View_TwoFactorEmailComponent_6","View_TwoFactorEmailComponent_7","View_TwoFactorEmailComponent_1","View_TwoFactorEmailComponent_2","View_TwoFactorOptionsComponent_1","View_TwoFactorRecoveryComponent_3","View_TwoFactorRecoveryComponent_4","View_TwoFactorRecoveryComponent_5","View_TwoFactorRecoveryComponent_1","View_TwoFactorRecoveryComponent_2","fa-check text-success","fa-exclamation-triangle text-warning","View_TwoFactorU2fComponent_9","View_TwoFactorU2fComponent_5","View_TwoFactorU2fComponent_6","View_TwoFactorU2fComponent_7","View_TwoFactorU2fComponent_8","View_TwoFactorU2fComponent_12","View_TwoFactorU2fComponent_13","View_TwoFactorU2fComponent_14","View_TwoFactorU2fComponent_3","View_TwoFactorU2fComponent_4","View_TwoFactorU2fComponent_10","View_TwoFactorU2fComponent_11","View_TwoFactorU2fComponent_15","View_TwoFactorU2fComponent_16","View_TwoFactorU2fComponent_17","View_TwoFactorU2fComponent_1","View_TwoFactorU2fComponent_2","View_TwoFactorYubiKeyComponent_5","View_TwoFactorYubiKeyComponent_6","View_TwoFactorYubiKeyComponent_3","View_TwoFactorYubiKeyComponent_4","View_TwoFactorYubiKeyComponent_7","View_TwoFactorYubiKeyComponent_1","View_TwoFactorYubiKeyComponent_2","View_ToasterContainerComponent_0","RenderType_ToasterContainerComponent","ToasterContainerComponent","NgZone","toasterconfig","broadcasterMessaging_service_1","htmlStorage_service_1","i18n_service_1","memoryStorage_service_1","webPlatformUtils_service_1","broadcaster_service_1","analytics_1","api_service_1","appId_service_1","audit_service_1","cipher_service_1","collection_service_1","container_service_1","crypto_service_1","environment_service_1","export_service_1","folder_service_1","import_service_1","lock_service_1","notifications_service_1","passwordGeneration_service_1","search_service_1","settings_service_1","state_service_1","sync_service_1","token_service_1","totp_service_1","user_service_1","webCryptoFunction_service_1","language","BroadcasterMessagingService","WebPlatformUtilsService","HtmlStorageService","MemoryStorageService","WebCryptoFunctionService","__generator","ɵ2","ɵ3","Analytics","ɵ4","initFactory","_g","htmlEl","documentElement","theme","ɵ6","ɵ7","ɵ8","ɵ9","ɵ10","ɵ11","ɵ12","ɵ13","ɵ14","ɵ15","ɵ16","ɵ17","ɵ18","ɵ19","ɵ20","ɵ21","ɵ22","ɵ23","ɵ24","ɵ25","ɵ26","ɵ27","ɵ28","ɵ29","ServicesModule","subscriber","arg","services_1","localStorageKeys","localStorageStartsWithKeys","isLocalStorage","localStorage","getItem","sessionStorage","setItem","removeItem","swKey","Url","FileName","Size","SizeName","LastUsedDate","CardholderName","Brand","Number","ExpMonth","ExpYear","Code","Value","Title","FirstName","MiddleName","LastName","Address1","Address2","Address3","City","State","PostalCode","Country","Company","Phone","SSN","Username","PassportNumber","LicenseNumber","loginUriApi_1","PasswordRevisionDate","Totp","Uris","LoginUriApi","Uri","Match","Domains","Excluded","identityResponse","errorModel","ErrorModel","Message","ValidationErrors","UserId","CipherId","CollectionId","GroupId","OrganizationUserId","ActingUserId","IpAddress","AccessAll","ExternalId","Collections","access_token","expiresIn","expires_in","tokenType","token_type","TwoFactorToken","Data","ContinuationToken","OrganizationUserResponse","Kdf","KdfIterations","selfHost","SelfHost","UsersGetPremium","Enabled","Profile","Folders","Ciphers","SecretKey","IntegrationKey","KeyResponse","Compromised","AppId","Version","Key1","Key2","Key3","Key4","Key5","Nfc","PublicKey","AddedDate","BreachDate","DataClasses","isActive","IsActive","isVerified","IsVerified","LogoPath","modifiedDate","ModifiedDate","PwnCount","filePath","store","browserCache","chrome","isFirefox","isChrome","isOpera","isVivaldi","isSafari","isMacAppStore","analyticsId","rel","blobData","blobOptions","fileNameLower","doDownload","endsWith","msSaveOrOpenBlob","msSaveBlob","createObjectURL","position","confirmText","cancelText","buttons","contentDiv","titleDiv","createTextNode","textDiv","button","clipboardData","setData","queryCommandSupported","textarea","copyEl","execCommand","GaObj","AnalyticsIds","gaFilter","dependencyResolver","gaTrackingId","defaultDisabled","deps","appVersion","GoogleAnalyticsObject","param1","param2","ga","disabled","gaAnonAppId","gaTrackPageView","hitType","page","gaTrackEvent","XMLHttpRequest","eventCategory","eventAction","eventLabel","eventValue","cleanPagePath","pagePath","paramIndex","newPathParts","cipherWithIds_1","collectionWithId_1","folderWithId_1","foldersMap_1","exportCiphers_1","buildCommonCipher","unparse","jsonDoc_1","collectionPromises","decCol","cipherPromises","decCipher","collectionsMap_1","exportCiphers_2","jsonDoc_2","extension","dateString","padNumber","getSeconds","padCharacter","numString","login_uri","login_username","login_password","login_totp","template","toView","importCiphersRequest_1","importOrganizationCiphersRequest_1","kvpRequest_1","ascendoCsvImporter_1","avastCsvImporter_1","aviraCsvImporter_1","bitwardenCsvImporter_1","bitwardenJsonImporter_1","blurCsvImporter_1","chromeCsvImporter_1","clipperzHtmlImporter_1","dashlaneJsonImporter_1","enpassCsvImporter_1","enpassJsonImporter_1","firefoxCsvImporter_1","gnomeJsonImporter_1","keepass2XmlImporter_1","keepassxCsvImporter_1","keeperCsvImporter_1","lastpassCsvImporter_1","meldiumCsvImporter_1","msecureCsvImporter_1","onepassword1PifImporter_1","onepasswordWinCsvImporter_1","padlockCsvImporter_1","passkeepCsvImporter_1","passmanJsonImporter_1","passpackCsvImporter_1","passwordAgentCsvImporter_1","passwordBossJsonImporter_1","passwordDragonXmlImporter_1","passwordSafeXmlImporter_1","roboformCsvImporter_1","safeInCloudXmlImporter_1","saferpassCsvImport_1","splashIdCsvImporter_1","stickyPasswordXmlImporter_1","truekeyCsvImporter_1","upmCsvImporter_1","zohoVaultCsvImporter_1","getImportOptions","importResult","halfway","last","badData","postImport","getImporterInstance","BitwardenCsvImporter","BitwardenJsonImporter","LastPassCsvImporter","KeePassXCsvImporter","AviraCsvImporter","BlurCsvImporter","SafeInCloudXmlImporter","PadlockCsvImporter","KeePass2XmlImporter","ChromeCsvImporter","FirefoxCsvImporter","UpmCsvImporter","SaferPassCsvImporter","MeldiumCsvImporter","OnePassword1PifImporter","OnePasswordWinCsvImporter","KeeperCsvImporter","PasswordDragonXmlImporter","EnpassCsvImporter","EnpassJsonImporter","PasswordSafeXmlImporter","DashlaneJsonImporter","MSecureCsvImporter","StickyPasswordXmlImporter","TrueKeyCsvImporter","ClipperzHtmlImporter","RoboFormCsvImporter","AscendoCsvImporter","PasswordBossJsonImporter","ZohoVaultCsvImporter","SplashIdCsvImporter","PassKeepCsvImporter","GnomeJsonImporter","PasswordAgentCsvImporter","PasspackCsvImporter","PassmanJsonImporter","AvastCsvImporter","ImportCiphersRequest","KvpRequest","request_2","ImportOrganizationCiphersRequest","baseImporter_1","importResult_1","fieldLower","web","website","secondary_username","col","addCollection","collectionIndex","delimPosition","groupingsMap","errorMessage","entry","currentVersion","actionType","labelLower","HandledResults","ADDRESS","processAddress","AUTHENTIFIANT","processAuth","BANKSTATEMENT","processNote","IDCARD","PAYMENTMEANS_CREDITCARD","processCard","IDENTITY","processIdentity","credential","secondaryLogin","note","fullName","nameParts","pseudo","addressName","addressFull","zipcode","cardNumber","owner","nameProperty","firstRow","containsField","fieldValue","fieldName","fieldNameLower","month","template_type","processLogin","keyRing","display_name","secret","attributes","attr","username_value","rootGroup","traverse","isRootNode","groupPrefixName","groupName","nameEl","cipherIndex","entryString","valueEl","keyEl","Group","buildBaseCipher","extra","parseSecureNote","parseCard","parseIdentity","ccnum","cardCipher","profilename","firstname","lastname","fav","ccname","cccsc","ccexp","ccexpParts","middlename","zip","extraParts","processedNote","typeParts","mappedData","parseSecureNoteMapping","Name on Card","Security Code","First Name","Last Name","Middle Name","Address 1","Address 2","Address 3","City / Town","Zip / Postal Code","Email Address","extraPart","fieldParts","DisplayName","UserName","line","processStandardItem","processWinOpVaultItem","overview","URLs","urls_1","details","cvv","notesPlain","parseFields","sections","section","openContents","faveIndex","typeName","secureContents","designationKey","valueKey","nameKey","fieldDesignation","view_1","IgnoredProperties","altUsername","View","tags","tag","getValue","custom_fields","customField","field_type","tagsJson","Tags","tagJson","__parsed_extra","fieldsJson","extraFields","fieldJson","login_url","identifiers","valObj","expDate","records","record","categoryText","accountName","passwordSafe","notesDelimiter","getAttribute","entries","groupText","Note","Pwd","foldersMap","labelEl","cardEl","labelIdEl","labelId","fieldEl","notesEl","parseFieldsToNotes","startIndex","loginNodes","loginNode","accountId","usernameText","passwordText","titleText","linkText","notesText","accountLogin","account","parentElement","buildGroupText","PropertiesToIgnore","memo","kind","cardholder","expiryDate","document_content","ChamberName","parseData","SecretData","CustomData","signalR","signalRMsgPack","notificationType_1","notificationResponse_1","connected","inactive","reconnectTimer","signalrConnection","off","HubConnectionBuilder","withUrl","accessTokenFactory","withHubProtocol","MessagePackHubProtocol","processNotification","NotificationResponse","onclose","reconnect","isAuthedAndUnlocked","sync","contextId","payloadUserId","myUserId","SyncCipherCreate","SyncCipherUpdate","SyncCipherDelete","SyncLoginDelete","SyncFolderCreate","SyncFolderUpdate","SyncFolderDelete","SyncVault","SyncCiphers","SyncSettings","SyncOrgKeys","LogOut","ContextId","Payload","SyncCipherNotification","SyncFolderNotification","UserNotification","lunr","indexing","onlySearchName","isSearchable","time","builder","Builder","boost","extractor","uriExtractor","fieldExtractor","attachmentExtractor","timeEnd","getIndexForSearch","ciphersMap","searchResults","soWild_1","Query","wildcard","LEADING","TRAILING","q","term","tokenizer","joined","protocolIndex","queryIndex","forge","decryptParameters_1","crypto","subtle","ua","isOldSafari","algorithm","iterations","forgeLen","passwordBytes","toByteString","saltBytes","derivedKeyBytes","wcLen","passwordBuf","toBuf","saltBuf","pbkdf2Params","toWebCryptoAlgorithm","importKey","impKey","deriveBits","md","md5","sha1","valueBytes","digest","valueBuf","signingAlgorithm","mac1","mac2","arr1","arr2","getBytes","rand","Uint32Array","util","createBuffer","putInt32","DecryptParameters","meta","encKeyByteString","macKeyByteString","decode64","parameters","dataBuffer","createDecipher","finish","rsaParams","impPrivateKey","exportKey","jwkPrivateKey","jwkPublicKeyParams","kty","ext","impPublicKey","modulusLength","publicExponent","generateKey","getRandomValues","encodeUtf8","frontend_layout_component_1","organization_layout_component_1","user_layout_component_1","accept_organization_component_1","hint_component_1","lock_component_1","login_component_1","recover_delete_component_1","recover_two_factor_component_1","register_component_1","two_factor_component_1","verify_email_token_component_1","verify_recover_delete_component_1","events_component_1","groups_component_1","manage_component_1","people_component_1","account_component_1","organization_billing_component_1","settings_component_1","two_factor_setup_component_1","export_component_1","exposed_passwords_report_component_1","import_component_1","inactive_two_factor_report_component_1","reused_passwords_report_component_1","tools_component_1","unsecured_websites_report_component_1","weak_passwords_report_component_1","vault_component_1","account_component_2","create_organization_component_1","domain_rules_component_1","options_component_1","organizations_component_1","premium_component_1","settings_component_2","two_factor_setup_component_2","user_billing_component_1","breach_report_component_1","export_component_2","exposed_passwords_report_component_2","import_component_2","inactive_two_factor_report_component_2","reused_passwords_report_component_2","tools_component_2","unsecured_websites_report_component_2","weak_passwords_report_component_2","vault_component_2","organization_guard_service_1","organization_type_guard_service_1","unauth_guard_service_1","auth_guard_service_1","ɵ5","ɵ30","ɵ31","ɵ32","ɵ33","ɵ34","ɵ35","ɵ36","ɵ37","ɵ38","ɵ39","ɵ40","ɵ41","AppRoutingModule"],"mappings":"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EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,MAAQ,MAARD,EAAAC,EAAA,MAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAA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krB,EAAY5uE,EAAAkF,2BACkB,KAAvBjV,EAAIA,IAAI0O,YAAR,MACK,EAAM5N,KAAKq9C,QAAQsT,EAAQzxD,kBAAvC2+E,EAAY5uE,EAAAkF,oBAEZ,MAAM,IAAIzF,MAAM,4BAEpB,UAAQ,IAAI0qD,EAAAK,mBAAmB9I,GAASktB,UAjlB5CjI,GADC1G,EAAA2G,cAAaC,qHA2EdF,GADC1G,EAAA2G,cAAakC,sHA0gBlB11E,EAlqBA,GAAaxE,EAAAwE,+FC3BAxE,EAAAu/E,iBACT,SACA,UACA,YACA,QACA,UACA,UACA,SACA,OACA,WACA,WACA,WACA,UACA,UACA,SACA,WACA,UACA,WACA,WACA,WACA,WACA,UACA,UACA,WACA,SACA,SACA,UACA,YACA,YACA,UACA,WACA,WACA,WACA,UACA,WACA,SACA,OACA,QACA,WACA,UACA,OACA,UACA,UACA,SACA,SACA,WACA,YACA,SACA,WACA,WACA,WACA,UACA,OACA,UACA,YACA,WACA,WACA,UACA,YACA,OACA,SACA,WACA,YACA,YACA,YACA,YACA,SACA,QACA,YACA,WACA,SACA,UACA,SACA,SACA,WACA,QACA,SACA,YACA,YACA,YACA,YACA,YACA,OACA,UACA,SACA,SACA,QACA,YACA,SACA,QACA,UACA,QACA,WACA,UACA,YACA,QACA,YACA,YACA,SACA,WACA,YACA,UACA,QACA,OACA,OACA,OACA,MACA,OACA,YACA,QACA,YACA,QACA,UACA,UACA,YACA,QACA,QACA,YACA,WACA,SACA,QACA,QACA,WACA,WACA,UACA,WACA,SACA,OACA,QACA,QACA,QACA,YACA,QACA,WACA,UACA,WACA,WACA,OACA,WACA,SACA,SACA,WACA,QACA,YACA,QACA,WACA,YACA,YACA,WACA,YACA,YACA,SACA,YACA,YACA,SACA,UACA,UACA,WACA,OACA,QACA,QACA,QACA,UACA,WACA,UACA,WACA,QACA,SACA,WACA,QACA,YACA,UACA,QACA,QACA,SACA,WACA,SACA,YACA,SACA,UACA,WACA,YACA,UACA,YACA,UACA,SACA,UACA,UACA,UACA,SACA,SACA,WACA,OACA,YACA,UACA,QACA,SACA,SACA,SACA,UACA,UACA,YACA,YACA,UACA,SACA,UACA,YACA,YACA,WACA,QACA,YACA,QACA,QACA,WACA,YACA,WACA,WACA,UACA,WACA,UACA,YACA,UACA,YACA,WACA,WACA,WACA,SACA,UACA,YACA,WACA,SACA,WACA,WACA,YACA,WACA,YACA,WACA,YACA,YACA,YACA,YACA,SACA,UACA,QACA,QACA,UACA,SACA,UACA,SACA,WACA,WACA,UACA,SACA,WACA,QACA,SACA,UACA,YACA,SACA,UACA,YACA,YACA,WACA,WACA,YACA,UACA,WACA,QACA,YACA,YACA,UACA,QACA,YACA,YACA,YACA,YACA,WACA,WACA,UACA,UACA,QACA,QACA,WACA,QACA,OACA,WACA,YACA,YACA,WACA,OACA,QACA,WACA,WACA,QACA,QACA,YACA,UACA,WACA,QACA,SACA,UACA,SACA,UACA,UACA,UACA,SACA,UACA,OACA,QACA,QACA,SACA,UACA,UACA,QACA,SACA,UACA,SACA,YACA,WACA,QACA,MACA,SACA,YACA,SACA,YACA,UACA,QACA,QACA,OACA,QACA,QACA,SACA,YACA,SACA,WACA,SACA,UACA,WACA,UACA,UACA,YACA,YACA,YACA,SACA,WACA,QACA,OACA,WACA,OACA,SACA,YACA,UACA,SACA,SACA,UACA,YACA,WACA,YACA,YACA,SACA,QACA,SACA,WACA,YACA,YACA,WACA,UACA,YACA,WACA,UACA,UACA,WACA,QACA,WACA,YACA,SACA,YACA,SACA,SACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,SACA,SACA,WACA,SACA,UACA,WACA,QACA,WACA,UACA,OACA,QACA,QACA,SACA,QACA,QACA,SACA,UACA,SACA,QACA,OACA,OACA,SACA,WACA,SACA,SACA,WACA,YACA,YACA,WACA,SACA,SACA,YACA,WACA,WACA,UACA,YACA,WACA,WACA,YACA,UACA,UACA,WACA,YACA,WACA,WACA,YACA,WACA,WACA,YACA,WACA,WACA,YACA,WACA,YACA,SACA,WACA,WACA,YACA,WACA,QACA,WACA,YACA,SACA,QACA,UACA,QACA,UACA,SACA,WACA,QACA,SACA,UACA,SACA,SACA,YACA,UACA,QACA,UACA,WACA,QACA,SACA,WACA,SACA,UACA,YACA,UACA,QACA,WACA,SACA,SACA,SACA,WACA,QACA,WACA,WACA,SACA,SACA,UACA,WACA,WACA,SACA,YACA,UACA,SACA,WACA,SACA,UACA,SACA,UACA,QACA,WACA,UACA,WACA,SACA,UACA,SACA,OACA,YACA,UACA,YACA,SACA,WACA,YACA,UACA,WACA,YACA,WACA,OACA,YACA,SACA,QACA,QACA,QACA,SACA,SACA,QACA,OACA,QACA,OACA,YACA,WACA,YACA,UACA,UACA,SACA,SACA,UACA,UACA,UACA,QACA,OACA,QACA,UACA,YACA,YACA,QACA,YACA,YACA,QACA,WACA,YACA,SACA,UACA,SACA,QACA,QACA,UACA,QACA,QACA,WACA,QACA,QACA,UACA,UACA,WACA,SACA,OACA,WACA,QACA,WACA,UACA,WACA,OACA,OACA,WACA,WACA,UACA,OACA,SACA,UACA,QACA,SACA,YACA,QACA,QACA,UACA,SACA,QACA,QACA,WACA,UACA,WACA,WACA,OACA,SACA,UACA,SACA,SACA,UACA,UACA,YACA,OACA,SACA,SACA,QACA,OACA,MACA,UACA,OACA,UACA,SACA,UACA,WACA,QACA,WACA,WACA,WACA,QACA,UACA,SACA,SACA,QACA,OACA,YACA,YACA,OACA,YACA,SACA,QACA,SACA,UACA,WACA,UACA,QACA,QACA,QACA,SACA,UACA,WACA,YACA,OACA,YACA,WACA,SACA,QACA,OACA,SACA,WACA,SACA,SACA,WACA,SACA,WACA,YACA,YACA,SACA,SACA,QACA,SACA,UACA,OACA,SACA,SACA,WACA,YACA,UACA,WACA,SACA,SACA,WACA,UACA,UACA,QACA,QACA,QACA,QACA,UACA,UACA,SACA,YACA,OACA,QACA,QACA,UACA,UACA,YACA,UACA,UACA,YACA,YACA,UACA,UACA,YACA,YACA,YACA,UACA,WACA,SACA,SACA,YACA,SACA,SACA,WACA,QACA,QACA,UACA,WACA,YACA,SACA,WACA,WACA,SACA,WACA,QACA,QACA,WACA,QACA,YACA,SACA,WACA,SACA,YACA,SACA,SACA,SACA,WACA,WACA,YACA,YACA,WACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,UACA,UACA,QACA,OACA,QACA,YACA,SACA,OACA,UACA,YACA,YACA,WACA,WACA,UACA,UACA,UACA,WACA,WACA,WACA,QACA,QACA,SACA,SACA,SACA,UACA,YACA,WACA,QACA,OACA,SACA,OACA,SACA,UACA,OACA,WACA,OACA,SACA,UACA,SACA,YACA,QACA,UACA,QACA,SACA,QACA,SACA,SACA,QACA,QACA,WACA,UACA,OACA,UACA,OACA,WACA,WACA,UACA,YACA,WACA,UACA,YACA,OACA,UACA,UACA,UACA,YACA,QACA,SACA,WACA,SACA,WACA,UACA,WACA,SACA,QACA,SACA,SACA,UACA,SACA,QACA,OACA,SACA,WACA,WACA,SACA,UACA,SACA,SACA,SACA,QACA,YACA,SACA,UACA,SACA,UACA,UACA,WACA,OACA,YACA,UACA,UACA,SACA,YACA,UACA,UACA,UACA,YACA,UACA,YACA,UACA,UACA,QACA,UACA,SACA,YACA,SACA,UACA,WACA,WACA,YACA,YACA,YACA,WACA,SACA,YACA,QACA,SACA,UACA,UACA,WACA,UACA,YACA,WACA,YACA,QACA,YACA,YACA,UACA,UACA,UACA,SACA,YACA,QACA,SACA,WACA,SACA,UACA,YACA,YACA,QACA,UACA,UACA,UACA,OACA,OACA,SACA,SACA,SACA,WACA,WACA,WACA,WACA,UACA,WACA,WACA,WACA,WACA,YACA,UACA,YACA,UACA,WACA,SACA,UACA,WACA,WACA,UACA,YACA,WACA,UACA,SACA,SACA,SACA,UACA,YACA,SACA,QACA,UACA,YACA,SACA,SACA,YACA,QACA,UACA,YACA,UACA,WACA,WACA,UACA,SACA,SACA,QACA,SACA,YACA,WACA,WACA,SACA,SACA,SACA,WACA,WACA,YACA,YACA,YACA,UACA,WACA,WACA,QACA,WACA,QACA,QACA,UACA,YACA,UACA,YACA,WACA,SACA,SACA,UACA,QACA,QACA,YACA,WACA,UACA,QACA,UACA,YACA,YACA,WACA,UACA,WACA,UACA,UACA,QACA,UACA,UACA,WACA,QACA,UACA,SACA,WACA,WACA,WACA,UACA,WACA,SACA,WACA,UACA,QACA,QACA,SACA,SACA,OACA,YACA,UACA,QACA,YACA,SACA,QACA,QACA,UACA,QACA,WACA,SACA,UACA,QACA,QACA,YACA,YACA,YACA,WACA,YACA,YACA,QACA,QACA,QACA,OACA,WACA,SACA,WACA,WACA,QACA,WACA,WACA,SACA,YACA,UACA,QACA,UACA,WACA,SACA,OACA,SACA,UACA,WACA,SACA,SACA,QACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,WACA,QACA,SACA,WACA,SACA,WACA,WACA,YACA,SACA,UACA,UACA,WACA,UACA,SACA,SACA,OACA,QACA,QACA,OACA,QACA,WACA,SACA,SACA,QACA,YACA,QACA,WACA,UACA,UACA,WACA,UACA,WACA,UACA,QACA,QACA,QACA,UACA,SACA,WACA,OACA,OACA,QACA,QACA,QACA,UACA,QACA,SACA,YACA,WACA,QACA,SACA,UACA,SACA,UACA,WACA,QACA,SACA,WACA,OACA,SACA,QACA,UACA,QACA,QACA,UACA,WACA,UACA,UACA,WACA,QACA,SACA,UACA,WACA,YACA,QACA,WACA,SACA,SACA,YACA,SACA,UACA,QACA,YACA,UACA,UACA,WACA,YACA,YACA,OACA,WACA,SACA,UACA,SACA,QACA,UACA,MACA,WACA,SACA,UACA,SACA,YACA,YACA,YACA,WACA,YACA,WACA,WACA,OACA,OACA,OACA,OACA,WACA,WACA,UACA,WACA,SACA,YACA,YACA,UACA,SACA,YACA,WACA,WACA,WACA,SACA,WACA,OACA,OACA,OACA,UACA,QACA,QACA,SACA,QACA,WACA,UACA,UACA,WACA,UACA,YACA,YACA,SACA,YACA,UACA,YACA,YACA,YACA,YACA,YACA,YACA,UACA,UACA,SACA,UACA,SACA,YACA,WACA,WACA,YACA,UACA,YACA,WACA,WACA,YACA,WACA,YACA,UACA,UACA,UACA,WACA,UACA,YACA,UACA,QACA,YACA,UACA,WACA,WACA,SACA,WACA,YACA,YACA,UACA,YACA,YACA,UACA,OACA,UACA,WACA,YACA,YACA,WACA,YACA,YACA,WACA,YACA,UACA,WACA,UACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,WACA,WACA,UACA,YACA,UACA,WACA,YACA,YACA,YACA,UACA,UACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,UACA,WACA,YACA,UACA,YACA,WACA,UACA,YACA,YACA,WACA,UACA,UACA,UACA,UACA,WACA,UACA,YACA,UACA,UACA,YACA,OACA,SACA,SACA,UACA,SACA,UACA,SACA,OACA,QACA,OACA,WACA,YACA,UACA,SACA,SACA,SACA,YACA,YACA,WACA,WACA,YACA,QACA,WACA,UACA,WACA,YACA,SACA,UACA,WACA,UACA,YACA,YACA,UACA,SACA,SACA,WACA,YACA,SACA,SACA,YACA,OACA,UACA,SACA,QACA,QACA,QACA,YACA,YACA,WACA,YACA,UACA,SACA,UACA,WACA,QACA,UACA,WACA,UACA,SACA,WACA,OACA,WACA,YACA,WACA,WACA,SACA,WACA,UACA,WACA,YACA,YACA,SACA,QACA,YACA,QACA,UACA,UACA,QACA,QACA,QACA,UACA,WACA,WACA,WACA,WACA,SACA,SACA,UACA,YACA,QACA,UACA,UACA,YACA,SACA,WACA,YACA,SACA,WACA,WACA,WACA,WACA,WACA,SACA,QACA,QACA,SACA,QACA,QACA,WACA,UACA,WACA,YACA,UACA,WACA,UACA,WACA,OACA,UACA,QACA,QACA,QACA,UACA,SACA,WACA,UACA,UACA,UACA,WACA,UACA,YACA,SACA,WACA,UACA,QACA,QACA,QACA,QACA,OACA,QACA,SACA,UACA,UACA,QACA,QACA,UACA,UACA,YACA,UACA,YACA,UACA,QACA,YACA,SACA,UACA,WACA,WACA,YACA,UACA,WACA,YACA,UACA,UACA,WACA,QACA,OACA,SACA,UACA,UACA,YACA,OACA,UACA,UACA,WACA,SACA,SACA,WACA,WACA,YACA,WACA,UACA,YACA,WACA,UACA,YACA,UACA,QACA,SACA,UACA,UACA,UACA,SACA,OACA,SACA,SACA,SACA,SACA,YACA,UACA,QACA,QACA,QACA,UACA,SACA,UACA,SACA,SACA,YACA,QACA,QACA,QACA,OACA,SACA,UACA,YACA,UACA,YACA,WACA,YACA,UACA,MACA,QACA,SACA,UACA,UACA,WACA,SACA,YACA,YACA,MACA,MACA,WACA,SACA,QACA,WACA,SACA,QACA,QACA,WACA,QACA,UACA,YACA,SACA,WACA,QACA,SACA,SACA,WACA,YACA,QACA,WACA,WACA,YACA,UACA,WACA,WACA,UACA,OACA,OACA,YACA,OACA,YACA,OACA,WACA,SACA,WACA,WACA,UACA,OACA,SACA,WACA,UACA,WACA,WACA,UACA,UACA,UACA,UACA,WACA,SACA,YACA,WACA,SACA,UACA,YACA,QACA,OACA,YACA,SACA,WACA,QACA,UACA,WACA,SACA,QACA,SACA,SACA,QACA,QACA,YACA,QACA,WACA,SACA,WACA,YACA,WACA,UACA,SACA,YACA,YACA,UACA,YACA,UACA,YACA,WACA,OACA,WACA,UACA,SACA,YACA,YACA,YACA,QACA,WACA,SACA,WACA,YACA,SACA,SACA,OACA,OACA,SACA,SACA,WACA,SACA,WACA,SACA,UACA,SACA,YACA,YACA,YACA,WACA,UACA,YACA,WACA,WACA,WACA,UACA,SACA,WACA,SACA,WACA,UACA,YACA,WACA,YACA,YACA,QACA,WACA,UACA,UACA,SACA,SACA,OACA,WACA,YACA,WACA,SACA,YACA,QACA,WACA,QACA,WACA,YACA,SACA,WACA,WACA,WACA,YACA,YACA,YACA,WACA,YACA,WACA,UACA,QACA,SACA,WACA,SACA,YACA,YACA,WACA,SACA,YACA,WACA,SACA,WACA,YACA,YACA,WACA,SACA,QACA,SACA,QACA,UACA,SACA,UACA,UACA,OACA,YACA,YACA,WACA,YACA,SACA,UACA,YACA,WACA,SACA,SACA,SACA,WACA,YACA,YACA,UACA,UACA,QACA,WACA,SACA,SACA,WACA,QACA,UACA,YACA,UACA,YACA,YACA,WACA,WACA,YACA,YACA,UACA,WACA,WACA,UACA,UACA,UACA,UACA,YACA,WACA,WACA,SACA,YACA,YACA,WACA,YACA,YACA,SACA,WACA,YACA,WACA,UACA,QACA,UACA,WACA,UACA,UACA,YACA,WACA,SACA,UACA,YACA,UACA,WACA,WACA,YACA,WACA,YACA,YACA,WACA,WACA,WACA,YACA,YACA,UACA,OACA,WACA,SACA,YACA,QACA,OACA,SACA,UACA,YACA,WACA,YACA,WACA,WACA,YACA,YACA,MACA,WACA,YACA,WACA,OACA,SACA,OACA,WACA,QACA,SACA,SACA,UACA,SACA,QACA,UACA,SACA,YACA,QACA,QACA,SACA,SACA,UACA,UACA,UACA,SACA,SACA,UACA,WACA,YACA,YACA,WACA,YACA,WACA,YACA,WACA,WACA,WACA,SACA,WACA,WACA,UACA,YACA,WACA,UACA,UACA,YACA,WACA,WACA,WACA,YACA,WACA,UACA,UACA,YACA,YACA,WACA,OACA,YACA,UACA,OACA,UACA,YACA,YACA,WACA,WACA,YACA,SACA,UACA,WACA,UACA,WACA,SACA,YACA,YACA,WACA,WACA,YACA,YACA,YACA,WACA,UACA,YACA,WACA,UACA,WACA,UACA,YACA,UACA,WACA,WACA,UACA,WACA,UACA,WACA,UACA,WACA,WACA,WACA,WACA,QACA,QACA,QACA,YACA,UACA,WACA,WACA,WACA,WACA,SACA,WACA,YACA,YACA,WACA,WACA,WACA,YACA,QACA,SACA,SACA,OACA,WACA,WACA,QACA,QACA,QACA,QACA,OACA,SACA,YACA,SACA,QACA,UACA,SACA,WACA,WACA,WACA,WACA,UACA,WACA,UACA,QACA,QACA,SACA,WACA,YACA,WACA,UACA,UACA,WACA,WACA,WACA,WACA,UACA,QACA,OACA,YACA,SACA,SACA,OACA,SACA,WACA,SACA,OACA,OACA,QACA,OACA,OACA,WACA,YACA,YACA,WACA,YACA,WACA,UACA,UACA,YACA,WACA,YACA,QACA,UACA,UACA,OACA,UACA,WACA,YACA,YACA,WACA,YACA,YACA,YACA,SACA,SACA,WACA,SACA,SACA,QACA,OACA,UACA,QACA,QACA,QACA,UACA,WACA,YACA,WACA,WACA,SACA,WACA,SACA,SACA,WACA,UACA,UACA,UACA,QACA,QACA,QACA,YACA,UACA,WACA,UACA,UACA,UACA,QACA,QACA,WACA,SACA,OACA,MACA,SACA,YACA,UACA,WACA,UACA,WACA,WACA,QACA,OACA,OACA,SACA,SACA,MACA,OACA,SACA,WACA,OACA,UACA,WACA,WACA,MACA,OACA,SACA,YACA,YACA,UACA,UACA,WACA,SACA,SACA,OACA,OACA,UACA,OACA,QACA,QACA,QACA,UACA,UACA,WACA,UACA,YACA,UACA,WACA,UACA,WACA,WACA,OACA,QACA,UACA,UACA,UACA,SACA,UACA,QACA,UACA,UACA,WACA,WACA,WACA,UACA,UACA,UACA,YACA,YACA,UACA,YACA,SACA,SACA,UACA,QACA,UACA,SACA,WACA,SACA,YACA,YACA,SACA,WACA,UACA,QACA,SACA,SACA,OACA,OACA,QACA,QACA,QACA,YACA,OACA,SACA,UACA,YACA,UACA,WACA,YACA,UACA,YACA,YACA,OACA,WACA,SACA,OACA,UACA,SACA,WACA,YACA,WACA,MACA,YACA,UACA,YACA,SACA,YACA,SACA,SACA,WACA,WACA,YACA,UACA,YACA,SACA,QACA,YACA,UACA,SACA,QACA,YACA,UACA,SACA,YACA,WACA,WACA,WACA,UACA,YACA,YACA,WACA,SACA,MACA,WACA,WACA,YACA,QACA,UACA,SACA,MACA,UACA,WACA,MACA,YACA,QACA,YACA,WACA,YACA,QACA,UACA,QACA,QACA,UACA,SACA,UACA,YACA,YACA,QACA,WACA,UACA,SACA,SACA,WACA,SACA,YACA,QACA,UACA,YACA,WACA,OACA,QACA,WACA,UACA,WACA,UACA,UACA,WACA,WACA,YACA,WACA,YACA,WACA,WACA,WACA,WACA,UACA,UACA,YACA,QACA,MACA,SACA,YACA,SACA,YACA,YACA,WACA,UACA,YACA,SACA,SACA,YACA,YACA,WACA,UACA,UACA,WACA,WACA,YACA,QACA,SACA,UACA,UACA,YACA,YACA,UACA,YACA,WACA,YACA,YACA,WACA,YACA,WACA,SACA,WACA,WACA,UACA,WACA,SACA,UACA,WACA,WACA,YACA,UACA,SACA,UACA,YACA,YACA,YACA,UACA,WACA,YACA,WACA,YACA,YACA,WACA,WACA,SACA,SACA,SACA,UACA,UACA,SACA,SACA,YACA,WACA,YACA,WACA,SACA,UACA,SACA,SACA,YACA,SACA,SACA,WACA,UACA,WACA,UACA,YACA,WACA,WACA,WACA,UACA,WACA,QACA,OACA,SACA,OACA,WACA,YACA,YACA,WACA,WACA,YACA,WACA,WACA,UACA,QACA,SACA,WACA,UACA,UACA,YACA,SACA,YACA,YACA,WACA,SACA,SACA,UACA,YACA,SACA,SACA,UACA,QACA,QACA,WACA,YACA,YACA,WACA,WACA,WACA,SACA,YACA,YACA,WACA,UACA,QACA,UACA,YACA,YACA,SACA,WACA,WACA,YACA,YACA,WACA,UACA,UACA,WACA,UACA,QACA,YACA,SACA,YACA,WACA,UACA,QACA,WACA,YACA,YACA,UACA,UACA,OACA,YACA,YACA,YACA,WACA,WACA,QACA,WACA,UACA,OACA,QACA,YACA,SACA,QACA,UACA,UACA,WACA,YACA,YACA,YACA,SACA,WACA,YACA,WACA,UACA,UACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,SACA,YACA,YACA,YACA,YACA,QACA,OACA,YACA,SACA,UACA,SACA,QACA,WACA,OACA,SACA,YACA,WACA,WACA,SACA,UACA,YACA,YACA,YACA,YACA,YACA,QACA,SACA,WACA,YACA,SACA,SACA,WACA,UACA,YACA,WACA,UACA,UACA,UACA,YACA,WACA,WACA,YACA,SACA,WACA,UACA,YACA,YACA,WACA,YACA,SACA,YACA,WACA,WACA,UACA,YACA,YACA,SACA,YACA,UACA,YACA,YACA,QACA,SACA,WACA,WACA,YACA,WACA,WACA,WACA,YACA,UACA,SACA,WACA,SACA,YACA,UACA,UACA,SACA,YACA,UACA,UACA,OACA,SACA,UACA,SACA,OACA,QACA,UACA,OACA,WACA,SACA,SACA,WACA,UACA,UACA,YACA,QACA,UACA,OACA,UACA,YACA,YACA,UACA,UACA,WACA,SACA,UACA,WACA,SACA,YACA,YACA,UACA,WACA,WACA,MACA,QACA,UACA,SACA,SACA,OACA,OACA,SACA,SACA,WACA,WACA,WACA,WACA,WACA,QACA,QACA,UACA,SACA,UACA,WACA,YACA,WACA,SACA,SACA,QACA,SACA,SACA,WACA,UACA,YACA,QACA,QACA,QACA,QACA,UACA,SACA,WACA,WACA,YACA,UACA,UACA,QACA,WACA,QACA,UACA,SACA,WACA,SACA,SACA,SACA,UACA,OACA,SACA,QACA,WACA,SACA,WACA,WACA,UACA,UACA,YACA,QACA,WACA,QACA,UACA,WACA,WACA,YACA,SACA,UACA,UACA,WACA,MACA,OACA,UACA,UACA,WACA,WACA,YACA,YACA,QACA,UACA,QACA,QACA,YACA,UACA,WACA,WACA,OACA,UACA,YACA,YACA,YACA,WACA,WACA,SACA,QACA,UACA,WACA,SACA,WACA,UACA,YACA,YACA,WACA,UACA,WACA,WACA,WACA,YACA,YACA,WACA,OACA,UACA,SACA,QACA,QACA,SACA,SACA,QACA,QACA,OACA,QACA,QACA,QACA,WACA,OACA,SACA,UACA,QACA,WACA,UACA,UACA,QACA,SACA,UACA,WACA,OACA,MACA,MACA,OACA,QACA,OACA,WACA,SACA,WACA,SACA,WACA,SACA,OACA,OACA,OACA,UACA,WACA,WACA,YACA,SACA,WACA,WACA,WACA,UACA,WACA,UACA,WACA,UACA,WACA,YACA,WACA,UACA,WACA,WACA,WACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,WACA,WACA,UACA,YACA,WACA,YACA,WACA,QACA,QACA,UACA,UACA,YACA,SACA,UACA,QACA,WACA,WACA,WACA,UACA,UACA,UACA,WACA,WACA,UACA,WACA,SACA,YACA,WACA,YACA,WACA,UACA,WACA,YACA,WACA,UACA,SACA,WACA,SACA,YACA,WACA,QACA,UACA,UACA,WACA,SACA,SACA,QACA,SACA,WACA,YACA,YACA,WACA,QACA,SACA,UACA,QACA,UACA,YACA,SACA,OACA,QACA,YACA,UACA,WACA,WACA,YACA,SACA,QACA,QACA,SACA,WACA,YACA,WACA,QACA,YACA,SACA,MACA,QACA,MACA,YACA,UACA,QACA,OACA,YACA,WACA,UACA,SACA,SACA,UACA,YACA,SACA,YACA,WACA,OACA,SACA,QACA,SACA,SACA,WACA,UACA,MACA,SACA,UACA,SACA,SACA,UACA,SACA,UACA,SACA,UACA,SACA,MACA,WACA,YACA,SACA,UACA,WACA,QACA,OACA,OACA,SACA,OACA,QACA,OACA,SACA,MACA,SACA,UACA,WACA,WACA,QACA,UACA,YACA,SACA,QACA,YACA,WACA,YACA,UACA,YACA,WACA,WACA,SACA,YACA,YACA,YACA,WACA,YACA,UACA,YACA,UACA,UACA,UACA,QACA,QACA,YACA,SACA,UACA,YACA,QACA,OACA,WACA,YACA,WACA,SACA,WACA,SACA,SACA,SACA,QACA,UACA,SACA,WACA,QACA,QACA,SACA,QACA,UACA,UACA,UACA,QACA,YACA,SACA,YACA,UACA,SACA,WACA,YACA,QACA,UACA,QACA,WACA,UACA,WACA,UACA,SACA,UACA,UACA,UACA,UACA,SACA,UACA,SACA,UACA,WACA,WACA,SACA,YACA,YACA,UACA,WACA,QACA,QACA,QACA,UACA,WACA,UACA,OACA,SACA,YACA,UACA,SACA,OACA,OACA,WACA,OACA,UACA,QACA,WACA,WACA,YACA,OACA,UACA,QACA,UACA,OACA,OACA,OACA,QACA,WACA,YACA,QACA,SACA,OACA,SACA,OACA,SACA,WACA,OACA,UACA,SACA,SACA,SACA,OACA,OACA,OACA,WACA,YACA,WACA,YACA,SACA,SACA,WACA,UACA,YACA,WACA,WACA,UACA,WACA,QACA,WACA,WACA,UACA,UACA,UACA,WACA,UACA,SACA,UACA,QACA,WACA,QACA,QACA,UACA,YACA,QACA,QACA,YACA,UACA,UACA,YACA,WACA,SACA,YACA,SACA,YACA,YACA,UACA,QACA,OACA,UACA,WACA,WACA,YACA,SACA,QACA,UACA,WACA,OACA,YACA,OACA,QACA,YACA,WACA,WACA,QACA,UACA,YACA,QACA,YACA,QACA,SACA,WACA,OACA,UACA,OACA,WACA,SACA,QACA,QACA,SACA,WACA,SACA,QACA,SACA,UACA,QACA,QACA,SACA,UACA,QACA,OACA,SACA,WACA,WACA,UACA,UACA,YACA,UACA,WACA,SACA,QACA,YACA,WACA,WACA,QACA,UACA,YACA,QACA,OACA,WACA,QACA,OACA,UACA,UACA,YACA,UACA,QACA,SACA,WACA,OACA,OACA,QACA,QACA,UACA,OACA,SACA,MACA,UACA,WACA,YACA,WACA,UACA,WACA,SACA,SACA,UACA,UACA,MACA,UACA,QACA,OACA,UACA,OACA,SACA,SACA,YACA,SACA,UACA,SACA,UACA,YACA,UACA,WACA,WACA,YACA,WACA,WACA,YACA,YACA,WACA,SACA,UACA,WACA,UACA,WACA,YACA,YACA,YACA,UACA,UACA,WACA,WACA,UACA,WACA,YACA,WACA,UACA,UACA,YACA,YACA,YACA,WACA,WACA,YACA,YACA,WACA,WACA,UACA,WACA,SACA,YACA,SACA,QACA,YACA,YACA,UACA,WACA,UACA,YACA,QACA,SACA,WACA,WACA,YACA,WACA,WACA,WACA,YACA,UACA,WACA,YACA,SACA,WACA,WACA,WACA,YACA,WACA,QACA,UACA,WACA,YACA,YACA,YACA,UACA,UACA,UACA,QACA,UACA,OACA,SACA,QACA,UACA,YACA,QACA,SACA,YACA,WACA,UACA,WACA,YACA,OACA,UACA,SACA,QACA,QACA,SACA,WACA,SACA,WACA,SACA,OACA,WACA,WACA,YACA,YACA,YACA,SACA,SACA,YACA,WACA,UACA,WACA,WACA,WACA,YACA,YACA,WACA,WACA,YACA,UACA,WACA,YACA,YACA,UACA,WACA,OACA,OACA,QACA,UACA,YACA,UACA,QACA,UACA,YACA,QACA,SACA,SACA,SACA,UACA,UACA,WACA,WACA,UACA,YACA,QACA,WACA,QACA,SACA,SACA,YACA,QACA,WACA,SACA,UACA,UACA,UACA,UACA,QACA,YACA,WACA,WACA,UACA,WACA,SACA,SACA,WACA,OACA,MACA,OACA,OACA,OACA,QACA,SACA,WACA,SACA,QACA,YACA,WACA,UACA,SACA,YACA,WACA,YACA,WACA,WACA,SACA,SACA,YACA,YACA,SACA,WACA,SACA,OACA,SACA,UACA,WACA,WACA,SACA,SACA,SACA,UACA,SACA,YACA,UACA,QACA,OACA,UACA,OACA,SACA,YACA,MACA,SACA,UACA,WACA,YACA,WACA,YACA,YACA,YACA,SACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,MACA,UACA,QACA,OACA,OACA,MACA,WACA,WACA,WACA,UACA,YACA,YACA,WACA,WACA,WACA,SACA,QACA,OACA,QACA,WACA,SACA,SACA,YACA,WACA,WACA,QACA,YACA,WACA,UACA,WACA,UACA,YACA,WACA,UACA,YACA,WACA,WACA,WACA,YACA,WACA,YACA,YACA,WACA,WACA,WACA,SACA,SACA,YACA,UACA,WACA,YACA,YACA,WACA,SACA,UACA,YACA,YACA,WACA,UACA,YACA,YACA,QACA,WACA,YACA,WACA,SACA,WACA,YACA,YACA,WACA,UACA,YACA,UACA,WACA,YACA,WACA,UACA,YACA,YACA,YACA,UACA,YACA,SACA,WACA,SACA,SACA,MACA,OACA,SACA,OACA,QACA,MACA,OACA,YACA,WACA,YACA,YACA,WACA,WACA,UACA,WACA,WACA,YACA,YACA,UACA,QACA,UACA,YACA,UACA,OACA,YACA,SACA,QACA,MACA,MACA,SACA,SACA,YACA,UACA,WACA,YACA,SACA,YACA,WACA,MACA,UACA,UACA,SACA,UACA,UACA,WACA,QACA,OACA,QACA,UACA,UACA,OACA,UACA,YACA,OACA,OACA,YACA,UACA,QACA,SACA,SACA,MACA,QACA,SACA,QACA,SACA,WACA,OACA,UACA,UACA,MACA,SACA,YACA,SACA,UACA,OACA,UACA,WACA,WACA,YACA,QACA,OACA,MACA,SACA,WACA,YACA,SACA,UACA,WACA,YACA,WACA,QACA,YACA,WACA,YACA,OACA,SACA,WACA,UACA,QACA,YACA,QACA,UACA,UACA,OACA,SACA,QACA,OACA,WACA,WACA,OACA,SACA,UACA,SACA,UACA,WACA,SACA,QACA,OACA,UACA,YACA,UACA,SACA,WACA,WACA,QACA,WACA,UACA,SACA,QACA,QACA,SACA,WACA,OACA,MACA,OACA,SACA,OACA,WACA,WACA,SACA,OACA,OACA,WACA,WACA,YACA,WACA,OACA,SACA,SACA,WACA,SACA,WACA,UACA,UACA,UACA,OACA,UACA,UACA,YACA,WACA,SACA,UACA,UACA,OACA,SACA,QACA,OACA,UACA,WACA,OACA,QACA,WACA,QACA,QACA,QACA,SACA,UACA,QACA,OACA,UACA,UACA,WACA,YACA,WACA,SACA,SACA,QACA,UACA,WACA,SACA,UACA,SACA,OACA,OACA,QACA,SACA,WACA,WACA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,YACA,YACA,WACA,YACA,WACA,YACA,QACA,UACA,SACA,QACA,SACA,UACA,SACA,OACA,QACA,OACA,OACA,QACA,OACA,QACA,OACA,SACA,WACA,UACA,SACA,WACA,SACA,UACA,UACA,SACA,WACA,SACA,WACA,SACA,WACA,OACA,WACA,OACA,SACA,QACA,SACA,SACA,WACA,UACA,UACA,YACA,OACA,UACA,SACA,YACA,UACA,QACA,OACA,SACA,OACA,OACA,UACA,SACA,UACA,YACA,WACA,SACA,UACA,QACA,WACA,SACA,WACA,YACA,YACA,SACA,UACA,YACA,UACA,UACA,WACA,MACA,OACA,SACA,UACA,UACA,WACA,SACA,WACA,WACA,SACA,QACA,QACA,OACA,OACA,UACA,YACA,QACA,QACA,UACA,WACA,OACA,QACA,WACA,WACA,SACA,SACA,WACA,UACA,OACA,OACA,MACA,UACA,UACA,SACA,OACA,OACA,WACA,YACA,SACA,SACA,SACA,UACA,QACA,SACA,QACA,YACA,UACA,SACA,SACA,YACA,YACA,QACA,UACA,YACA,WACA,YACA,YACA,SACA,WACA,UACA,SACA,YACA,WACA,YACA,UACA,UACA,SACA,QACA,WACA,WACA,YACA,YACA,OACA,QACA,OACA,YACA,OACA,SACA,WACA,SACA,YACA,UACA,YACA,WACA,QACA,YACA,SACA,QACA,YACA,WACA,WACA,SACA,WACA,WACA,QACA,OACA,UACA,YACA,WACA,UACA,SACA,UACA,WACA,QACA,YACA,WACA,YACA,YACA,YACA,UACA,YACA,WACA,WACA,SACA,WACA,UACA,YACA,WACA,WACA,QACA,YACA,SACA,YACA,OACA,OACA,SACA,UACA,YACA,UACA,WACA,UACA,WACA,UACA,YACA,WACA,SACA,SACA,QACA,QACA,YACA,UACA,UACA,UACA,YACA,WACA,YACA,SACA,UACA,UACA,YACA,QACA,UACA,SACA,UACA,QACA,WACA,SACA,SACA,SACA,OACA,MACA,WACA,YACA,UACA,UACA,WACA,QACA,QACA,YACA,YACA,SACA,WACA,SACA,SACA,UACA,WACA,SACA,YACA,SACA,UACA,SACA,QACA,YACA,SACA,YACA,YACA,UACA,SACA,YACA,SACA,UACA,WACA,SACA,UACA,UACA,UACA,YACA,WACA,UACA,WACA,YACA,WACA,WACA,YACA,OACA,SACA,YACA,YACA,SACA,SACA,SACA,SACA,WACA,WACA,WACA,QACA,WACA,WACA,UACA,QACA,SACA,YACA,SACA,UACA,SACA,WACA,WACA,UACA,QACA,SACA,SACA,WACA,SACA,UACA,YACA,SACA,UACA,YACA,WACA,QACA,WACA,OACA,YACA,WACA,WACA,UACA,MACA,YACA,SACA,WACA,WACA,YACA,YACA,YACA,WACA,UACA,UACA,WACA,WACA,WACA,YACA,WACA,WACA,WACA,WACA,WACA,WACA,UACA,YACA,UACA,WACA,UACA,YACA,QACA,SACA,WACA,SACA,YACA,WACA,UACA,WACA,YACA,YACA,YACA,WACA,MACA,SACA,WACA,UACA,YACA,WACA,WACA,WACA,QACA,YACA,WACA,YACA,YACA,UACA,WACA,SACA,QACA,OACA,WACA,YACA,SACA,WACA,YACA,SACA,YACA,QACA,QACA,YACA,WACA,UACA,WACA,UACA,WACA,QACA,YACA,YACA,QACA,QACA,UACA,OACA,QACA,SACA,QACA,SACA,OACA,OACA,MACA,MACA,WACA,QACA,OACA,SACA,UACA,WACA,WACA,YACA,YACA,SACA,WACA,QACA,YACA,UACA,QACA,QACA,WACA,UACA,YACA,SACA,QACA,YACA,QACA,YACA,WACA,SACA,UACA,YACA,WACA,QACA,QACA,SACA,YACA,QACA,UACA,UACA,SACA,YACA,QACA,UACA,SACA,WACA,OACA,YACA,YACA,SACA,OACA,SACA,SACA,SACA,UACA,YACA,UACA,OACA,QACA,MACA,OACA,OACA,SACA,QACA,YACA,OACA,SACA,SACA,UACA,QACA,SACA,UACA,YACA,WACA,SACA,WACA,UACA,SACA,WACA,WACA,WACA,YACA,OACA,SACA,UACA,SACA,WACA,SACA,WACA,SACA,YACA,SACA,SACA,WACA,WACA,YACA,WACA,YACA,YACA,UACA,UACA,OACA,SACA,OACA,UACA,QACA,OACA,MACA,YACA,SACA,WACA,WACA,SACA,UACA,QACA,OACA,SACA,WACA,WACA,QACA,QACA,SACA,SACA,WACA,YACA,QACA,WACA,QACA,UACA,SACA,UACA,SACA,UACA,SACA,UACA,SACA,WACA,UACA,WACA,YACA,UACA,WACA,WACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,WACA,YACA,QACA,SACA,QACA,MACA,MACA,QACA,MACA,YACA,WACA,WACA,SACA,WACA,UACA,WACA,YACA,SACA,YACA,OACA,UACA,YACA,YACA,WACA,YACA,WACA,YACA,YACA,WACA,WACA,YACA,WACA,SACA,YACA,SACA,UACA,YACA,YACA,WACA,WACA,SACA,QACA,SACA,UACA,SACA,UACA,UACA,OACA,MACA,OACA,WACA,OACA,MACA,QACA,WACA,QACA,OACA,UACA,WACA,OACA,WACA,UACA,WACA,UACA,QACA,SACA,WACA,OACA,WACA,QACA,UACA,YACA,UACA,OACA,SACA,OACA,OACA,OACA,OACA,UACA,OACA,OACA,WACA,UACA,YACA,YACA,YACA,WACA,QACA,UACA,WACA,SACA,WACA,WACA,YACA,YACA,MACA,YACA,UACA,QACA,QACA,OACA,QACA,QACA,SACA,UACA,SACA,WACA,WACA,WACA,WACA,UACA,WACA,UACA,WACA,WACA,QACA,WACA,SACA,WACA,WACA,UACA,WACA,SACA,UACA,SACA,UACA,UACA,WACA,WACA,UACA,YACA,YACA,UACA,UACA,SACA,UACA,UACA,WACA,WACA,WACA,UACA,WACA,WACA,WACA,YACA,WACA,YACA,YACA,WACA,WACA,UACA,WACA,SACA,OACA,QACA,OACA,UACA,UACA,WACA,UACA,WACA,WACA,YACA,YACA,WACA,YACA,WACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,UACA,YACA,YACA,YACA,UACA,WACA,WACA,WACA,WACA,YACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,YACA,WACA,YACA,WACA,UACA,UACA,WACA,WACA,WACA,YACA,YACA,WACA,UACA,YACA,WACA,YACA,YACA,WACA,YACA,YACA,WACA,WACA,WACA,UACA,YACA,WACA,YACA,YACA,YACA,WACA,YACA,YACA,WACA,WACA,YACA,YACA,YACA,WACA,YACA,WACA,UACA,WACA,WACA,WACA,UACA,YACA,WACA,YACA,MACA,SACA,UACA,YACA,UACA,YACA,SACA,WACA,SACA,QACA,QACA,YACA,UACA,WACA,WACA,WACA,SACA,SACA,UACA,SACA,WACA,UACA,QACA,QACA,SACA,UACA,SACA,YACA,OACA,WACA,YACA,SACA,WACA,WACA,UACA,WACA,SACA,UACA,WACA,QACA,WACA,OACA,YACA,QACA,UACA,WACA,YACA,UACA,YACA,SACA,QACA,YACA,YACA,SACA,QACA,UACA,UACA,WACA,YACA,SACA,UACA,YACA,WACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,WACA,WACA,YACA,SACA,UACA,YACA,SACA,SACA,QACA,UACA,UACA,SACA,WACA,SACA,SACA,UACA,UACA,UACA,SACA,UACA,YACA,SACA,UACA,YACA,QACA,WACA,WACA,UACA,WACA,YACA,WACA,UACA,UACA,UACA,YACA,WACA,WACA,WACA,QACA,SACA,SACA,UACA,SACA,WACA,UACA,QACA,YACA,SACA,WACA,YACA,OACA,WACA,UACA,QACA,YACA,UACA,SACA,YACA,YACA,SACA,WACA,QACA,YACA,WACA,SACA,SACA,UACA,UACA,WACA,SACA,QACA,QACA,SACA,UACA,WACA,UACA,SACA,SACA,QACA,SACA,WACA,WACA,YACA,WACA,WACA,YACA,WACA,UACA,SACA,OACA,SACA,WACA,UACA,SACA,UACA,UACA,YACA,WACA,UACA,YACA,QACA,SACA,UACA,WACA,YACA,MACA,WACA,UACA,QACA,YACA,YACA,YACA,YACA,UACA,YACA,SACA,WACA,UACA,YACA,QACA,OACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,QACA,OACA,YACA,YACA,SACA,YACA,QACA,SACA,WACA,QACA,YACA,SACA,YACA,YACA,QACA,UACA,UACA,SACA,UACA,YACA,SACA,UACA,YACA,QACA,YACA,QACA,SACA,WACA,UACA,UACA,WACA,QACA,UACA,QACA,SACA,UACA,UACA,SACA,WACA,UACA,WACA,WACA,UACA,WACA,YACA,YACA,WACA,WACA,SACA,UACA,YACA,YACA,UACA,WACA,YACA,WACA,UACA,UACA,WACA,UACA,YACA,WACA,QACA,WACA,QACA,SACA,YACA,SACA,WACA,YACA,UACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,UACA,WACA,SACA,OACA,YACA,UACA,QACA,MACA,OACA,OACA,OACA,UACA,UACA,WACA,YACA,SACA,QACA,SACA,QACA,SACA,QACA,SACA,SACA,QACA,SACA,WACA,QACA,OACA,YACA,UACA,YACA,UACA,SACA,OACA,OACA,UACA,OACA,SACA,SACA,QACA,WACA,WACA,UACA,WACA,YACA,OACA,SACA,WACA,WACA,SACA,YACA,WACA,UACA,SACA,WACA,QACA,OACA,SACA,WACA,WACA,SACA,UACA,SACA,UACA,WACA,SACA,SACA,UACA,YACA,UACA,UACA,QACA,SACA,WACA,QACA,UACA,OACA,WACA,YACA,UACA,QACA,SACA,MACA,WACA,SACA,WACA,UACA,WACA,YACA,SACA,UACA,WACA,YACA,UACA,WACA,WACA,UACA,YACA,UACA,SACA,WACA,YACA,UACA,UACA,SACA,YACA,YACA,UACA,YACA,WACA,YACA,YACA,SACA,UACA,WACA,WACA,UACA,WACA,YACA,WACA,UACA,SACA,UACA,SACA,YACA,YACA,YACA,SACA,UACA,YACA,UACA,QACA,UACA,YACA,UACA,YACA,YACA,WACA,UACA,SACA,UACA,UACA,YACA,UACA,UACA,WACA,SACA,YACA,WACA,QACA,SACA,YACA,UACA,UACA,SACA,QACA,WACA,QACA,QACA,QACA,SACA,SACA,WACA,UACA,UACA,YACA,QACA,YACA,WACA,WACA,YACA,QACA,UACA,YACA,UACA,YACA,UACA,WACA,YACA,WACA,WACA,UACA,UACA,UACA,UACA,YACA,YACA,YACA,UACA,WACA,YACA,UACA,YACA,UACA,WACA,YACA,WACA,YACA,YACA,YACA,WACA,YACA,WACA,WACA,QACA,QACA,YACA,SACA,WACA,YACA,SACA,YACA,WACA,WACA,YACA,WACA,UACA,QACA,UACA,YACA,WACA,SACA,YACA,YACA,WACA,WACA,QACA,WACA,SACA,SACA,WACA,WACA,YACA,WACA,UACA,UACA,YACA,YACA,UACA,UACA,WACA,YACA,QACA,SACA,QACA,YACA,QACA,UACA,MACA,UACA,SACA,YACA,SACA,SACA,MACA,OACA,YACA,OACA,UACA,QACA,YACA,OACA,SACA,SACA,QACA,WACA,YACA,YACA,UACA,WACA,OACA,QACA,SACA,QACA,WACA,YACA,WACA,SACA,WACA,YACA,QACA,UACA,WACA,SACA,SACA,UACA,SACA,SACA,WACA,YACA,OACA,QACA,YACA,WACA,UACA,WACA,WACA,YACA,SACA,YACA,UACA,WACA,UACA,SACA,QACA,UACA,OACA,SACA,WACA,UACA,YACA,SACA,QACA,WACA,QACA,WACA,QACA,UACA,YACA,YACA,UACA,UACA,QACA,UACA,UACA,SACA,YACA,YACA,WACA,UACA,SACA,QACA,UACA,UACA,YACA,YACA,YACA,QACA,QACA,QACA,UACA,YACA,QACA,OACA,SACA,YACA,WACA,YACA,QACA,QACA,OACA,SACA,SACA,OACA,SACA,QACA,SACA,WACA,YACA,WACA,YACA,WACA,QACA,SACA,SACA,OACA,OACA,SACA,SACA,UACA,SACA,UACA,UACA,WACA,UACA,SACA,OACA,SACA,QACA,SACA,WACA,OACA,SACA,QACA,YACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,QACA,OACA,SACA,SACA,OACA,UACA,SACA,QACA,SACA,SACA,UACA,YACA,WACA,QACA,YACA,WACA,WACA,UACA,WACA,OACA,YACA,WACA,UACA,YACA,YACA,YACA,WACA,SACA,WACA,WACA,WACA,UACA,YACA,SACA,QACA,UACA,SACA,SACA,UACA,SACA,UACA,UACA,WACA,WACA,SACA,SACA,YACA,SACA,SACA,SACA,SACA,YACA,YACA,UACA,SACA,WACA,UACA,WACA,YACA,UACA,YACA,YACA,SACA,YACA,UACA,YACA,YACA,YACA,SACA,SACA,UACA,SACA,WACA,WACA,SACA,YACA,YACA,UACA,WACA,WACA,YACA,WACA,UACA,UACA,UACA,YACA,YACA,UACA,YACA,SACA,YACA,UACA,WACA,WACA,WACA,YACA,YACA,SACA,SACA,UACA,SACA,WACA,WACA,WACA,WACA,YACA,UACA,UACA,WACA,UACA,UACA,YACA,SACA,YACA,YACA,UACA,SACA,WACA,YACA,SACA,SACA,UACA,UACA,SACA,SACA,SACA,WACA,YACA,WACA,UACA,YACA,UACA,UACA,WACA,YACA,QACA,SACA,SACA,YACA,YACA,UACA,YACA,UACA,YACA,SACA,WACA,UACA,YACA,YACA,UACA,WACA,WACA,QACA,QACA,UACA,UACA,YACA,WACA,WACA,WACA,UACA,QACA,UACA,YACA,UACA,SACA,SACA,SACA,WACA,SACA,YACA,OACA,SACA,SACA,UACA,UACA,WACA,SACA,WACA,WACA,YACA,YACA,QACA,UACA,YACA,SACA,UACA,SACA,YACA,UACA,UACA,UACA,WACA,SACA,WACA,YACA,YACA,WACA,YACA,YACA,UACA,UACA,WACA,WACA,YACA,WACA,SACA,SACA,SACA,WACA,UACA,SACA,UACA,YACA,YACA,UACA,SACA,SACA,WACA,YACA,SACA,WACA,WACA,SACA,WACA,UACA,SACA,UACA,QACA,WACA,SACA,YACA,SACA,YACA,YACA,UACA,UACA,WACA,YACA,YACA,YACA,OACA,UACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,UACA,UACA,YACA,UACA,QACA,SACA,WACA,UACA,SACA,WACA,WACA,WACA,WACA,SACA,SACA,QACA,UACA,UACA,YACA,YACA,YACA,WACA,WACA,UACA,WACA,YACA,YACA,YACA,SACA,WACA,WACA,WACA,WACA,SACA,WACA,UACA,WACA,SACA,SACA,WACA,YACA,YACA,SACA,WACA,YACA,SACA,YACA,YACA,UACA,UACA,UACA,UACA,WACA,SACA,SACA,WACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,YACA,YACA,QACA,SACA,UACA,SACA,UACA,UACA,WACA,QACA,SACA,UACA,UACA,UACA,SACA,UACA,YACA,WACA,WACA,UACA,YACA,YACA,SACA,YACA,SACA,WACA,UACA,YACA,UACA,UACA,WACA,YACA,SACA,SACA,WACA,YACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,UACA,QACA,SACA,UACA,OACA,SACA,SACA,WACA,UACA,UACA,WACA,SACA,OACA,SACA,UACA,OACA,UACA,QACA,QACA,UACA,SACA,OACA,OACA,QACA,UACA,OACA,UACA,WACA,WACA,UACA,SACA,WACA,UACA,OACA,SACA,OACA,UACA,UACA,QACA,QACA,YACA,WACA,YACA,YACA,UACA,WACA,SACA,UACA,QACA,UACA,OACA,QACA,WACA,SACA,WACA,SACA,SACA,WACA,YACA,UACA,WACA,YACA,WACA,QACA,QACA,QACA,OACA,OACA,SACA,SACA,OACA,SACA,UACA,UACA,WACA,WACA,WACA,YACA,UACA,YACA,UACA,UACA,QACA,SACA,QACA,SACA,SACA,UACA,SACA,UACA,OACA,SACA,SACA,MACA,SACA,OACA,SACA,WACA,UACA,QACA,YACA,UACA,SACA,UACA,QACA,OACA,SACA,UACA,QACA,OACA,OACA,OACA,MACA,UACA,WACA,YACA,SACA,YACA,SACA,YACA,UACA,WACA,QACA,UACA,SACA,YACA,YACA,SACA,WACA,UACA,OACA,OACA,UACA,QACA,OACA,QACA,OACA,QACA,SACA,WACA,SACA,SACA,QACA,SACA,QACA,OACA,WACA,SACA,UACA,YACA,YACA,OACA,SACA,WACA,WACA,WACA,YACA,SACA,UACA,WACA,UACA,YACA,UACA,SACA,WACA,UACA,UACA,YACA,UACA,YACA,YACA,WACA,QACA,WACA,YACA,OACA,QACA,UACA,YACA,QACA,UACA,YACA,UACA,OACA,YACA,QACA,UACA,WACA,QACA,YACA,YACA,UACA,WACA,WACA,YACA,QACA,QACA,SACA,UACA,QACA,UACA,SACA,QACA,YACA,MACA,UACA,SACA,UACA,WACA,QACA,UACA,WACA,UACA,WACA,OACA,UACA,UACA,WACA,QACA,YACA,SACA,WACA,YACA,SACA,QACA,UACA,YACA,WACA,QACA,YACA,SACA,WACA,YACA,SACA,WACA,YACA,WACA,UACA,UACA,YACA,QACA,QACA,WACA,QACA,QACA,UACA,QACA,SACA,YACA,YACA,SACA,YACA,SACA,UACA,QACA,WACA,SACA,YACA,UACA,WACA,WACA,SACA,WACA,WACA,WACA,YACA,YACA,QACA,UACA,UACA,SACA,WACA,SACA,WACA,YACA,SACA,SACA,UACA,YACA,WACA,WACA,UACA,UACA,WACA,QACA,QACA,WACA,YACA,SACA,UACA,WACA,YACA,YACA,SACA,UACA,SACA,YACA,SACA,UACA,WACA,WACA,QACA,SACA,WACA,WACA,WACA,SACA,WACA,UACA,UACA,UACA,SACA,WACA,YACA,YACA,WACA,OACA,UACA,WACA,WACA,YACA,YACA,UACA,WACA,YACA,SACA,UACA,OACA,SACA,WACA,YACA,YACA,YACA,YACA,WACA,QACA,YACA,SACA,SACA,SACA,WACA,YACA,SACA,SACA,YACA,UACA,WACA,QACA,UACA,UACA,SACA,WACA,UACA,UACA,SACA,WACA,QACA,YACA,YACA,UACA,UACA,WACA,SACA,QACA,SACA,UACA,YACA,UACA,SACA,QACA,QACA,WACA,UACA,YACA,UACA,QACA,QACA,UACA,UACA,QACA,UACA,WACA,QACA,SACA,QACA,UACA,QACA,YACA,UACA,UACA,UACA,YACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,UACA,SACA,WACA,SACA,SACA,UACA,WACA,YACA,SACA,UACA,SACA,UACA,QACA,UACA,YACA,UACA,QACA,OACA,QACA,YACA,QACA,QACA,WACA,UACA,WACA,WACA,QACA,WACA,YACA,WACA,UACA,UACA,YACA,YACA,UACA,YACA,SACA,YACA,SACA,QACA,QACA,UACA,WACA,WACA,SACA,WACA,UACA,UACA,QACA,UACA,YACA,YACA,WACA,QACA,SACA,WACA,WACA,YACA,WACA,SACA,SACA,SACA,SACA,SACA,UACA,WACA,YACA,SACA,QACA,SACA,WACA,UACA,UACA,YACA,OACA,QACA,OACA,MACA,UACA,WACA,UACA,SACA,SACA,SACA,OACA,UACA,WACA,WACA,SACA,SACA,UACA,OACA,YACA,QACA,OACA,OACA,SACA,YACA,SACA,YACA,SACA,WACA,SACA,UACA,YACA,SACA,UACA,SACA,WACA,WACA,UACA,SACA,UACA,MACA,QACA,SACA,SACA,SACA,UACA,WACA,YACA,UACA,UACA,QACA,UACA,WACA,YACA,UACA,UACA,OACA,SACA,SACA,WACA,SACA,UACA,YACA,WACA,WACA,UACA,SACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,UACA,UACA,WACA,UACA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,SACA,YACA,UACA,WACA,WACA,QACA,UACA,WACA,WACA,UACA,QACA,YACA,UACA,OACA,UACA,UACA,WACA,YACA,SACA,QACA,OACA,UACA,QACA,WACA,YACA,UACA,WACA,QACA,UACA,OACA,OACA,QACA,QACA,QACA,SACA,QACA,YACA,SACA,SACA,UACA,QACA,SACA,YACA,UACA,WACA,YACA,WACA,WACA,QACA,WACA,YACA,SACA,OACA,OACA,SACA,WACA,SACA,SACA,UACA,WACA,SACA,OACA,YACA,UACA,SACA,OACA,OACA,QACA,QACA,MACA,QACA,UACA,YACA,UACA,WACA,UACA,QACA,WACA,QACA,YACA,QACA,QACA,QACA,UACA,QACA,OACA,SACA,YACA,YACA,UACA,QACA,UACA,SACA,UACA,SACA,SACA,WACA,YACA,SACA,WACA,QACA,UACA,UACA,OACA,QACA,QACA,SACA,QACA,QACA,SACA,WACA,QACA,QACA,UACA,WACA,SACA,UACA,SACA,QACA,UACA,UACA,QACA,QACA,WACA,YACA,YACA,UACA,YACA,WACA,WACA,YACA,YACA,YACA,WACA,UACA,WACA,WACA,YACA,WACA,QACA,OACA,QACA,UACA,SACA,WACA,QACA,YACA,YACA,WACA,YACA,UACA,WACA,UACA,WACA,SACA,YACA,YACA,WACA,YACA,SACA,QACA,YACA,UACA,WACA,YACA,UACA,WACA,QACA,OACA,SACA,YACA,SACA,SACA,QACA,SACA,QACA,QACA,UACA,SACA,UACA,UACA,WACA,UACA,WACA,QACA,SACA,WACA,YACA,UACA,YACA,WACA,YACA,UACA,WACA,SACA,WACA,WACA,SACA,WACA,WACA,WACA,UACA,WACA,UACA,UACA,WACA,SACA,SACA,YACA,SACA,SACA,UACA,QACA,WACA,SACA,QACA,QACA,QACA,WACA,SACA,SACA,WACA,YACA,UACA,UACA,WACA,SACA,UACA,SACA,QACA,SACA,SACA,SACA,QACA,QACA,QACA,SACA,YACA,YACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,UACA,WACA,WACA,QACA,SACA,WACA,SACA,WACA,WACA,YACA,SACA,WACA,YACA,YACA,WACA,UACA,YACA,QACA,WACA,WACA,SACA,SACA,SACA,YACA,UACA,YACA,YACA,SACA,QACA,UACA,QACA,QACA,UACA,WACA,WACA,YACA,UACA,WACA,YACA,YACA,YACA,WACA,WACA,UACA,UACA,QACA,QACA,QACA,SACA,WACA,YACA,SACA,UACA,WACA,WACA,YACA,UACA,QACA,WACA,UACA,YACA,UACA,WACA,SACA,WACA,UACA,WACA,UACA,YACA,UACA,UACA,WACA,QACA,QACA,SACA,YACA,SACA,UACA,SACA,UACA,YACA,UACA,QACA,YACA,WACA,WACA,YACA,QACA,QACA,QACA,YACA,WACA,YACA,YACA,UACA,OACA,SACA,UACA,OACA,SACA,UACA,YACA,YACA,WACA,YACA,UACA,OACA,QACA,UACA,UACA,YACA,SACA,WACA,YACA,QACA,YACA,YACA,UACA,WACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,UACA,YACA,OACA,SACA,QACA,QACA,QACA,QACA,QACA,YACA,YACA,YACA,UACA,QACA,QACA,SACA,QACA,QACA,YACA,YACA,WACA,UACA,UACA,WACA,YACA,WACA,UACA,YACA,YACA,QACA,QACA,QACA,WACA,UACA,WACA,YACA,WACA,WACA,YACA,YACA,WACA,WACA,YACA,WACA,UACA,QACA,QACA,SACA,SACA,SACA,WACA,YACA,QACA,SACA,UACA,SACA,WACA,SACA,SACA,SACA,SACA,WACA,SACA,WACA,SACA,SACA,WACA,YACA,WACA,YACA,SACA,YACA,UACA,WACA,QACA,SACA,QACA,UACA,UACA,UACA,WACA,SACA,QACA,UACA,UACA,SACA,QACA,UACA,WACA,SACA,UACA,YACA,QACA,QACA,UACA,UACA,WACA,QACA,SACA,WACA,SACA,UACA,YACA,UACA,WACA,SACA,QACA,YACA,YACA,YACA,UACA,WACA,WACA,WACA,YACA,UACA,WACA,SACA,WACA,UACA,YACA,WACA,YACA,YACA,WACA,SACA,UACA,WACA,YACA,YACA,YACA,UACA,YACA,YACA,UACA,UACA,WACA,YACA,YACA,UACA,WACA,SACA,WACA,WACA,UACA,SACA,SACA,YACA,UACA,YACA,OACA,UACA,SACA,SACA,OACA,WACA,YACA,UACA,SACA,YACA,WACA,QACA,UACA,QACA,WACA,WACA,WACA,SACA,UACA,UACA,UACA,SACA,OACA,SACA,WACA,YACA,SACA,YACA,YACA,YACA,WACA,WACA,WACA,WACA,YACA,YACA,SACA,WACA,SACA,UACA,YACA,UACA,YACA,SACA,WACA,UACA,YACA,YACA,SACA,UACA,WACA,UACA,UACA,UACA,UACA,WACA,UACA,YACA,YACA,WACA,SACA,WACA,UACA,YACA,WACA,QACA,UACA,UACA,WACA,YACA,YACA,OACA,YACA,UACA,YACA,OACA,WACA,QACA,OACA,QACA,QACA,QACA,QACA,QACA,SACA,UACA,UACA,YACA,YACA,UACA,WACA,WACA,WACA,UACA,WACA,QACA,QACA,SACA,SACA,UACA,UACA,QACA,SACA,QACA,QACA,QACA,WACA,WACA,YACA,WACA,UACA,UACA,WACA,UACA,WACA,WACA,YACA,YACA,QACA,SACA,UACA,UACA,QACA,WACA,SACA,SACA,YACA,UACA,YACA,UACA,SACA,WACA,QACA,OACA,UACA,WACA,UACA,UACA,WACA,UACA,YACA,MACA,UACA,OACA,SACA,SACA,WACA,OACA,QACA,SACA,WACA,QACA,SACA,OACA,SACA,UACA,UACA,UACA,WACA,UACA,WACA,WACA,UACA,UACA,OACA,YACA,SACA,SACA,UACA,QACA,SACA,SACA,WACA,OACA,SACA,QACA,YACA,UACA,QACA,WACA,SACA,WACA,SACA,QACA,SACA,QACA,OACA,OACA,UACA,YACA,OACA,QACA,QACA,WACA,WACA,UACA,UACA,YACA,QACA,SACA,WACA,UACA,UACA,YACA,WACA,WACA,QACA,UACA,QACA,QACA,SACA,UACA,WACA,WACA,YACA,YACA,UACA,WACA,SACA,QACA,QACA,QACA,WACA,SACA,SACA,WACA,YACA,SACA,SACA,SACA,WACA,SACA,YACA,SACA,WACA,YACA,YACA,UACA,WACA,OACA,QACA,WACA,WACA,OACA,YACA,UACA,QACA,QACA,QACA,SACA,WACA,UACA,OACA,QACA,UACA,UACA,YACA,YACA,WACA,UACA,OACA,SACA,OACA,OACA,QACA,SACA,UACA,YACA,UACA,SACA,WACA,SACA,SACA,WACA,SACA,WACA,OACA,UACA,OACA,SACA,SACA,SACA,UACA,YACA,SACA,SACA,SACA,QACA,UACA,QACA,WACA,UACA,QACA,UACA,YACA,UACA,UACA,WACA,YACA,QACA,UACA,SACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,WACA,UACA,YACA,UACA,UACA,WACA,QACA,QACA,SACA,WACA,WACA,OACA,YACA,WACA,YACA,UACA,QACA,SACA,OACA,UACA,UACA,YACA,SACA,SACA,QACA,WACA,SACA,QACA,WACA,YACA,WACA,UACA,YACA,UACA,UACA,WACA,WACA,WACA,UACA,YACA,SACA,WACA,WACA,UACA,QACA,SACA,YACA,WACA,UACA,YACA,UACA,WACA,WACA,UACA,OACA,SACA,WACA,UACA,UACA,UACA,WACA,WACA,SACA,WACA,UACA,UACA,YACA,SACA,WACA,QACA,SACA,QACA,QACA,UACA,QACA,SACA,YACA,UACA,WACA,WACA,YACA,QACA,MACA,QACA,WACA,UACA,UACA,UACA,MACA,UACA,QACA,SACA,WACA,QACA,SACA,UACA,WACA,WACA,YACA,OACA,SACA,UACA,SACA,SACA,OACA,QACA,OACA,MACA,QACA,QACA,QACA,WACA,SACA,YACA,SACA,QACA,QACA,UACA,YACA,OACA,WACA,QACA,QACA,QACA,YACA,UACA,UACA,WACA,SACA,SACA,UACA,SACA,QACA,OACA,QACA,WACA,YACA,QACA,YACA,WACA,SACA,YACA,SACA,YACA,YACA,WACA,UACA,YACA,YACA,YACA,YACA,YACA,UACA,UACA,UACA,YACA,WACA,SACA,SACA,WACA,WACA,YACA,YACA,UACA,WACA,YACA,UACA,YACA,WACA,WACA,YACA,WACA,WACA,WACA,UACA,WACA,WACA,YACA,UACA,YACA,YACA,UACA,UACA,SACA,YACA,YACA,UACA,QACA,SACA,UACA,SACA,YACA,WACA,WACA,YACA,WACA,WACA,WACA,SACA,YACA,YACA,WACA,UACA,UACA,UACA,UACA,YACA,UACA,YACA,WACA,QACA,YACA,UACA,YACA,SACA,YACA,YACA,WACA,WACA,YACA,YACA,WACA,WACA,YACA,WACA,YACA,YACA,UACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,YACA,YACA,YACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,UACA,SACA,YACA,UACA,YACA,WACA,UACA,WACA,UACA,SACA,WACA,SACA,YACA,UACA,WACA,YACA,WACA,YACA,WACA,UACA,YACA,SACA,YACA,YACA,YACA,SACA,WACA,UACA,YACA,UACA,WACA,WACA,YACA,YACA,UACA,WACA,YACA,SACA,YACA,WACA,WACA,YACA,WACA,WACA,WACA,WACA,SACA,UACA,WACA,YACA,YACA,WACA,YACA,UACA,WACA,YACA,UACA,YACA,WACA,YACA,WACA,UACA,YACA,SACA,SACA,UACA,WACA,UACA,UACA,YACA,YACA,QACA,YACA,YACA,YACA,YACA,YACA,QACA,WACA,YACA,SACA,WACA,OACA,YACA,WACA,WACA,UACA,SACA,YACA,YACA,UACA,UACA,UACA,WACA,WACA,YACA,UACA,SACA,YACA,YACA,YACA,YACA,UACA,WACA,WACA,QACA,YACA,WACA,WACA,WACA,YACA,YACA,UACA,WACA,WACA,YACA,UACA,SACA,YACA,WACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,UACA,WACA,UACA,YACA,UACA,WACA,YACA,UACA,YACA,WACA,UACA,YACA,YACA,WACA,YACA,SACA,WACA,SACA,YACA,WACA,UACA,WACA,WACA,YACA,WACA,YACA,YACA,YACA,YACA,WACA,SACA,YACA,WACA,UACA,WACA,UACA,YACA,YACA,SACA,SACA,YACA,YACA,YACA,WACA,SACA,YACA,YACA,WACA,SACA,YACA,YACA,UACA,SACA,YACA,SACA,WACA,WACA,SACA,SACA,WACA,UACA,WACA,YACA,YACA,UACA,WACA,WACA,YACA,WACA,WACA,SACA,WACA,YACA,SACA,YACA,YACA,WACA,WACA,WACA,YACA,YACA,YACA,WACA,YACA,WACA,WACA,SACA,WACA,WACA,SACA,WACA,WACA,YACA,WACA,WACA,YACA,YACA,WACA,YACA,YACA,WACA,YACA,UACA,YACA,YACA,WACA,WACA,WACA,SACA,UACA,WACA,YACA,UACA,UACA,YACA,WACA,UACA,WACA,WACA,SACA,QACA,QACA,UACA,WACA,WACA,YACA,SACA,YACA,YACA,YACA,YACA,UACA,YACA,SACA,UACA,WACA,UACA,UACA,WACA,SACA,UACA,WACA,WACA,YACA,WACA,YACA,WACA,WACA,YACA,UACA,WACA,YACA,SACA,WACA,YACA,UACA,QACA,YACA,SACA,WACA,YACA,SACA,UACA,YACA,YACA,YACA,SACA,YACA,WACA,UACA,UACA,YACA,YACA,QACA,SACA,UACA,WACA,YACA,SACA,UACA,UACA,WACA,SACA,SACA,SACA,WACA,YACA,SACA,OACA,QACA,UACA,WACA,UACA,SACA,SACA,UACA,SACA,UACA,WACA,UACA,UACA,WACA,WACA,UACA,SACA,UACA,SACA,WACA,SACA,SACA,UACA,QACA,SACA,WACA,UACA,SACA,SACA,YACA,UACA,SACA,QACA,UACA,OACA,YACA,OACA,QACA,QACA,UACA,UACA,UACA,SACA,SACA,QACA,UACA,SACA,SACA,WACA,WACA,WACA,YACA,UACA,YACA,UACA,QACA,SACA,SACA,YACA,QACA,UACA,SACA,SACA,WACA,UACA,YACA,WACA,WACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,WACA,SACA,WACA,OACA,QACA,SACA,YACA,SACA,WACA,SACA,WACA,UACA,SACA,YACA,WACA,WACA,YACA,UACA,QACA,QACA,YACA,WACA,UACA,UACA,SACA,QACA,UACA,SACA,YACA,WACA,UACA,OACA,SACA,OACA,UACA,OACA,WACA,YACA,SACA,QACA,OACA,WACA,UACA,QACA,WACA,SACA,UACA,WACA,YACA,WACA,UACA,UACA,YACA,WACA,UACA,UACA,YACA,WACA,SACA,SACA,QACA,QACA,UACA,WACA,QACA,OACA,YACA,UACA,WACA,UACA,UACA,SACA,WACA,UACA,QACA,QACA,WACA,WACA,UACA,WACA,YACA,UACA,YACA,QACA,WACA,WACA,UACA,WACA,QACA,UACA,OACA,WACA,SACA,UACA,UACA,QACA,SACA,UACA,QACA,QACA,SACA,YACA,MACA,QACA,SACA,QACA,QACA,QACA,SACA,QACA,OACA,SACA,OACA,UACA,SACA,SACA,QACA,OACA,UACA,SACA,UACA,SACA,WACA,YACA,YACA,WACA,YACA,UACA,SACA,SACA,YACA,UACA,UACA,WACA,YACA,UACA,OACA,UACA,QACA,QACA,WACA,SACA,OACA,WACA,SACA,OACA,QACA,QACA,WACA,QACA,YACA,SACA,QACA,WACA,UACA,QACA,WACA,UACA,WACA,SACA,MACA,OACA,SACA,QACA,SACA,QACA,QACA,YACA,UACA,OACA,OACA,YACA,WACA,UACA,SACA,WACA,WACA,WACA,WACA,SACA,WACA,SACA,YACA,UACA,SACA,YACA,OACA,OACA,QACA,UACA,OACA,OACA,UACA,SACA,WACA,SACA,OACA,QACA,WACA,SACA,OACA,SACA,OACA,OACA,WACA,QACA,UACA,SACA,SACA,WACA,SACA,MACA,OACA,YACA,YACA,YACA,YACA,YACA,UACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,UACA,UACA,YACA,QACA,YACA,YACA,QACA,QACA,QACA,MACA,UACA,QACA,SACA,WACA,UACA,WACA,SACA,UACA,UACA,UACA,UACA,QACA,UACA,UACA,YACA,UACA,WACA,UACA,YACA,UACA,OACA,QACA,QACA,MACA,UACA,UACA,OACA,OACA,OACA,WACA,WACA,SACA,WACA,QACA,UACA,OACA,MACA,YACA,UACA,QACA,MACA,SACA,QACA,QACA,OACA,SACA,SACA,OACA,QACA,MACA,UACA,QACA,MACA,WACA,OACA,YACA,QACA,YACA,UACA,UACA,QACA,OACA,MACA,SACA,SACA,OACA,SACA,YACA,YACA,UACA,q7CCjmPJ,IAAAU,EAAArgF,EAAA,KAEA2V,EAAA3V,EAAA,IAOAqU,EAAA,WAQI,SAAAA,EAAoB0R,EAAgCsX,EACxCswB,GADQprD,KAAAwjB,aAAgCxjB,KAAA86B,iBACxC96B,KAAAorD,uBAyFhB,OAvFIt5C,EAAApV,UAAAqhF,eAAA,WACI,OAAwB,MAApB/9E,KAAKg+E,YACEh+E,KAAKg+E,YACLh+E,KAAKgU,QACLhU,KAAKgU,QAET,MAGLlC,EAAApV,UAAAuhF,mBAAN,6GACyB,SAAMj+E,KAAK86B,eAAet8B,IAAI4U,EAAAnB,iBAAiBC,4BAYpE,OAZMgsE,EAAejvE,EAAAkF,OACf2sD,EAAOod,IACTnd,KAAM,KACNE,IAAK,KACLvmD,SAAU,KACVyjE,M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","file":"app/main.7c2e53863584b575d629.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t1: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([664,4]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export abstract class I18nService {\r\n locale: string;\r\n supportedTranslationLocales: string[];\r\n translationLocale: string;\r\n collator: Intl.Collator;\r\n t: (id: string, p1?: string, p2?: string, p3?: string) => string;\r\n translate: (id: string, p1?: string, p2?: string, p3?: string) => string;\r\n}\r\n","import { EnvironmentUrls } from '../models/domain/environmentUrls';\r\n\r\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\r\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\r\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\r\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\r\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\r\nimport { CipherRequest } from '../models/request/cipherRequest';\r\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\r\nimport { CollectionRequest } from '../models/request/collectionRequest';\r\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\r\nimport { EmailRequest } from '../models/request/emailRequest';\r\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\nimport { GroupRequest } from '../models/request/groupRequest';\r\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\r\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\r\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\r\nimport { KdfRequest } from '../models/request/kdfRequest';\r\nimport { KeysRequest } from '../models/request/keysRequest';\r\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\r\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\r\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\r\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\r\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\r\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\r\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\r\nimport { PasswordRequest } from '../models/request/passwordRequest';\r\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\r\nimport { PaymentRequest } from '../models/request/paymentRequest';\r\nimport { PreloginRequest } from '../models/request/preloginRequest';\r\nimport { RegisterRequest } from '../models/request/registerRequest';\r\nimport { SeatRequest } from '../models/request/seatRequest';\r\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\r\nimport { StorageRequest } from '../models/request/storageRequest';\r\nimport { TokenRequest } from '../models/request/tokenRequest';\r\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\r\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\r\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\r\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\r\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\r\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\r\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\r\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\r\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\r\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\r\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\r\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\r\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\r\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\r\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\r\n\r\nimport { BillingResponse } from '../models/response/billingResponse';\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport {\r\n CollectionGroupDetailsResponse,\r\n CollectionResponse,\r\n} from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { EventResponse } from '../models/response/eventResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n GroupDetailsResponse,\r\n GroupResponse,\r\n} from '../models/response/groupResponse';\r\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\r\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\r\nimport { ListResponse } from '../models/response/listResponse';\r\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\r\nimport { OrganizationResponse } from '../models/response/organizationResponse';\r\nimport {\r\n OrganizationUserDetailsResponse,\r\n OrganizationUserUserDetailsResponse,\r\n} from '../models/response/organizationUserResponse';\r\nimport { PreloginResponse } from '../models/response/preloginResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\r\nimport { SyncResponse } from '../models/response/syncResponse';\r\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\r\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\r\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\r\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\r\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\r\nimport {\r\n ChallengeResponse,\r\n TwoFactorU2fResponse,\r\n} from '../models/response/twoFactorU2fResponse';\r\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\r\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\r\n\r\nexport abstract class ApiService {\r\n urlsSet: boolean;\r\n apiBaseUrl: string;\r\n identityBaseUrl: string;\r\n\r\n setUrls: (urls: EnvironmentUrls) => void;\r\n postIdentityToken: (request: TokenRequest) => Promise;\r\n refreshIdentityToken: () => Promise;\r\n\r\n getProfile: () => Promise;\r\n getUserBilling: () => Promise;\r\n putProfile: (request: UpdateProfileRequest) => Promise;\r\n postPrelogin: (request: PreloginRequest) => Promise;\r\n postEmailToken: (request: EmailTokenRequest) => Promise;\r\n postEmail: (request: EmailRequest) => Promise;\r\n postPassword: (request: PasswordRequest) => Promise;\r\n postSecurityStamp: (request: PasswordVerificationRequest) => Promise;\r\n deleteAccount: (request: PasswordVerificationRequest) => Promise;\r\n getAccountRevisionDate: () => Promise;\r\n postPasswordHint: (request: PasswordHintRequest) => Promise;\r\n postRegister: (request: RegisterRequest) => Promise;\r\n postPremium: (data: FormData) => Promise;\r\n postReinstatePremium: () => Promise;\r\n postCancelPremium: () => Promise;\r\n postAccountStorage: (request: StorageRequest) => Promise;\r\n postAccountPayment: (request: PaymentRequest) => Promise;\r\n postAccountLicense: (data: FormData) => Promise;\r\n postAccountKey: (request: UpdateKeyRequest) => Promise;\r\n postAccountKeys: (request: KeysRequest) => Promise;\r\n postAccountVerifyEmail: () => Promise;\r\n postAccountVerifyEmailToken: (request: VerifyEmailRequest) => Promise;\r\n postAccountRecoverDelete: (request: DeleteRecoverRequest) => Promise;\r\n postAccountRecoverDeleteToken: (request: VerifyDeleteRecoverRequest) => Promise;\r\n postAccountKdf: (request: KdfRequest) => Promise;\r\n\r\n getFolder: (id: string) => Promise;\r\n postFolder: (request: FolderRequest) => Promise;\r\n putFolder: (id: string, request: FolderRequest) => Promise;\r\n deleteFolder: (id: string) => Promise;\r\n\r\n getCipher: (id: string) => Promise;\r\n getCipherAdmin: (id: string) => Promise;\r\n getCiphersOrganization: (organizationId: string) => Promise>;\r\n postCipher: (request: CipherRequest) => Promise;\r\n postCipherCreate: (request: CipherCreateRequest) => Promise;\r\n postCipherAdmin: (request: CipherCreateRequest) => Promise;\r\n putCipher: (id: string, request: CipherRequest) => Promise;\r\n putCipherAdmin: (id: string, request: CipherRequest) => Promise;\r\n deleteCipher: (id: string) => Promise;\r\n deleteCipherAdmin: (id: string) => Promise;\r\n deleteManyCiphers: (request: CipherBulkDeleteRequest) => Promise;\r\n putMoveCiphers: (request: CipherBulkMoveRequest) => Promise;\r\n putShareCipher: (id: string, request: CipherShareRequest) => Promise;\r\n putShareCiphers: (request: CipherBulkShareRequest) => Promise;\r\n putCipherCollections: (id: string, request: CipherCollectionsRequest) => Promise;\r\n putCipherCollectionsAdmin: (id: string, request: CipherCollectionsRequest) => Promise;\r\n postPurgeCiphers: (request: PasswordVerificationRequest, organizationId?: string) => Promise;\r\n postImportCiphers: (request: ImportCiphersRequest) => Promise;\r\n postImportOrganizationCiphers: (organizationId: string, request: ImportOrganizationCiphersRequest) => Promise;\r\n\r\n postCipherAttachment: (id: string, data: FormData) => Promise;\r\n postCipherAttachmentAdmin: (id: string, data: FormData) => Promise;\r\n deleteCipherAttachment: (id: string, attachmentId: string) => Promise;\r\n deleteCipherAttachmentAdmin: (id: string, attachmentId: string) => Promise;\r\n postShareCipherAttachment: (id: string, attachmentId: string, data: FormData,\r\n organizationId: string) => Promise;\r\n\r\n getCollectionDetails: (organizationId: string, id: string) => Promise;\r\n getUserCollections: () => Promise>;\r\n getCollections: (organizationId: string) => Promise>;\r\n getCollectionUsers: (organizationId: string, id: string) => Promise;\r\n postCollection: (organizationId: string, request: CollectionRequest) => Promise;\r\n putCollectionUsers: (organizationId: string, id: string, request: SelectionReadOnlyRequest[]) => Promise;\r\n putCollection: (organizationId: string, id: string, request: CollectionRequest) => Promise;\r\n deleteCollection: (organizationId: string, id: string) => Promise;\r\n deleteCollectionUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\r\n\r\n getGroupDetails: (organizationId: string, id: string) => Promise;\r\n getGroups: (organizationId: string) => Promise>;\r\n getGroupUsers: (organizationId: string, id: string) => Promise;\r\n postGroup: (organizationId: string, request: GroupRequest) => Promise;\r\n putGroup: (organizationId: string, id: string, request: GroupRequest) => Promise;\r\n putGroupUsers: (organizationId: string, id: string, request: string[]) => Promise;\r\n deleteGroup: (organizationId: string, id: string) => Promise;\r\n deleteGroupUser: (organizationId: string, id: string, organizationUserId: string) => Promise;\r\n\r\n getOrganizationUser: (organizationId: string, id: string) => Promise;\r\n getOrganizationUserGroups: (organizationId: string, id: string) => Promise;\r\n getOrganizationUsers: (organizationId: string) => Promise>;\r\n postOrganizationUserInvite: (organizationId: string, request: OrganizationUserInviteRequest) => Promise;\r\n postOrganizationUserReinvite: (organizationId: string, id: string) => Promise;\r\n postOrganizationUserAccept: (organizationId: string, id: string,\r\n request: OrganizationUserAcceptRequest) => Promise;\r\n postOrganizationUserConfirm: (organizationId: string, id: string,\r\n request: OrganizationUserConfirmRequest) => Promise;\r\n putOrganizationUser: (organizationId: string, id: string, request: OrganizationUserUpdateRequest) => Promise;\r\n putOrganizationUserGroups: (organizationId: string, id: string,\r\n request: OrganizationUserUpdateGroupsRequest) => Promise;\r\n deleteOrganizationUser: (organizationId: string, id: string) => Promise;\r\n\r\n getSync: () => Promise;\r\n postImportDirectory: (organizationId: string, request: ImportDirectoryRequest) => Promise;\r\n\r\n getSettingsDomains: () => Promise;\r\n putSettingsDomains: (request: UpdateDomainsRequest) => Promise;\r\n\r\n getTwoFactorProviders: () => Promise>;\r\n getTwoFactorOrganizationProviders: (organizationId: string) => Promise>;\r\n getTwoFactorAuthenticator: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorEmail: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorDuo: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorOrganizationDuo: (organizationId: string,\r\n request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorYubiKey: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorU2f: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorU2fChallenge: (request: PasswordVerificationRequest) => Promise;\r\n getTwoFactorRecover: (request: PasswordVerificationRequest) => Promise;\r\n putTwoFactorAuthenticator: (\r\n request: UpdateTwoFactorAuthenticatorRequest) => Promise;\r\n putTwoFactorEmail: (request: UpdateTwoFactorEmailRequest) => Promise;\r\n putTwoFactorDuo: (request: UpdateTwoFactorDuoRequest) => Promise;\r\n putTwoFactorOrganizationDuo: (organizationId: string,\r\n request: UpdateTwoFactorDuoRequest) => Promise;\r\n putTwoFactorYubiKey: (request: UpdateTwoFactorYubioOtpRequest) => Promise;\r\n putTwoFactorU2f: (request: UpdateTwoFactorU2fRequest) => Promise;\r\n deleteTwoFactorU2f: (request: UpdateTwoFactorU2fDeleteRequest) => Promise;\r\n putTwoFactorDisable: (request: TwoFactorProviderRequest) => Promise;\r\n putTwoFactorOrganizationDisable: (organizationId: string,\r\n request: TwoFactorProviderRequest) => Promise;\r\n postTwoFactorRecover: (request: TwoFactorRecoveryRequest) => Promise;\r\n postTwoFactorEmailSetup: (request: TwoFactorEmailRequest) => Promise;\r\n postTwoFactorEmail: (request: TwoFactorEmailRequest) => Promise;\r\n\r\n getOrganization: (id: string) => Promise;\r\n getOrganizationBilling: (id: string) => Promise;\r\n getOrganizationLicense: (id: string, installationId: string) => Promise;\r\n postOrganization: (request: OrganizationCreateRequest) => Promise;\r\n putOrganization: (id: string, request: OrganizationUpdateRequest) => Promise;\r\n postLeaveOrganization: (id: string) => Promise;\r\n postOrganizationLicense: (data: FormData) => Promise;\r\n postOrganizationLicenseUpdate: (id: string, data: FormData) => Promise;\r\n postOrganizationSeat: (id: string, request: SeatRequest) => Promise;\r\n postOrganizationStorage: (id: string, request: StorageRequest) => Promise;\r\n postOrganizationPayment: (id: string, request: PaymentRequest) => Promise;\r\n postOrganizationVerifyBank: (id: string, request: VerifyBankRequest) => Promise;\r\n postOrganizationCancel: (id: string) => Promise;\r\n postOrganizationReinstate: (id: string) => Promise;\r\n deleteOrganization: (id: string, request: PasswordVerificationRequest) => Promise;\r\n\r\n getEvents: (start: string, end: string, token: string) => Promise>;\r\n getEventsCipher: (id: string, start: string, end: string, token: string) => Promise>;\r\n getEventsOrganization: (id: string, start: string, end: string,\r\n token: string) => Promise>;\r\n getEventsOrganizationUser: (organizationId: string, id: string,\r\n start: string, end: string, token: string) => Promise>;\r\n\r\n getUserPublicKey: (id: string) => Promise;\r\n\r\n getActiveBearerToken: () => Promise;\r\n fetch: (request: Request) => Promise;\r\n}\r\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\r\n\nimport { I18nService } from '../../abstractions/i18n.service';\n\r\n@Pipe({\n name: 'i18n',\n})\r\nexport class I18nPipe implements PipeTransform {\n constructor(private i18nService: I18nService) { }\n\r\n transform(id: string, p1?: string, p2?: string, p3?: string): string {\r\n return this.i18nService.t(id, p1, p2, p3);\r\n }\r\n}\n","import { OrganizationData } from '../models/data/organizationData';\nimport { Organization } from '../models/domain/organization';\n\nimport { KdfType } from '../enums/kdfType';\n\nexport abstract class UserService {\n setInformation: (userId: string, email: string, kdf: KdfType, kdfIterations: number) => Promise;\n setSecurityStamp: (stamp: string) => Promise;\n getUserId: () => Promise;\n getEmail: () => Promise;\n getSecurityStamp: () => Promise;\n getKdf: () => Promise;\n getKdfIterations: () => Promise;\n clear: () => Promise;\n isAuthenticated: () => Promise;\n canAccessPremium: () => Promise;\n getOrganization: (id: string) => Promise;\n getAllOrganizations: () => Promise;\n replaceOrganizations: (organizations: { [id: string]: OrganizationData; }) => Promise;\n clearOrganizations: (userId: string) => Promise;\n}\n","import { DeviceType } from '../enums/deviceType';\r\n\r\nexport abstract class PlatformUtilsService {\r\n identityClientId: string;\r\n getDevice: () => DeviceType;\r\n getDeviceString: () => string;\r\n isFirefox: () => boolean;\r\n isChrome: () => boolean;\r\n isEdge: () => boolean;\r\n isOpera: () => boolean;\r\n isVivaldi: () => boolean;\r\n isSafari: () => boolean;\r\n isIE: () => boolean;\r\n isMacAppStore: () => boolean;\r\n analyticsId: () => string;\r\n isViewOpen: () => boolean;\r\n lockTimeout: () => number;\r\n launchUri: (uri: string, options?: any) => void;\r\n saveFile: (win: Window, blobData: any, blobOptions: any, fileName: string) => void;\r\n getApplicationVersion: () => string;\r\n supportsU2f: (win: Window) => boolean;\r\n supportsDuo: () => boolean;\r\n showToast: (type: 'error' | 'success' | 'warning' | 'info', title: string, text: string | string[],\r\n options?: any) => void;\r\n showDialog: (text: string, title?: string, confirmText?: string, cancelText?: string,\r\n type?: string) => Promise;\r\n eventTrack: (action: string, label?: string, options?: any) => void;\r\n isDev: () => boolean;\r\n isSelfHost: () => boolean;\r\n copyToClipboard: (text: string, options?: any) => void;\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\n@Injectable()\r\nexport class ValidationService {\r\n constructor(private i18nService: I18nService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n showError(data: any): string[] {\r\n const defaultErrorMessage = this.i18nService.t('unexpectedError');\r\n const errors: string[] = [];\r\n\r\n if (data != null && typeof data === 'string') {\r\n errors.push(data);\r\n } else if (data == null || typeof data !== 'object') {\r\n errors.push(defaultErrorMessage);\r\n } else if (data.validationErrors == null) {\r\n errors.push(data.message ? data.message : defaultErrorMessage);\r\n } else {\r\n for (const key in data.validationErrors) {\r\n if (!data.validationErrors.hasOwnProperty(key)) {\r\n continue;\r\n }\r\n\r\n data.validationErrors[key].forEach((item: string) => {\r\n let prefix = '';\r\n if (key.indexOf('[') > -1 && key.indexOf(']') > -1) {\r\n const lastSep = key.lastIndexOf('.');\r\n prefix = key.substr(0, lastSep > -1 ? lastSep : key.length) + ': ';\r\n }\r\n errors.push(prefix + item);\r\n });\r\n }\r\n }\r\n\r\n if (errors.length === 1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors[0]);\r\n } else if (errors.length > 1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), errors, {\r\n timeout: 5000 * errors.length,\r\n });\r\n }\r\n\r\n return errors;\r\n }\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { ValidationService } from '../services/validation.service';\r\n\r\n@Directive({\r\n selector: '[appApiAction]',\r\n})\r\nexport class ApiActionDirective implements OnChanges {\r\n @Input() appApiAction: Promise;\n\n constructor(private el: ElementRef, private validationService: ValidationService) { }\n\n ngOnChanges(changes: any) {\n if (this.appApiAction == null || this.appApiAction.then == null) {\r\n return;\r\n }\n\n this.el.nativeElement.loading = true;\n\r\n this.appApiAction.then((response: any) => {\n this.el.nativeElement.loading = false;\n }, (e: any) => {\n this.el.nativeElement.loading = false;\n this.validationService.showError(e);\n });\r\n }\r\n}\n","export abstract class MessagingService {\r\n send: (subscriber: string, arg?: any) => void;\r\n}\r\n","import { CipherString } from '../models/domain/cipherString';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\n\nimport { KdfType } from '../enums/kdfType';\n\nexport abstract class CryptoService {\n setKey: (key: SymmetricCryptoKey) => Promise;\n setKeyHash: (keyHash: string) => Promise<{}>;\n setEncKey: (encKey: string) => Promise<{}>;\n setEncPrivateKey: (encPrivateKey: string) => Promise<{}>;\n setOrgKeys: (orgs: ProfileOrganizationResponse[]) => Promise<{}>;\n getKey: () => Promise;\n getKeyHash: () => Promise;\n getEncKey: () => Promise;\n getPublicKey: () => Promise;\n getPrivateKey: () => Promise;\n getFingerprint: (userId: string, publicKey?: ArrayBuffer) => Promise;\n getOrgKeys: () => Promise>;\n getOrgKey: (orgId: string) => Promise;\n hasKey: () => Promise;\n hasEncKey: () => Promise;\n clearKey: () => Promise;\n clearKeyHash: () => Promise;\n clearEncKey: (memoryOnly?: boolean) => Promise;\n clearKeyPair: (memoryOnly?: boolean) => Promise;\n clearOrgKeys: (memoryOnly?: boolean) => Promise;\n clearKeys: () => Promise;\n toggleKey: () => Promise;\n makeKey: (password: string, salt: string, kdf: KdfType, kdfIterations: number) => Promise;\n makeShareKey: () => Promise<[CipherString, SymmetricCryptoKey]>;\n makeKeyPair: (key?: SymmetricCryptoKey) => Promise<[string, CipherString]>;\n hashPassword: (password: string, key: SymmetricCryptoKey) => Promise;\n makeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\n remakeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\n encrypt: (plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\n encryptToBytes: (plainValue: ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\n rsaEncrypt: (data: ArrayBuffer, publicKey?: ArrayBuffer) => Promise;\n decryptToBytes: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\n decryptToUtf8: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\n decryptFromBytes: (encBuf: ArrayBuffer, key: SymmetricCryptoKey) => Promise;\n randomNumber: (min: number, max: number) => Promise;\n}\n","import { CipherType } from '../enums/cipherType';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Field } from '../models/domain/field';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { AttachmentView } from '../models/view/attachmentView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FieldView } from '../models/view/fieldView';\r\n\r\nexport abstract class CipherService {\r\n decryptedCipherCache: CipherView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CipherView, key?: SymmetricCryptoKey, originalCipher?: Cipher) => Promise;\r\n encryptFields: (fieldsModel: FieldView[], key: SymmetricCryptoKey) => Promise;\r\n encryptField: (fieldModel: FieldView, key: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllDecryptedForGrouping: (groupingId: string, folder?: boolean) => Promise;\r\n getAllDecryptedForUrl: (url: string, includeOtherTypes?: CipherType[]) => Promise;\r\n getAllFromApiForOrganization: (organizationId: string) => Promise;\r\n getLastUsedForUrl: (url: string) => Promise;\r\n updateLastUsedDate: (id: string) => Promise;\r\n saveNeverDomain: (domain: string) => Promise;\r\n saveWithServer: (cipher: Cipher) => Promise;\r\n shareWithServer: (cipher: CipherView, organizationId: string, collectionIds: string[]) => Promise;\r\n shareManyWithServer: (ciphers: CipherView[], organizationId: string, collectionIds: string[]) => Promise;\r\n saveAttachmentWithServer: (cipher: Cipher, unencryptedFile: any, admin?: boolean) => Promise;\r\n saveAttachmentRawWithServer: (cipher: Cipher, filename: string, data: ArrayBuffer,\r\n admin?: boolean) => Promise;\r\n saveCollectionsWithServer: (cipher: Cipher) => Promise;\r\n upsert: (cipher: CipherData | CipherData[]) => Promise;\r\n replace: (ciphers: { [id: string]: CipherData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n moveManyWithServer: (ids: string[], folderId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n deleteManyWithServer: (ids: string[]) => Promise;\r\n deleteAttachment: (id: string, attachmentId: string) => Promise;\r\n deleteAttachmentWithServer: (id: string, attachmentId: string) => Promise;\r\n sortCiphersByLastUsed: (a: any, b: any) => number;\r\n sortCiphersByLastUsedThenName: (a: any, b: any) => number;\r\n getLocaleSortingFunction: () => (a: CipherView, b: CipherView) => number;\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\n@Component({\r\n selector: 'app-callout',\r\n templateUrl: 'callout.component.html',\r\n})\r\nexport class CalloutComponent implements OnInit {\r\n @Input() type = 'info';\r\n @Input() icon: string;\r\n @Input() title: string;\r\n\r\n calloutStyle: string;\r\n\r\n constructor(private i18nService: I18nService) { }\r\n\r\n ngOnInit() {\r\n this.calloutStyle = this.type;\r\n\r\n if (this.type === 'warning' || this.type === 'danger') {\r\n if (this.type === 'danger') {\r\n this.calloutStyle = 'danger';\r\n }\r\n if (this.title === undefined) {\r\n this.title = this.i18nService.t('warning');\r\n }\r\n if (this.icon === undefined) {\r\n this.icon = 'fa-warning';\r\n }\r\n } else if (this.type === 'error') {\r\n this.calloutStyle = 'danger';\r\n if (this.title === undefined) {\r\n this.title = this.i18nService.t('error');\r\n }\r\n if (this.icon === undefined) {\r\n this.icon = 'fa-bolt';\r\n }\r\n } else if (this.type === 'tip') {\r\n this.calloutStyle = 'success';\r\n if (this.title === undefined) {\r\n this.title = this.i18nService.t('tip');\r\n }\r\n if (this.icon === undefined) {\r\n this.icon = 'fa-lightbulb-o';\r\n }\r\n }\r\n }\r\n}\r\n","export abstract class StateService {\r\n get: (key: string) => Promise;\r\n save: (key: string, obj: any) => Promise;\r\n remove: (key: string) => Promise;\r\n purge: () => Promise;\r\n}\r\n","
\r\n

\r\n \r\n {{title}}\r\n

\r\n \r\n
\r\n","import * as papa from 'papaparse';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { LoginUriView } from '../models/view/loginUriView';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport abstract class BaseImporter {\r\n organization = false;\r\n\r\n protected newLineRegex = /(?:\\r\\n|\\r|\\n)/;\r\n\r\n protected passwordFieldNames = [\r\n 'password', 'pass word', 'passphrase', 'pass phrase',\r\n 'pass', 'code', 'code word', 'codeword',\r\n 'secret', 'secret word', 'personpwd',\r\n 'key', 'keyword', 'key word', 'keyphrase', 'key phrase',\r\n 'form_pw', 'wppassword', 'pin', 'pwd', 'pw', 'pword', 'passwd',\r\n 'p', 'serial', 'serial#', 'license key', 'reg #',\r\n\r\n // Non-English names\r\n 'passwort',\r\n ];\r\n\r\n protected usernameFieldNames = [\r\n 'user', 'name', 'user name', 'username', 'login name',\r\n 'email', 'e-mail', 'id', 'userid', 'user id',\r\n 'login', 'form_loginname', 'wpname', 'mail',\r\n 'loginid', 'login id', 'log', 'personlogin',\r\n 'first name', 'last name', 'card#', 'account #',\r\n 'member', 'member #',\r\n\r\n // Non-English names\r\n 'nom', 'benutzername',\r\n ];\r\n\r\n protected notesFieldNames = [\r\n 'note', 'notes', 'comment', 'comments', 'memo',\r\n 'description', 'free form', 'freeform',\r\n 'free text', 'freetext', 'free',\r\n\r\n // Non-English names\r\n 'kommentar',\r\n ];\r\n\r\n protected uriFieldNames: string[] = [\r\n 'url', 'hyper link', 'hyperlink', 'link',\r\n 'host', 'hostname', 'host name', 'server', 'address',\r\n 'hyper ref', 'href', 'web', 'website', 'web site', 'site',\r\n 'web-site', 'uri',\r\n\r\n // Non-English names\r\n 'ort', 'adresse',\r\n ];\r\n\r\n protected parseXml(data: string): Document {\r\n const parser = new DOMParser();\r\n const doc = parser.parseFromString(data, 'application/xml');\r\n return doc != null && doc.querySelector('parsererror') == null ? doc : null;\r\n }\r\n\r\n protected parseCsv(data: string, header: boolean): any[] {\r\n data = this.splitNewLine(data).join('\\n').trim();\r\n const result = papa.parse(data, {\r\n header: header,\r\n encoding: 'UTF-8',\r\n skipEmptyLines: false,\r\n });\r\n if (result.errors != null && result.errors.length > 0) {\r\n result.errors.forEach((e) => {\r\n if (e.row != null) {\r\n // tslint:disable-next-line\r\n console.warn('Error parsing row ' + e.row + ': ' + e.message);\r\n }\r\n });\r\n }\r\n return result.data && result.data.length > 0 ? result.data : null;\r\n }\r\n\r\n protected parseSingleRowCsv(rowData: string) {\r\n if (this.isNullOrWhitespace(rowData)) {\r\n return null;\r\n }\r\n const parsedRow = this.parseCsv(rowData, false);\r\n if (parsedRow != null && parsedRow.length > 0 && parsedRow[0].length > 0) {\r\n return parsedRow[0];\r\n }\r\n return null;\r\n }\r\n\r\n protected makeUriArray(uri: string | string[]): LoginUriView[] {\r\n if (uri == null) {\r\n return null;\r\n }\r\n\r\n if (typeof uri === 'string') {\r\n const loginUri = new LoginUriView();\r\n loginUri.uri = this.fixUri(uri);\r\n if (this.isNullOrWhitespace(loginUri.uri)) {\r\n return null;\r\n }\r\n loginUri.match = null;\r\n return [loginUri];\r\n }\r\n\r\n if (uri.length > 0) {\r\n const returnArr: LoginUriView[] = [];\r\n uri.forEach((u) => {\r\n const loginUri = new LoginUriView();\r\n loginUri.uri = this.fixUri(u);\r\n if (this.isNullOrWhitespace(loginUri.uri)) {\r\n return;\r\n }\r\n loginUri.match = null;\r\n returnArr.push(loginUri);\r\n });\r\n return returnArr.length === 0 ? null : returnArr;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n protected fixUri(uri: string) {\r\n if (uri == null) {\r\n return null;\r\n }\r\n uri = uri.toLowerCase().trim();\r\n if (uri.indexOf('://') === -1 && uri.indexOf('.') >= 0) {\r\n uri = 'http://' + uri;\r\n }\r\n if (uri.length > 1000) {\r\n return uri.substring(0, 1000);\r\n }\r\n return uri;\r\n }\r\n\r\n protected nameFromUrl(url: string) {\r\n const hostname = Utils.getHostname(url);\r\n if (this.isNullOrWhitespace(hostname)) {\r\n return null;\r\n }\r\n return hostname.startsWith('www.') ? hostname.replace('www.', '') : hostname;\r\n }\r\n\r\n protected isNullOrWhitespace(str: string): boolean {\r\n return str == null || typeof str !== 'string' || str.trim() === '';\r\n }\r\n\r\n protected getValueOrDefault(str: string, defaultValue: string = null): string {\r\n if (this.isNullOrWhitespace(str)) {\r\n return defaultValue;\r\n }\r\n return str;\r\n }\r\n\r\n protected splitNewLine(str: string): string[] {\r\n return str.split(this.newLineRegex);\r\n }\r\n\r\n // ref https://stackoverflow.com/a/5911300\r\n protected getCardBrand(cardNum: string) {\r\n if (this.isNullOrWhitespace(cardNum)) {\r\n return null;\r\n }\r\n\r\n // Visa\r\n let re = new RegExp('^4');\r\n if (cardNum.match(re) != null) {\r\n return 'Visa';\r\n }\r\n\r\n // Mastercard\r\n // Updated for Mastercard 2017 BINs expansion\r\n if (/^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$/\r\n .test(cardNum)) {\r\n return 'Mastercard';\r\n }\r\n\r\n // AMEX\r\n re = new RegExp('^3[47]');\r\n if (cardNum.match(re) != null) {\r\n return 'Amex';\r\n }\r\n\r\n // Discover\r\n re = new RegExp('^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)');\r\n if (cardNum.match(re) != null) {\r\n return 'Discover';\r\n }\r\n\r\n // Diners\r\n re = new RegExp('^36');\r\n if (cardNum.match(re) != null) {\r\n return 'Diners Club';\r\n }\r\n\r\n // Diners - Carte Blanche\r\n re = new RegExp('^30[0-5]');\r\n if (cardNum.match(re) != null) {\r\n return 'Diners Club';\r\n }\r\n\r\n // JCB\r\n re = new RegExp('^35(2[89]|[3-8][0-9])');\r\n if (cardNum.match(re) != null) {\r\n return 'JCB';\r\n }\r\n\r\n // Visa Electron\r\n re = new RegExp('^(4026|417500|4508|4844|491(3|7))');\r\n if (cardNum.match(re) != null) {\r\n return 'Visa';\r\n }\r\n\r\n return null;\r\n }\r\n\r\n protected moveFoldersToCollections(result: ImportResult) {\r\n result.folderRelationships.forEach((r) => result.collectionRelationships.push(r));\r\n result.collections = result.folders.map((f) => {\r\n const collection = new CollectionView();\r\n collection.name = f.name;\r\n return collection;\r\n });\r\n result.folderRelationships = [];\r\n result.folders = [];\r\n }\r\n\r\n protected querySelectorDirectChild(parentEl: Element, query: string) {\r\n const els = this.querySelectorAllDirectChild(parentEl, query);\r\n return els.length === 0 ? null : els[0];\r\n }\r\n\r\n protected querySelectorAllDirectChild(parentEl: Element, query: string) {\r\n return Array.from(parentEl.querySelectorAll(query)).filter((el) => el.parentNode === parentEl);\r\n }\r\n\r\n protected initLoginCipher() {\r\n const cipher = new CipherView();\r\n cipher.favorite = false;\r\n cipher.notes = '';\r\n cipher.fields = [];\r\n cipher.login = new LoginView();\r\n cipher.type = CipherType.Login;\r\n return cipher;\r\n }\r\n\r\n protected cleanupCipher(cipher: CipherView) {\r\n if (cipher == null) {\r\n return;\r\n }\r\n if (cipher.type !== CipherType.Login) {\r\n cipher.login = null;\r\n }\r\n if (this.isNullOrWhitespace(cipher.name)) {\r\n cipher.name = '--';\r\n }\r\n if (this.isNullOrWhitespace(cipher.notes)) {\r\n cipher.notes = null;\r\n } else {\r\n cipher.notes = cipher.notes.trim();\r\n }\r\n if (cipher.fields != null && cipher.fields.length === 0) {\r\n cipher.fields = null;\r\n }\r\n }\r\n\r\n protected processKvp(cipher: CipherView, key: string, value: string) {\r\n if (this.isNullOrWhitespace(value)) {\r\n return;\r\n }\r\n if (this.isNullOrWhitespace(key)) {\r\n key = '';\r\n }\r\n if (value.length > 200 || value.trim().search(this.newLineRegex) > -1) {\r\n if (cipher.notes == null) {\r\n cipher.notes = '';\r\n }\r\n cipher.notes += (key + ': ' + this.splitNewLine(value).join('\\n') + '\\n');\r\n } else {\r\n if (cipher.fields == null) {\r\n cipher.fields = [];\r\n }\r\n const field = new FieldView();\r\n field.type = FieldType.Text;\r\n field.name = key;\r\n field.value = value;\r\n cipher.fields.push(field);\r\n }\r\n }\r\n\r\n protected processFolder(result: ImportResult, folderName: string) {\r\n let folderIndex = result.folders.length;\r\n const hasFolder = !this.isNullOrWhitespace(folderName);\r\n let addFolder = hasFolder;\r\n\r\n if (hasFolder) {\r\n for (let i = 0; i < result.folders.length; i++) {\r\n if (result.folders[i].name === folderName) {\r\n addFolder = false;\r\n folderIndex = i;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (addFolder) {\r\n const f = new FolderView();\r\n f.name = folderName;\r\n result.folders.push(f);\r\n }\r\n if (hasFolder) {\r\n result.folderRelationships.push([result.ciphers.length, folderIndex]);\r\n }\r\n }\r\n\r\n protected convertToNoteIfNeeded(cipher: CipherView) {\r\n if (cipher.type === CipherType.Login && this.isNullOrWhitespace(cipher.login.username) &&\r\n this.isNullOrWhitespace(cipher.login.password) &&\r\n (cipher.login.uris == null || cipher.login.uris.length === 0)) {\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n }\r\n }\r\n}\r\n","import { CipherView } from '../view/cipherView';\nimport { CollectionView } from '../view/collectionView';\nimport { FolderView } from '../view/folderView';\n\nexport class ImportResult {\n success = false;\n errorMessage: string;\n ciphers: CipherView[] = [];\n folders: FolderView[] = [];\n folderRelationships: Array<[number, number]> = [];\n collections: CollectionView[] = [];\n collectionRelationships: Array<[number, number]> = [];\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopClick]',\r\n})\r\nexport class StopClickDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.preventDefault();\r\n }\r\n}\n","import * as tldjs from 'tldjs';\r\n\r\nimport { I18nService } from '../abstractions/i18n.service';\r\n\r\n// tslint:disable-next-line\r\nconst nodeURL = typeof window === 'undefined' ? require('url') : null;\r\n\r\nexport class Utils {\r\n static inited = false;\r\n static isNativeScript = false;\r\n static isNode = false;\r\n static isBrowser = true;\r\n static isMobileBrowser = false;\r\n static global: any = null;\r\n\r\n static init() {\r\n if (Utils.inited) {\r\n return;\r\n }\r\n\r\n Utils.inited = true;\r\n Utils.isNode = typeof process !== 'undefined' && (process as any).release != null &&\r\n (process as any).release.name === 'node';\r\n Utils.isBrowser = typeof window !== 'undefined';\r\n Utils.isNativeScript = !Utils.isNode && !Utils.isBrowser;\r\n Utils.isMobileBrowser = Utils.isBrowser && this.isMobile(window);\r\n Utils.global = Utils.isNativeScript ? global : (Utils.isNode && !Utils.isBrowser ? global : window);\r\n }\r\n\r\n static fromB64ToArray(str: string): Uint8Array {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return new Uint8Array(Buffer.from(str, 'base64'));\r\n } else {\r\n const binaryString = window.atob(str);\r\n const bytes = new Uint8Array(binaryString.length);\r\n for (let i = 0; i < binaryString.length; i++) {\r\n bytes[i] = binaryString.charCodeAt(i);\r\n }\r\n return bytes;\r\n }\r\n }\r\n\r\n static fromHexToArray(str: string): Uint8Array {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return new Uint8Array(Buffer.from(str, 'hex'));\r\n } else {\r\n const bytes = new Uint8Array(str.length / 2);\r\n for (let i = 0; i < str.length; i += 2) {\r\n bytes[i / 2] = parseInt(str.substr(i, 2), 16);\r\n }\r\n return bytes;\r\n }\r\n }\r\n\r\n static fromUtf8ToArray(str: string): Uint8Array {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return new Uint8Array(Buffer.from(str, 'utf8'));\r\n } else {\r\n const strUtf8 = unescape(encodeURIComponent(str));\r\n const arr = new Uint8Array(strUtf8.length);\r\n for (let i = 0; i < strUtf8.length; i++) {\r\n arr[i] = strUtf8.charCodeAt(i);\r\n }\r\n return arr;\r\n }\r\n }\r\n\r\n static fromByteStringToArray(str: string): Uint8Array {\r\n const arr = new Uint8Array(str.length);\r\n for (let i = 0; i < str.length; i++) {\r\n arr[i] = str.charCodeAt(i);\r\n }\r\n return arr;\r\n }\r\n\r\n static fromBufferToB64(buffer: ArrayBuffer): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(buffer).toString('base64');\r\n } else {\r\n let binary = '';\r\n const bytes = new Uint8Array(buffer);\r\n for (let i = 0; i < bytes.byteLength; i++) {\r\n binary += String.fromCharCode(bytes[i]);\r\n }\r\n return window.btoa(binary);\r\n }\r\n }\r\n\r\n static fromBufferToUtf8(buffer: ArrayBuffer): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(buffer).toString('utf8');\r\n } else {\r\n const bytes = new Uint8Array(buffer);\r\n const encodedString = String.fromCharCode.apply(null, bytes);\r\n return decodeURIComponent(escape(encodedString));\r\n }\r\n }\r\n\r\n static fromBufferToByteString(buffer: ArrayBuffer): string {\r\n return String.fromCharCode.apply(null, new Uint8Array(buffer));\r\n }\r\n\r\n // ref: https://stackoverflow.com/a/40031979/1090359\r\n static fromBufferToHex(buffer: ArrayBuffer): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(buffer).toString('hex');\r\n } else {\r\n const bytes = new Uint8Array(buffer);\r\n return Array.prototype.map.call(bytes, (x: number) => ('00' + x.toString(16)).slice(-2)).join('');\r\n }\r\n }\r\n\r\n static fromUrlB64ToUtf8(b64Str: string): string {\r\n let output = b64Str.replace(/-/g, '+').replace(/_/g, '/');\r\n switch (output.length % 4) {\r\n case 0:\r\n break;\r\n case 2:\r\n output += '==';\r\n break;\r\n case 3:\r\n output += '=';\r\n break;\r\n default:\r\n throw new Error('Illegal base64url string!');\r\n }\r\n\r\n return Utils.fromB64ToUtf8(output);\r\n }\r\n\r\n static fromB64ToUtf8(b64Str: string): string {\r\n if (Utils.isNode || Utils.isNativeScript) {\r\n return Buffer.from(b64Str, 'base64').toString('utf8');\r\n } else {\r\n return decodeURIComponent(escape(window.atob(b64Str)));\r\n }\r\n }\r\n\r\n // ref: http://stackoverflow.com/a/2117523/1090359\r\n static newGuid(): string {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\r\n // tslint:disable-next-line\r\n const r = Math.random() * 16 | 0;\r\n // tslint:disable-next-line\r\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n\r\n static getHostname(uriString: string): string {\r\n const url = Utils.getUrl(uriString);\r\n try {\r\n return url != null ? url.hostname : null;\r\n } catch {\r\n return null;\r\n }\r\n }\r\n\r\n static getHost(uriString: string): string {\r\n const url = Utils.getUrl(uriString);\r\n try {\r\n return url != null ? url.host : null;\r\n } catch {\r\n return null;\r\n }\r\n }\r\n\r\n static getDomain(uriString: string): string {\r\n if (uriString == null) {\r\n return null;\r\n }\r\n\r\n uriString = uriString.trim();\r\n if (uriString === '') {\r\n return null;\r\n }\r\n\r\n if (uriString.startsWith('http://') || uriString.startsWith('https://')) {\r\n try {\r\n const url = Utils.getUrlObject(uriString);\r\n if (url.hostname === 'localhost' || Utils.validIpAddress(url.hostname)) {\r\n return url.hostname;\r\n }\r\n\r\n const urlDomain = tldjs != null && tldjs.getDomain != null ? tldjs.getDomain(url.hostname) : null;\r\n return urlDomain != null ? urlDomain : url.hostname;\r\n } catch (e) { }\r\n }\r\n\r\n const domain = tldjs != null && tldjs.getDomain != null ? tldjs.getDomain(uriString) : null;\r\n if (domain != null) {\r\n return domain;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n static getQueryParams(uriString: string): Map {\r\n const url = Utils.getUrl(uriString);\r\n if (url == null || url.search == null || url.search === '') {\r\n return null;\r\n }\r\n const map = new Map();\r\n const pairs = (url.search[0] === '?' ? url.search.substr(1) : url.search).split('&');\r\n pairs.forEach((pair) => {\r\n const parts = pair.split('=');\r\n if (parts.length < 1) {\r\n return;\r\n }\r\n map.set(decodeURIComponent(parts[0]).toLowerCase(), parts[1] == null ? '' : decodeURIComponent(parts[1]));\r\n });\r\n return map;\r\n }\r\n\r\n static getSortFunction(i18nService: I18nService, prop: string) {\r\n return (a: any, b: any) => {\r\n if (a[prop] == null && b[prop] != null) {\r\n return -1;\r\n }\r\n if (a[prop] != null && b[prop] == null) {\r\n return 1;\r\n }\r\n if (a[prop] == null && b[prop] == null) {\r\n return 0;\r\n }\r\n\r\n return i18nService.collator ? i18nService.collator.compare(a[prop], b[prop]) :\r\n a[prop].localeCompare(b[prop]);\r\n };\r\n }\r\n\r\n private static validIpAddress(ipString: string): boolean {\r\n // tslint:disable-next-line\r\n const ipRegex = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;\r\n return ipRegex.test(ipString);\r\n }\r\n\r\n private static isMobile(win: Window) {\r\n let mobile = false;\r\n ((a) => {\r\n // tslint:disable-next-line\r\n if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0, 4))) {\r\n mobile = true;\r\n }\r\n })(win.navigator.userAgent || win.navigator.vendor || (win as any).opera);\r\n return mobile || win.navigator.userAgent.match(/iPad/i) != null;\r\n }\r\n\r\n private static getUrl(uriString: string): URL {\r\n if (uriString == null) {\r\n return null;\r\n }\r\n\r\n uriString = uriString.trim();\r\n if (uriString === '') {\r\n return null;\r\n }\r\n\r\n const hasProtocol = uriString.indexOf('://') > -1;\r\n if (!hasProtocol && uriString.indexOf('.') > -1) {\r\n uriString = 'http://' + uriString;\r\n } else if (!hasProtocol) {\r\n return null;\r\n }\r\n\r\n return Utils.getUrlObject(uriString);\r\n }\r\n\r\n private static getUrlObject(uriString: string): URL {\r\n try {\r\n if (nodeURL != null) {\r\n return nodeURL.URL ? new nodeURL.URL(uriString) : nodeURL.parse(uriString);\r\n } else if (typeof URL === 'function') {\r\n return new URL(uriString);\r\n } else if (window != null) {\r\n const anchor = window.document.createElement('a');\r\n anchor.href = uriString;\r\n return anchor as any;\r\n }\r\n } catch (e) { }\r\n\r\n return null;\r\n }\r\n}\r\n\r\nUtils.init();\r\n","export enum CipherType {\r\n Login = 1,\r\n SecureNote = 2,\r\n Card = 3,\r\n Identity = 4,\r\n}\n","import { CollectionData } from '../models/data/collectionData';\r\n\r\nimport { Collection } from '../models/domain/collection';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { CollectionView } from '../models/view/collectionView';\r\n\r\nexport abstract class CollectionService {\r\n decryptedCollectionCache: CollectionView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: CollectionView) => Promise;\r\n decryptMany: (collections: Collection[]) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: (collections?: CollectionView[]) => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n upsert: (collection: CollectionData | CollectionData[]) => Promise;\r\n replace: (collections: { [id: string]: CollectionData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n Renderer2,\n} from '@angular/core';\n\n@Directive({\n selector: '[appInputVerbatim]',\n})\nexport class InputVerbatimDirective {\n @Input() set appInputVerbatim(condition: boolean | string) {\n this.disableComplete = condition === '' || condition === true;\n }\n\n private disableComplete: boolean;\n\n constructor(private el: ElementRef, private renderer: Renderer2) { }\n\n ngOnInit() {\n if (this.disableComplete && !this.el.nativeElement.hasAttribute('autocomplete')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocomplete', 'off');\n }\n if (!this.el.nativeElement.hasAttribute('autocapitalize')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocapitalize', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('autocorrect')) {\n this.renderer.setAttribute(this.el.nativeElement, 'autocorrect', 'none');\n }\n if (!this.el.nativeElement.hasAttribute('spellcheck')) {\n this.renderer.setAttribute(this.el.nativeElement, 'spellcheck', 'false');\n }\n if (!this.el.nativeElement.hasAttribute('inputmode')) {\n this.renderer.setAttribute(this.el.nativeElement, 'inputmode', 'verbatim');\n }\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nexport abstract class FolderService {\r\n decryptedFolderCache: FolderView[];\r\n\r\n clearCache: () => void;\r\n encrypt: (model: FolderView, key?: SymmetricCryptoKey) => Promise;\r\n get: (id: string) => Promise;\r\n getAll: () => Promise;\r\n getAllDecrypted: () => Promise;\r\n getAllNested: () => Promise>>;\r\n getNested: (id: string) => Promise>;\r\n saveWithServer: (folder: Folder) => Promise;\r\n upsert: (folder: FolderData | FolderData[]) => Promise;\r\n replace: (folders: { [id: string]: FolderData; }) => Promise;\r\n clear: (userId: string) => Promise;\r\n delete: (id: string | string[]) => Promise;\r\n deleteWithServer: (id: string) => Promise;\r\n}\r\n","import { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nexport abstract class PasswordGenerationService {\r\n generatePassword: (options: any) => Promise;\r\n generatePassphrase: (options: any) => Promise;\r\n getOptions: () => any;\r\n saveOptions: (options: any) => Promise;\r\n getHistory: () => Promise;\r\n addHistory: (password: string) => Promise;\r\n clear: () => Promise;\r\n passwordStrength: (password: string, userInputs?: string[]) => zxcvbn.ZXCVBNResult;\r\n}\r\n","import {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\n\r\nexport abstract class SyncService {\r\n syncInProgress: boolean;\r\n\r\n getLastSync: () => Promise;\r\n setLastSync: (date: Date) => Promise;\r\n fullSync: (forceSync: boolean) => Promise;\r\n syncUpsertFolder: (notification: SyncFolderNotification, isEdit: boolean) => Promise;\r\n syncDeleteFolder: (notification: SyncFolderNotification) => Promise;\r\n syncUpsertCipher: (notification: SyncCipherNotification, isEdit: boolean) => Promise;\r\n syncDeleteCipher: (notification: SyncFolderNotification) => Promise;\r\n}\r\n","export abstract class StorageService {\r\n get: (key: string) => Promise;\r\n save: (key: string, obj: any) => Promise;\r\n remove: (key: string) => Promise;\r\n}\r\n","export abstract class TokenService {\n token: string;\n decodedToken: any;\n refreshToken: string;\n setTokens: (accessToken: string, refreshToken: string) => Promise;\n setToken: (token: string) => Promise;\n getToken: () => Promise;\n setRefreshToken: (refreshToken: string) => Promise;\n getRefreshToken: () => Promise;\n setTwoFactorToken: (token: string, email: string) => Promise;\n getTwoFactorToken: (email: string) => Promise;\n clearTwoFactorToken: (email: string) => Promise;\n clearToken: () => Promise;\n decodeToken: () => any;\n getTokenExpirationDate: () => Date;\n tokenSecondsRemaining: (offsetSeconds?: number) => number;\n tokenNeedsRefresh: (minutes?: number) => boolean;\n getUserId: () => string;\n getEmail: () => string;\n getEmailVerified: () => boolean;\n getName: () => string;\n getPremium: () => boolean;\n getIssuer: () => string;\n}\n","export abstract class EnvironmentService {\r\n baseUrl: string;\r\n webVaultUrl: string;\r\n apiUrl: string;\r\n identityUrl: string;\r\n iconsUrl: string;\r\n notificationsUrl: string;\r\n\r\n getWebVaultUrl: () => string;\r\n setUrlsFromStorage: () => Promise;\r\n setUrls: (urls: any) => Promise;\r\n}\r\n","export class PasswordVerificationRequest {\n masterPasswordHash: string;\n}\n","import { TwoFactorProviderType } from '../enums/twoFactorProviderType';\n\nimport { AuthResult } from '../models/domain/authResult';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nexport abstract class AuthService {\n email: string;\n masterPasswordHash: string;\n twoFactorProviders: Map;\n selectedTwoFactorProviderType: TwoFactorProviderType;\n\n logIn: (email: string, masterPassword: string) => Promise;\n logInTwoFactor: (twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,\n remember?: boolean) => Promise;\n logInComplete: (email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,\n twoFactorToken: string, remember?: boolean) => Promise;\n logOut: (callback: Function) => void;\n getSupportedTwoFactorProviders: (win: Window) => any[];\n getDefaultTwoFactorProvider: (u2fSupported: boolean) => TwoFactorProviderType;\n makePreloginKey: (masterPassword: string, email: string) => Promise;\n}\n","export class ConstantsService {\r\n static readonly environmentUrlsKey: string = 'environmentUrls';\r\n static readonly disableGaKey: string = 'disableGa';\r\n static readonly disableAddLoginNotificationKey: string = 'disableAddLoginNotification';\r\n static readonly disableChangedPasswordNotificationKey: string = 'disableChangedPasswordNotification';\r\n static readonly disableContextMenuItemKey: string = 'disableContextMenuItem';\r\n static readonly disableFaviconKey: string = 'disableFavicon';\r\n static readonly disableAutoTotpCopyKey: string = 'disableAutoTotpCopy';\r\n static readonly enableAutoFillOnPageLoadKey: string = 'enableAutoFillOnPageLoad';\r\n static readonly lockOptionKey: string = 'lockOption';\r\n static readonly lastActiveKey: string = 'lastActive';\r\n static readonly neverDomainsKey: string = 'neverDomains';\r\n static readonly installedVersionKey: string = 'installedVersion';\r\n static readonly localeKey: string = 'locale';\r\n static readonly themeKey: string = 'theme';\r\n static readonly collapsedGroupingsKey: string = 'collapsedGroupings';\r\n static readonly autoConfirmFingerprints: string = 'autoConfirmFingerprints';\r\n static readonly dontShowCardsCurrentTab: string = 'dontShowCardsCurrentTab';\r\n static readonly dontShowIdentitiesCurrentTab: string = 'dontShowIdentitiesCurrentTab';\r\n\r\n readonly environmentUrlsKey: string = ConstantsService.environmentUrlsKey;\r\n readonly disableGaKey: string = ConstantsService.disableGaKey;\r\n readonly disableAddLoginNotificationKey: string = ConstantsService.disableAddLoginNotificationKey;\r\n readonly disableContextMenuItemKey: string = ConstantsService.disableContextMenuItemKey;\r\n readonly disableFaviconKey: string = ConstantsService.disableFaviconKey;\r\n readonly disableAutoTotpCopyKey: string = ConstantsService.disableAutoTotpCopyKey;\r\n readonly enableAutoFillOnPageLoadKey: string = ConstantsService.enableAutoFillOnPageLoadKey;\r\n readonly lockOptionKey: string = ConstantsService.lockOptionKey;\r\n readonly lastActiveKey: string = ConstantsService.lastActiveKey;\r\n readonly neverDomainsKey: string = ConstantsService.neverDomainsKey;\r\n readonly installedVersionKey: string = ConstantsService.installedVersionKey;\r\n readonly localeKey: string = ConstantsService.localeKey;\r\n readonly themeKey: string = ConstantsService.themeKey;\r\n readonly collapsedGroupingsKey: string = ConstantsService.collapsedGroupingsKey;\r\n readonly autoConfirmFingerprints: string = ConstantsService.autoConfirmFingerprints;\r\n readonly dontShowCardsCurrentTab: string = ConstantsService.dontShowCardsCurrentTab;\r\n readonly dontShowIdentitiesCurrentTab: string = ConstantsService.dontShowIdentitiesCurrentTab;\r\n}\r\n","import {\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { CipherType } from '../../enums/cipherType';\n\nimport { CipherView } from '../../models/view/cipherView';\n\nimport { EnvironmentService } from '../../abstractions/environment.service';\nimport { StateService } from '../../abstractions/state.service';\n\nimport { ConstantsService } from '../../services/constants.service';\n\nimport { Utils } from '../../misc/utils';\n\nconst IconMap: any = {\n 'fa-globe': String.fromCharCode(0xf0ac),\n 'fa-sticky-note-o': String.fromCharCode(0xf24a),\n 'fa-id-card-o': String.fromCharCode(0xf2c3),\n 'fa-credit-card': String.fromCharCode(0xf09d),\n 'fa-android': String.fromCharCode(0xf17b),\n 'fa-apple': String.fromCharCode(0xf179),\n};\n\n@Component({\n selector: 'app-vault-icon',\n templateUrl: 'icon.component.html',\n})\nexport class IconComponent implements OnChanges {\n @Input() cipher: CipherView;\n icon: string;\n image: string;\n fallbackImage: string;\n imageEnabled: boolean;\n\n private iconsUrl: string;\n\n constructor(environmentService: EnvironmentService, protected stateService: StateService) {\n this.iconsUrl = environmentService.iconsUrl;\n if (!this.iconsUrl) {\n if (environmentService.baseUrl) {\n this.iconsUrl = environmentService.baseUrl + '/icons';\n } else {\n this.iconsUrl = 'https://icons.bitwarden.net';\n }\n }\n }\n\n async ngOnChanges() {\n this.imageEnabled = !(await this.stateService.get(ConstantsService.disableFaviconKey));\n this.load();\n }\n\n get iconCode(): string {\n return IconMap[this.icon];\n }\n\n protected load() {\n switch (this.cipher.type) {\n case CipherType.Login:\n this.icon = 'fa-globe';\n this.setLoginIcon();\n break;\n case CipherType.SecureNote:\n this.icon = 'fa-sticky-note-o';\n break;\n case CipherType.Card:\n this.icon = 'fa-credit-card';\n break;\n case CipherType.Identity:\n this.icon = 'fa-id-card-o';\n break;\n default:\n break;\n }\n }\n\n private setLoginIcon() {\n if (this.cipher.login.uri) {\n let hostnameUri = this.cipher.login.uri;\n let isWebsite = false;\n\n if (hostnameUri.indexOf('androidapp://') === 0) {\n this.icon = 'fa-android';\n this.image = null;\n } else if (hostnameUri.indexOf('iosapp://') === 0) {\n this.icon = 'fa-apple';\n this.image = null;\n } else if (this.imageEnabled && hostnameUri.indexOf('://') === -1 && hostnameUri.indexOf('.') > -1) {\n hostnameUri = 'http://' + hostnameUri;\n isWebsite = true;\n } else if (this.imageEnabled) {\n isWebsite = hostnameUri.indexOf('http') === 0 && hostnameUri.indexOf('.') > -1;\n }\n\n if (this.imageEnabled && isWebsite) {\n try {\n this.image = this.iconsUrl + '/' + Utils.getHostname(hostnameUri) + '/icon.png';\n this.fallbackImage = 'images/fa-globe.png';\n } catch (e) { }\n }\n } else {\n this.image = null;\n }\n }\n}\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { SecureNote } from '../domain/secureNote';\r\n\r\nexport class SecureNoteView implements View {\r\n type: SecureNoteType;\r\n\r\n constructor(n?: SecureNote) {\r\n if (!n) {\r\n return;\r\n }\r\n\r\n this.type = n.type;\r\n }\r\n\r\n get subTitle(): string {\r\n return null;\r\n }\r\n}\r\n","import {\n Directive,\n ElementRef,\n Input,\n} from '@angular/core';\n\nimport { Utils } from '../../misc/utils';\n\n@Directive({\n selector: '[appAutofocus]',\n})\nexport class AutofocusDirective {\n @Input() set appAutofocus(condition: boolean | string) {\n this.autofocus = condition === '' || condition === true;\n }\n\n private autofocus: boolean;\n\n constructor(private el: ElementRef) { }\n\n ngOnInit() {\n if (!Utils.isMobileBrowser && this.autofocus) {\n this.el.nativeElement.focus();\n }\n }\n}\n","import * as jq from 'jquery';\n\nimport {\n Component,\n ComponentFactoryResolver,\n Type,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ModalComponent as BaseModalComponent } from 'jslib/angular/components/modal.component';\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-modal',\n template: ``,\n})\nexport class ModalComponent extends BaseModalComponent {\n el: any = null;\n\n constructor(componentFactoryResolver: ComponentFactoryResolver) {\n super(componentFactoryResolver);\n }\n\n ngOnDestroy() { /* Nothing */ }\n\n show(type: Type, parentContainer: ViewContainerRef, fade: boolean = true): T {\n this.parentContainer = parentContainer;\n this.fade = fade;\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(type);\n const componentRef = this.container.createComponent(factory);\n\n const modals = Array.from(document.querySelectorAll('.modal'));\n if (modals.length > 0) {\n this.el = jq(modals[0]);\n this.el.modal('show');\n\n this.el.on('show.bs.modal', () => {\n this.onShow.emit();\n });\n this.el.on('shown.bs.modal', () => {\n this.onShown.emit();\n if (!Utils.isMobileBrowser) {\n this.el.find('*[appAutoFocus]').focus();\n }\n });\n this.el.on('hide.bs.modal', () => {\n this.onClose.emit();\n });\n this.el.on('hidden.bs.modal', () => {\n this.onClosed.emit();\n if (this.parentContainer != null) {\n this.parentContainer.clear();\n }\n });\n }\n\n return componentRef.instance;\n }\n\n close() {\n if (this.el != null) {\n this.el.modal('hide');\n }\n }\n}\n","export enum TwoFactorProviderType {\r\n Authenticator = 0,\r\n Email = 1,\r\n Duo = 2,\r\n Yubikey = 3,\n U2f = 4,\r\n Remember = 5,\r\n OrganizationDuo = 6,\r\n}\n","import {\n Directive,\n HostListener,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appStopProp]',\r\n})\r\nexport class StopPropDirective {\n @HostListener('click', ['$event']) onClick($event: MouseEvent) {\r\n $event.stopPropagation();\r\n }\r\n}\n","
\r\n \"\"\r\n \r\n
\r\n","import { DecryptParameters } from '../models/domain/decryptParameters';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nexport abstract class CryptoFunctionService {\n pbkdf2: (password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\n iterations: number) => Promise;\n hash: (value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5') => Promise;\n hmac: (value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512') => Promise;\n compare: (a: ArrayBuffer, b: ArrayBuffer) => Promise;\n hmacFast: (value: ArrayBuffer | string, key: ArrayBuffer | string, algorithm: 'sha1' | 'sha256' | 'sha512') =>\n Promise;\n compareFast: (a: ArrayBuffer | string, b: ArrayBuffer | string) => Promise;\n aesEncrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n aesDecryptFastParameters: (data: string, iv: string, mac: string, key: SymmetricCryptoKey) =>\n DecryptParameters;\n aesDecryptFast: (parameters: DecryptParameters) => Promise;\n aesDecrypt: (data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer) => Promise;\n rsaEncrypt: (data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaDecrypt: (data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256') => Promise;\n rsaExtractPublicKey: (privateKey: ArrayBuffer) => Promise;\n rsaGenerateKeyPair: (length: 1024 | 2048 | 4096) => Promise<[ArrayBuffer, ArrayBuffer]>;\n randomBytes: (length: number) => Promise;\n}\n","import { BreachAccountResponse } from '../models/response/breachAccountResponse';\n\nexport abstract class AuditService {\n passwordLeaked: (password: string) => Promise;\n breachedAccounts: (username: string) => Promise;\n}\n","import { View } from './view';\r\n\r\nimport { Card } from '../domain/card';\r\n\r\nexport class CardView implements View {\r\n cardholderName: string;\r\n expMonth: string = null;\r\n expYear: string;\r\n code: string;\r\n\r\n // tslint:disable\r\n private _brand: string = null;\r\n private _number: string;\r\n private _subTitle: string;\r\n // tslint:enable\r\n\r\n constructor(c?: Card) {\r\n // ctor\r\n }\r\n\r\n get maskedCode(): string {\r\n return this.code != null ? '•'.repeat(this.code.length) : null;\r\n }\r\n\r\n get brand(): string {\r\n return this._brand;\r\n }\r\n set brand(value: string) {\r\n this._brand = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get number(): string {\r\n return this._number;\r\n }\r\n set number(value: string) {\r\n this._number = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get subTitle(): string {\r\n if (this._subTitle == null) {\r\n this._subTitle = this.brand;\r\n if (this.number != null && this.number.length >= 4) {\r\n if (this._subTitle != null && this._subTitle !== '') {\r\n this._subTitle += ', ';\r\n } else {\r\n this._subTitle = '';\r\n }\r\n this._subTitle += ('*' + this.number.substr(this.number.length - 4));\r\n }\r\n }\r\n return this._subTitle;\r\n }\r\n\r\n get expiration(): string {\r\n if (!this.expMonth && !this.expYear) {\r\n return null;\r\n }\r\n\r\n let exp = this.expMonth != null ? ('0' + this.expMonth).slice(-2) : '__';\r\n exp += (' / ' + (this.expYear != null ? this.formatYear(this.expYear) : '____'));\r\n return exp;\r\n }\r\n\r\n private formatYear(year: string): string {\r\n return year.length === 2 ? '20' + year : year;\r\n }\r\n}\r\n","import { CipherString } from './cipherString';\n\nimport { View } from '../view/view';\n\nexport default class Domain {\n protected buildDomainModel(domain: D, dataObj: any, map: any,\n alreadyEncrypted: boolean, notEncList: any[] = []) {\n for (const prop in map) {\n if (!map.hasOwnProperty(prop)) {\n continue;\n }\n\n const objProp = dataObj[(map[prop] || prop)];\n if (alreadyEncrypted === true || notEncList.indexOf(prop) > -1) {\n (domain as any)[prop] = objProp ? objProp : null;\n } else {\n (domain as any)[prop] = objProp ? new CipherString(objProp) : null;\n }\n }\n }\n protected buildDataModel(domain: D, dataObj: any, map: any, notCipherStringList: any[] = []) {\n for (const prop in map) {\n if (!map.hasOwnProperty(prop)) {\n continue;\n }\n\n const objProp = (domain as any)[(map[prop] || prop)];\n if (notCipherStringList.indexOf(prop) > -1) {\n (dataObj as any)[prop] = objProp != null ? objProp : null;\n } else {\n (dataObj as any)[prop] = objProp != null ? (objProp as CipherString).encryptedString : null;\n }\n }\n }\n\n protected async decryptObj(viewModel: T, map: any, orgId: string): Promise {\n const promises = [];\n const self: any = this;\n\n for (const prop in map) {\n if (!map.hasOwnProperty(prop)) {\n continue;\n }\n\n // tslint:disable-next-line\n (function (theProp) {\n const p = Promise.resolve().then(() => {\n const mapProp = map[theProp] || theProp;\n if (self[mapProp]) {\n return self[mapProp].decrypt(orgId);\n }\n return null;\n }).then((val: any) => {\n (viewModel as any)[theProp] = val;\n });\n promises.push(p);\n })(prop);\n }\n\n await Promise.all(promises);\n return viewModel;\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class BroadcasterService {\n subscribers: Map any> = new Map any>();\n\n send(message: any, id?: string) {\n if (id != null) {\n if (this.subscribers.has(id)) {\n this.subscribers.get(id)(message);\r\n }\n return;\r\n }\n\n this.subscribers.forEach((value) => {\n value(message);\n });\r\n }\n\n subscribe(id: string, messageCallback: (message: any) => any) {\n if (this.subscribers.has(id)) {\n return;\r\n }\n\n this.subscribers.set(id, messageCallback);\r\n }\n\n unsubscribe(id: string) {\n if (this.subscribers.has(id)) {\n this.subscribers.delete(id);\r\n }\r\n }\n}\r\n","export enum SecureNoteType {\r\n Generic = 0,\r\n}\r\n","import { CipherView } from '../models/view/cipherView';\n\nexport abstract class SearchService {\n clearIndex: () => void;\n isSearchable: (query: string) => boolean;\n indexCiphers: () => Promise;\n searchCiphers: (query: string, filter?: (cipher: CipherView) => boolean,\n ciphers?: CipherView[]) => Promise;\n searchCiphersBasic: (ciphers: CipherView[], query: string) => CipherView[];\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { AttachmentView } from './attachmentView';\r\nimport { CardView } from './cardView';\r\nimport { FieldView } from './fieldView';\r\nimport { IdentityView } from './identityView';\r\nimport { LoginView } from './loginView';\r\nimport { PasswordHistoryView } from './passwordHistoryView';\r\nimport { SecureNoteView } from './secureNoteView';\r\nimport { View } from './view';\r\n\r\nexport class CipherView implements View {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n name: string;\r\n notes: string;\r\n type: CipherType;\r\n favorite = false;\r\n organizationUseTotp = false;\r\n edit = false;\r\n localData: any;\r\n login: LoginView;\r\n identity: IdentityView;\r\n card: CardView;\r\n secureNote: SecureNoteView;\r\n attachments: AttachmentView[];\r\n fields: FieldView[];\r\n passwordHistory: PasswordHistoryView[];\r\n collectionIds: string[];\r\n revisionDate: Date;\r\n\r\n constructor(c?: Cipher) {\r\n if (!c) {\r\n return;\r\n }\r\n\r\n this.id = c.id;\r\n this.organizationId = c.organizationId;\r\n this.folderId = c.folderId;\r\n this.favorite = c.favorite;\r\n this.organizationUseTotp = c.organizationUseTotp;\r\n this.edit = c.edit;\r\n this.type = c.type;\r\n this.localData = c.localData;\r\n this.collectionIds = c.collectionIds;\r\n this.revisionDate = c.revisionDate;\r\n }\r\n\r\n get subTitle(): string {\r\n switch (this.type) {\r\n case CipherType.Login:\r\n return this.login.subTitle;\r\n case CipherType.SecureNote:\r\n return this.secureNote.subTitle;\r\n case CipherType.Card:\r\n return this.card.subTitle;\r\n case CipherType.Identity:\r\n return this.identity.subTitle;\r\n default:\r\n break;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n get hasPasswordHistory(): boolean {\r\n return this.passwordHistory && this.passwordHistory.length > 0;\r\n }\r\n\r\n get hasAttachments(): boolean {\r\n return this.attachments && this.attachments.length > 0;\r\n }\r\n\r\n get hasOldAttachments(): boolean {\r\n if (this.hasAttachments) {\r\n for (let i = 0; i < this.attachments.length; i++) {\r\n if (this.attachments[i].key == null) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n get hasFields(): boolean {\r\n return this.fields && this.fields.length > 0;\r\n }\r\n\r\n get passwordRevisionDisplayDate(): Date {\r\n if (this.login == null) {\r\n return null;\r\n } else if (this.login.password == null || this.login.password === '') {\r\n return null;\r\n }\r\n return this.login.passwordRevisionDate;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnChanges,\n OnInit,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { CryptoFunctionService } from 'jslib/abstractions/cryptoFunction.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-avatar',\n template: '',\n})\nexport class AvatarComponent implements OnChanges, OnInit {\n @Input() data: string;\n @Input() email: string;\n @Input() size = 45;\n @Input() charCount = 2;\n @Input() textColor = '#ffffff';\n @Input() fontSize = 20;\n @Input() fontWeight = 300;\n @Input() dynamic = false;\n @Input() circle = false;\n\n src: string;\n\n constructor(public sanitizer: DomSanitizer, private cryptoFunctionService: CryptoFunctionService,\n private stateService: StateService) { }\n\n ngOnInit() {\n if (!this.dynamic) {\n this.generate();\n }\n }\n\n ngOnChanges() {\n if (this.dynamic) {\n this.generate();\n }\n }\n\n private async generate() {\n const enableGravatars = await this.stateService.get('enableGravatars');\n if (enableGravatars && this.email != null) {\n const hashBytes = await this.cryptoFunctionService.hash(this.email.toLowerCase().trim(), 'md5');\n const hash = Utils.fromBufferToHex(hashBytes).toLowerCase();\n this.src = 'https://www.gravatar.com/avatar/' + hash + '?s=' + this.size + '&r=pg&d=retro';\n } else {\n let chars: string = null;\n const upperData = this.data.toUpperCase();\n\n if (this.charCount > 1) {\n chars = this.getFirstLetters(upperData, this.charCount);\n }\n if (chars == null) {\n chars = upperData.substr(0, this.charCount);\n }\n\n const charObj = this.getCharText(chars);\n const color = this.stringToColor(upperData);\n const svg = this.getSvg(this.size, color);\n svg.appendChild(charObj);\n const html = window.document.createElement('div').appendChild(svg).outerHTML;\n const svgHtml = window.btoa(unescape(encodeURIComponent(html)));\n this.src = 'data:image/svg+xml;base64,' + svgHtml;\n }\n }\n\n private stringToColor(str: string): string {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n // tslint:disable-next-line\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\n }\n let color = '#';\n for (let i = 0; i < 3; i++) {\n // tslint:disable-next-line\n const value = (hash >> (i * 8)) & 0xFF;\n color += ('00' + value.toString(16)).substr(-2);\n }\n return color;\n }\n\n private getFirstLetters(data: string, count: number): string {\n const parts = data.split(' ');\n if (parts.length > 1) {\n let text = '';\n for (let i = 0; i < count; i++) {\n text += parts[i].substr(0, 1);\n }\n return text;\n }\n return null;\n }\n\n private getSvg(size: number, color: string): HTMLElement {\n const svgTag = window.document.createElement('svg');\n svgTag.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgTag.setAttribute('pointer-events', 'none');\n svgTag.setAttribute('width', size.toString());\n svgTag.setAttribute('height', size.toString());\n svgTag.style.backgroundColor = color;\n svgTag.style.width = size + 'px';\n svgTag.style.height = size + 'px';\n return svgTag;\n }\n\n private getCharText(character: string): HTMLElement {\n const textTag = window.document.createElement('text');\n textTag.setAttribute('text-anchor', 'middle');\n textTag.setAttribute('y', '50%');\n textTag.setAttribute('x', '50%');\n textTag.setAttribute('dy', '0.35em');\n textTag.setAttribute('pointer-events', 'auto');\n textTag.setAttribute('fill', this.textColor);\n textTag.setAttribute('font-family', '\"Open Sans\",\"Helvetica Neue\",Helvetica,Arial,' +\n 'sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\"');\n textTag.textContent = character;\n textTag.style.fontWeight = this.fontWeight.toString();\n textTag.style.fontSize = this.fontSize + 'px';\n return textTag;\n }\n}\n","import { View } from './view';\r\n\r\nimport { Folder } from '../domain/folder';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class FolderView implements View, ITreeNodeObject {\r\n id: string = null;\r\n name: string;\r\n revisionDate: Date;\r\n\r\n constructor(f?: Folder) {\r\n if (!f) {\r\n return;\r\n }\r\n\r\n this.id = f.id;\r\n this.revisionDate = f.revisionDate;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Collection } from '../domain/collection';\r\nimport { ITreeNodeObject } from '../domain/treeNode';\r\n\r\nexport class CollectionView implements View, ITreeNodeObject {\r\n id: string;\r\n organizationId: string;\r\n name: string;\r\n readOnly: boolean;\r\n\r\n constructor(c?: Collection) {\r\n if (!c) {\r\n return;\r\n }\r\n\r\n this.id = c.id;\r\n this.organizationId = c.organizationId;\r\n this.readOnly = c.readOnly;\r\n }\r\n}\r\n","","import { LoginUriView } from './loginUriView';\r\nimport { View } from './view';\r\n\r\nimport { Login } from '../domain/login';\r\n\r\nexport class LoginView implements View {\r\n username: string;\r\n password: string;\r\n passwordRevisionDate?: Date;\r\n totp: string;\r\n uris: LoginUriView[];\r\n\r\n constructor(l?: Login) {\r\n if (!l) {\r\n return;\r\n }\r\n\r\n this.passwordRevisionDate = l.passwordRevisionDate;\r\n }\r\n\r\n get uri(): string {\r\n return this.hasUris ? this.uris[0].uri : null;\r\n }\r\n\r\n get maskedPassword(): string {\r\n return this.password != null ? '••••••••' : null;\r\n }\r\n\r\n get subTitle(): string {\r\n return this.username;\r\n }\r\n\r\n get canLaunch(): boolean {\r\n return this.hasUris && this.uris[0].canLaunch;\r\n }\r\n\r\n get hasUris(): boolean {\r\n return this.uris != null && this.uris.length > 0;\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nconst Keys = {\r\n stripeTest: 'pk_test_KPoCfZXu7mznb9uSCPZ2JpTD',\r\n stripeLive: 'pk_live_bpN0P37nMxrMQkcaHXtAybJk',\r\n btSandbox: 'sandbox_r72q8jq6_9pnxkwm75f87sdc2',\r\n btProduction: 'production_qfbsv8kc_njj2zjtyngtjmbjd',\r\n};\r\n\r\n@Component({\r\n selector: 'app-payment',\r\n templateUrl: 'payment.component.html',\r\n})\r\nexport class PaymentComponent implements OnInit {\r\n @Input() showOptions = true;\r\n @Input() method: 'card' | 'paypal' | 'bank' = 'card';\r\n @Input() hideBank = false;\r\n @Input() hidePaypal = false;\r\n\r\n card: any = {\r\n number: null,\r\n exp_month: null,\r\n exp_year: null,\r\n address_country: '',\r\n address_zip: null,\r\n };\r\n bank: any = {\r\n routing_number: null,\r\n account_number: null,\r\n account_holder_name: null,\r\n account_holder_type: '',\r\n currency: 'USD',\r\n country: 'US',\r\n };\r\n cardExpMonthOptions: any[];\r\n cardExpYearOptions: any[];\r\n\r\n private stripeScript: HTMLScriptElement;\r\n private btScript: HTMLScriptElement;\r\n private btInstance: any = null;\r\n\r\n constructor(i18nService: I18nService, private platformUtilsService: PlatformUtilsService) {\r\n this.stripeScript = window.document.createElement('script');\r\n this.stripeScript.src = 'https://js.stripe.com/v2/';\r\n this.stripeScript.async = true;\r\n this.stripeScript.onload = () => {\r\n (window as any).Stripe.setPublishableKey(\r\n this.platformUtilsService.isDev() ? Keys.stripeTest : Keys.stripeLive);\r\n };\r\n this.btScript = window.document.createElement('script');\r\n this.btScript.src = 'scripts/dropin.js';\r\n this.btScript.async = true;\r\n\r\n this.cardExpMonthOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: '01 - ' + i18nService.t('january'), value: '01' },\r\n { name: '02 - ' + i18nService.t('february'), value: '02' },\r\n { name: '03 - ' + i18nService.t('march'), value: '03' },\r\n { name: '04 - ' + i18nService.t('april'), value: '04' },\r\n { name: '05 - ' + i18nService.t('may'), value: '05' },\r\n { name: '06 - ' + i18nService.t('june'), value: '06' },\r\n { name: '07 - ' + i18nService.t('july'), value: '07' },\r\n { name: '08 - ' + i18nService.t('august'), value: '08' },\r\n { name: '09 - ' + i18nService.t('september'), value: '09' },\r\n { name: '10 - ' + i18nService.t('october'), value: '10' },\r\n { name: '11 - ' + i18nService.t('november'), value: '11' },\r\n { name: '12 - ' + i18nService.t('december'), value: '12' },\r\n ];\r\n\r\n this.cardExpYearOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n ];\r\n const year = (new Date()).getFullYear();\r\n for (let i = year; i < (year + 15); i++) {\r\n this.cardExpYearOptions.push({ name: i.toString(), value: i.toString().slice(-2) });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.showOptions) {\r\n this.hidePaypal = this.method !== 'paypal';\r\n this.hideBank = this.method !== 'bank';\r\n }\r\n window.document.head.appendChild(this.stripeScript);\r\n if (!this.hidePaypal) {\r\n window.document.head.appendChild(this.btScript);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n window.document.head.removeChild(this.stripeScript);\r\n Array.from(window.document.querySelectorAll('iframe')).forEach((el) => {\r\n if (el.src != null && el.src.indexOf('stripe') > -1) {\r\n window.document.body.removeChild(el);\r\n }\r\n });\r\n if (!this.hidePaypal) {\r\n window.document.head.removeChild(this.btScript);\r\n const btStylesheet = window.document.head.querySelector('#braintree-dropin-stylesheet');\r\n if (btStylesheet != null) {\r\n window.document.head.removeChild(btStylesheet);\r\n }\r\n }\r\n }\r\n\r\n changeMethod() {\r\n if (this.method !== 'paypal') {\r\n this.btInstance = null;\r\n return;\r\n }\r\n\r\n window.setTimeout(() => {\r\n (window as any).braintree.dropin.create({\r\n authorization: this.platformUtilsService.isDev() ? Keys.btSandbox : Keys.btProduction,\r\n container: '#bt-dropin-container',\r\n paymentOptionPriority: ['paypal'],\r\n paypal: {\r\n flow: 'vault',\r\n buttonStyle: {\r\n label: 'pay',\r\n size: 'medium',\r\n shape: 'pill',\r\n color: 'blue',\r\n },\r\n },\r\n }, (createErr: any, instance: any) => {\r\n if (createErr != null) {\r\n // tslint:disable-next-line\r\n console.error(createErr);\r\n return;\r\n }\r\n this.btInstance = instance;\r\n });\r\n }, 250);\r\n }\r\n\r\n createPaymentToken(): Promise {\r\n return new Promise((resolve, reject) => {\r\n if (this.method === 'paypal') {\r\n this.btInstance.requestPaymentMethod().then((payload: any) => {\r\n resolve(payload.nonce);\r\n }).catch((err: any) => {\r\n reject(err.message);\r\n });\r\n } else if (this.method === 'card' || this.method === 'bank') {\r\n const createObj: any = this.method === 'card' ? (window as any).Stripe.card :\r\n (window as any).Stripe.bankAccount;\r\n const sourceObj = this.method === 'card' ? this.card : this.bank;\r\n createObj.createToken(sourceObj, (status: number, response: any) => {\r\n if (status === 200 && response.id != null) {\r\n resolve(response.id);\r\n } else if (response.error != null) {\r\n reject(response.error.message);\r\n } else {\r\n reject();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n getCountry(): string {\r\n return this.card.address_country;\r\n }\r\n}\r\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { AttachmentData } from './attachmentData';\r\nimport { CardData } from './cardData';\r\nimport { FieldData } from './fieldData';\r\nimport { IdentityData } from './identityData';\r\nimport { LoginData } from './loginData';\r\nimport { PasswordHistoryData } from './passwordHistoryData';\r\nimport { SecureNoteData } from './secureNoteData';\r\n\r\nimport { CipherResponse } from '../response/cipherResponse';\r\n\r\nexport class CipherData {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n userId: string;\r\n edit: boolean;\r\n organizationUseTotp: boolean;\r\n favorite: boolean;\r\n revisionDate: string;\r\n type: CipherType;\r\n sizeName: string;\r\n name: string;\r\n notes: string;\r\n login?: LoginData;\r\n secureNote?: SecureNoteData;\r\n card?: CardData;\r\n identity?: IdentityData;\r\n fields?: FieldData[];\r\n attachments?: AttachmentData[];\r\n passwordHistory?: PasswordHistoryData[];\r\n collectionIds?: string[];\r\n\r\n constructor(response?: CipherResponse, userId?: string, collectionIds?: string[]) {\r\n if (response == null) {\r\n return;\r\n }\r\n\r\n this.id = response.id;\r\n this.organizationId = response.organizationId;\r\n this.folderId = response.folderId;\r\n this.userId = userId;\r\n this.edit = response.edit;\r\n this.organizationUseTotp = response.organizationUseTotp;\r\n this.favorite = response.favorite;\r\n this.revisionDate = response.revisionDate;\r\n this.type = response.type;\r\n this.name = response.name;\r\n this.notes = response.notes;\r\n\r\n if (collectionIds != null) {\r\n this.collectionIds = collectionIds;\r\n } else {\r\n this.collectionIds = response.collectionIds;\r\n }\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = new LoginData(response.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNoteData(response.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new CardData(response.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new IdentityData(response.identity);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (response.fields != null) {\r\n this.fields = [];\r\n response.fields.forEach((field) => {\r\n this.fields.push(new FieldData(field));\r\n });\r\n }\r\n\r\n if (response.attachments != null) {\r\n this.attachments = [];\r\n response.attachments.forEach((attachment) => {\r\n this.attachments.push(new AttachmentData(attachment));\r\n });\r\n }\r\n\r\n if (response.passwordHistory != null) {\r\n this.passwordHistory = [];\r\n response.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push(new PasswordHistoryData(ph));\r\n });\r\n }\r\n }\r\n}\r\n","import { CollectionDetailsResponse } from '../response/collectionResponse';\n\nexport class CollectionData {\n id: string;\n organizationId: string;\n name: string;\n readOnly: boolean;\n\n constructor(response: CollectionDetailsResponse) {\n this.id = response.id;\n this.organizationId = response.organizationId;\n this.name = response.name;\n this.readOnly = response.readOnly;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-two-factor-verify',\n templateUrl: 'two-factor-verify.component.html',\n})\nexport class TwoFactorVerifyComponent {\n @Input() type: TwoFactorProviderType;\n @Input() organizationId: string;\n @Output() onAuthed = new EventEmitter();\n\n masterPassword: string;\n formPromise: Promise;\n\n private masterPasswordHash: string;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private toasterService: ToasterService, private cryptoService: CryptoService) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = this.masterPasswordHash =\n await this.cryptoService.hashPassword(this.masterPassword, null);\n\n try {\n switch (this.type) {\n case -1:\n this.formPromise = this.apiService.getTwoFactorRecover(request);\n break;\n case TwoFactorProviderType.Duo:\n case TwoFactorProviderType.OrganizationDuo:\n if (this.organizationId != null) {\n this.formPromise = this.apiService.getTwoFactorOrganizationDuo(this.organizationId, request);\n } else {\n this.formPromise = this.apiService.getTwoFactorDuo(request);\n }\n break;\n case TwoFactorProviderType.Email:\n this.formPromise = this.apiService.getTwoFactorEmail(request);\n break;\n case TwoFactorProviderType.U2f:\n this.formPromise = this.apiService.getTwoFactorU2f(request);\n break;\n case TwoFactorProviderType.Authenticator:\n this.formPromise = this.apiService.getTwoFactorAuthenticator(request);\n break;\n case TwoFactorProviderType.Yubikey:\n this.formPromise = this.apiService.getTwoFactorYubiKey(request);\n break;\n }\n\n const response = await this.formPromise;\n this.onAuthed.emit({\n response: response,\n masterPasswordHash: this.masterPasswordHash,\n });\n } catch { }\n }\n}\n","export enum DeviceType {\n Android = 0,\n iOS = 1,\n ChromeExtension = 2,\n FirefoxExtension = 3,\n OperaExtension = 4,\n EdgeExtension = 5,\n WindowsDesktop = 6,\n MacOsDesktop = 7,\n LinuxDesktop = 8,\n ChromeBrowser = 9,\n FirefoxBrowser = 10,\n OperaBrowser = 11,\n EdgeBrowser = 12,\n IEBrowser = 13,\n UnknownBrowser = 14,\n AndroidAmazon = 15,\n UWP = 16,\n SafariBrowser = 17,\n VivaldiBrowser = 18,\n VivaldiExtension = 19,\n SafariExtension = 20,\n}\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nimport { CardApi } from '../api/cardApi';\r\nimport { FieldApi } from '../api/fieldApi';\r\nimport { IdentityApi } from '../api/identityApi';\r\nimport { LoginApi } from '../api/loginApi';\r\nimport { SecureNoteApi } from '../api/secureNoteApi';\r\n\r\nimport { AttachmentRequest } from './attachmentRequest';\r\nimport { PasswordHistoryRequest } from './passwordHistoryRequest';\r\n\r\nexport class CipherRequest {\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n login: LoginApi;\r\n secureNote: SecureNoteApi;\r\n card: CardApi;\r\n identity: IdentityApi;\r\n fields: FieldApi[];\r\n passwordHistory: PasswordHistoryRequest[];\r\n // Deprecated, remove at some point and rename attachments2 to attachments\r\n attachments: { [id: string]: string; };\r\n attachments2: { [id: string]: AttachmentRequest; };\r\n\r\n constructor(cipher: Cipher) {\r\n this.type = cipher.type;\r\n this.folderId = cipher.folderId;\r\n this.organizationId = cipher.organizationId;\r\n this.name = cipher.name ? cipher.name.encryptedString : null;\r\n this.notes = cipher.notes ? cipher.notes.encryptedString : null;\r\n this.favorite = cipher.favorite;\r\n\r\n switch (this.type) {\r\n case CipherType.Login:\r\n this.login = {\r\n uris: null,\r\n username: cipher.login.username ? cipher.login.username.encryptedString : null,\r\n password: cipher.login.password ? cipher.login.password.encryptedString : null,\r\n passwordRevisionDate: cipher.login.passwordRevisionDate != null ?\r\n cipher.login.passwordRevisionDate.toISOString() : null,\r\n totp: cipher.login.totp ? cipher.login.totp.encryptedString : null,\r\n };\r\n\r\n if (cipher.login.uris) {\r\n this.login.uris = [];\r\n cipher.login.uris.forEach((u) => {\r\n this.login.uris.push({\r\n uri: u.uri ? u.uri.encryptedString : null,\r\n match: u.match != null ? u.match : null,\r\n });\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = {\r\n type: cipher.secureNote.type,\r\n };\r\n break;\r\n case CipherType.Card:\r\n this.card = {\r\n cardholderName: cipher.card.cardholderName ? cipher.card.cardholderName.encryptedString : null,\r\n brand: cipher.card.brand ? cipher.card.brand.encryptedString : null,\r\n number: cipher.card.number ? cipher.card.number.encryptedString : null,\r\n expMonth: cipher.card.expMonth ? cipher.card.expMonth.encryptedString : null,\r\n expYear: cipher.card.expYear ? cipher.card.expYear.encryptedString : null,\r\n code: cipher.card.code ? cipher.card.code.encryptedString : null,\r\n };\r\n break;\r\n case CipherType.Identity:\r\n this.identity = {\r\n title: cipher.identity.title ? cipher.identity.title.encryptedString : null,\r\n firstName: cipher.identity.firstName ? cipher.identity.firstName.encryptedString : null,\r\n middleName: cipher.identity.middleName ? cipher.identity.middleName.encryptedString : null,\r\n lastName: cipher.identity.lastName ? cipher.identity.lastName.encryptedString : null,\r\n address1: cipher.identity.address1 ? cipher.identity.address1.encryptedString : null,\r\n address2: cipher.identity.address2 ? cipher.identity.address2.encryptedString : null,\r\n address3: cipher.identity.address3 ? cipher.identity.address3.encryptedString : null,\r\n city: cipher.identity.city ? cipher.identity.city.encryptedString : null,\r\n state: cipher.identity.state ? cipher.identity.state.encryptedString : null,\r\n postalCode: cipher.identity.postalCode ? cipher.identity.postalCode.encryptedString : null,\r\n country: cipher.identity.country ? cipher.identity.country.encryptedString : null,\r\n company: cipher.identity.company ? cipher.identity.company.encryptedString : null,\r\n email: cipher.identity.email ? cipher.identity.email.encryptedString : null,\r\n phone: cipher.identity.phone ? cipher.identity.phone.encryptedString : null,\r\n ssn: cipher.identity.ssn ? cipher.identity.ssn.encryptedString : null,\r\n username: cipher.identity.username ? cipher.identity.username.encryptedString : null,\r\n passportNumber: cipher.identity.passportNumber ?\r\n cipher.identity.passportNumber.encryptedString : null,\r\n licenseNumber: cipher.identity.licenseNumber ? cipher.identity.licenseNumber.encryptedString : null,\r\n };\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (cipher.fields) {\r\n this.fields = [];\r\n cipher.fields.forEach((field) => {\r\n this.fields.push({\r\n type: field.type,\r\n name: field.name ? field.name.encryptedString : null,\r\n value: field.value ? field.value.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.passwordHistory) {\r\n this.passwordHistory = [];\r\n cipher.passwordHistory.forEach((ph) => {\r\n this.passwordHistory.push({\r\n lastUsedDate: ph.lastUsedDate,\r\n password: ph.password ? ph.password.encryptedString : null,\r\n });\r\n });\r\n }\r\n\r\n if (cipher.attachments) {\r\n this.attachments = {};\r\n this.attachments2 = {};\r\n cipher.attachments.forEach((attachment) => {\r\n const fileName = attachment.fileName ? attachment.fileName.encryptedString : null;\r\n this.attachments[attachment.id] = fileName;\r\n const attachmentRequest = new AttachmentRequest();\r\n attachmentRequest.fileName = fileName;\r\n if (attachment.key != null) {\r\n attachmentRequest.key = attachment.key.encryptedString;\r\n }\r\n this.attachments2[attachment.id] = attachmentRequest;\r\n });\r\n }\r\n }\r\n}\r\n","export enum FieldType {\r\n Text = 0,\r\n Hidden = 1,\r\n Boolean = 2,\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { Field } from '../domain/field';\r\n\r\nexport class FieldView implements View {\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(f?: Field) {\r\n if (!f) {\r\n return;\r\n }\r\n\r\n this.type = f.type;\r\n }\r\n\r\n get maskedValue(): string {\r\n return this.value != null ? '••••••••' : null;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Identity } from '../domain/identity';\r\n\r\nexport class IdentityView implements View {\r\n title: string = null;\r\n middleName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n // tslint:disable\r\n private _firstName: string;\r\n private _lastName: string;\r\n private _subTitle: string;\r\n // tslint:enable\r\n\r\n constructor(i?: Identity) {\r\n // ctor\r\n }\r\n\r\n get firstName(): string {\r\n return this._firstName;\r\n }\r\n set firstName(value: string) {\r\n this._firstName = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get lastName(): string {\r\n return this._lastName;\r\n }\r\n set lastName(value: string) {\r\n this._lastName = value;\r\n this._subTitle = null;\r\n }\r\n\r\n get subTitle(): string {\r\n if (this._subTitle == null && (this.firstName != null || this.lastName != null)) {\r\n this._subTitle = '';\r\n if (this.firstName != null) {\r\n this._subTitle = this.firstName;\r\n }\r\n if (this.lastName != null) {\r\n if (this._subTitle !== '') {\r\n this._subTitle += ' ';\r\n }\r\n this._subTitle += this.lastName;\r\n }\r\n }\r\n\r\n return this._subTitle;\r\n }\r\n\r\n get fullName(): string {\r\n if (this.title != null || this.firstName != null || this.middleName != null || this.lastName != null) {\r\n let name = '';\r\n if (this.title != null) {\r\n name += (this.title + ' ');\r\n }\r\n if (this.firstName != null) {\r\n name += (this.firstName + ' ');\r\n }\r\n if (this.middleName != null) {\r\n name += (this.middleName + ' ');\r\n }\r\n if (this.lastName != null) {\r\n name += this.lastName;\r\n }\r\n return name.trim();\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { CollectionData } from '../data/collectionData';\n\nimport { CollectionView } from '../view/collectionView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Collection extends Domain {\n id: string;\n organizationId: string;\n name: CipherString;\n readOnly: boolean;\n\n constructor(obj?: CollectionData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n organizationId: null,\n name: null,\n readOnly: null,\n }, alreadyEncrypted, ['id', 'organizationId', 'readOnly']);\n }\n\n decrypt(): Promise {\n return this.decryptObj(new CollectionView(this), {\n name: null,\n }, this.organizationId);\n }\n}\n","
\n
\n

{{'twoStepLoginAuthDesc' | i18n}}

\n \n \n
\n
\n \n \n
\n
\n","export abstract class LockService {\r\n checkLock: () => Promise;\r\n lock: () => Promise;\r\n setLockOption: (lockOption: number) => Promise;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport {\r\n ActivatedRoute,\r\n NavigationEnd,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\n@Injectable()\r\nexport class RouterService {\r\n private previousUrl: string = undefined;\r\n private currentUrl: string = undefined;\r\n\r\n constructor(private router: Router, private activatedRoute: ActivatedRoute,\r\n private titleService: Title, private i18nService: I18nService) {\r\n this.currentUrl = this.router.url;\r\n router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.previousUrl = this.currentUrl;\r\n this.currentUrl = event.url;\r\n\r\n let title = i18nService.t('pageTitle', 'Bitwarden');\r\n let titleId: string = null;\r\n let rawTitle: string = null;\r\n let child = this.activatedRoute.firstChild;\r\n while (child != null) {\r\n if (child.firstChild != null) {\r\n child = child.firstChild;\r\n } else if (child.snapshot.data != null && child.snapshot.data.title != null) {\r\n rawTitle = child.snapshot.data.title;\r\n break;\r\n } else if (child.snapshot.data != null && child.snapshot.data.titleId != null) {\r\n titleId = child.snapshot.data.titleId;\r\n break;\r\n } else {\r\n titleId = null;\r\n rawTitle = null;\r\n break;\r\n }\r\n }\r\n\r\n if (titleId != null || rawTitle != null) {\r\n const newTitle = rawTitle != null ? rawTitle : i18nService.t(titleId);\r\n if (newTitle != null && newTitle !== '') {\r\n title = (newTitle + ' | ' + title);\r\n }\r\n }\r\n this.titleService.setTitle(title);\r\n }\r\n });\r\n }\r\n\r\n getPreviousUrl() {\r\n return this.previousUrl;\r\n }\r\n}\r\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-organizations',\n templateUrl: 'organizations.component.html',\n})\nexport class OrganizationsComponent implements OnInit {\n @Input() vault = false;\n\n organizations: Organization[];\n loaded: boolean = false;\n actionPromise: Promise;\n\n constructor(private userService: UserService, private platformUtilsService: PlatformUtilsService,\n private i18nService: I18nService, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private syncService: SyncService) { }\n\n async ngOnInit() {\n if (!this.vault) {\n await this.load();\n }\n }\n\n async load() {\n const orgs = await this.userService.getAllOrganizations();\n orgs.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.organizations = orgs;\n this.loaded = true;\n }\n\n async leave(org: Organization) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('leaveOrganizationConfirmation'), org.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.apiService.postLeaveOrganization(org.id).then(() => {\n return this.syncService.fullSync(true);\n });\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Left Organization' });\n this.toasterService.popAsync('success', null, this.i18nService.t('leftOrganization'));\n await this.load();\n } catch { }\n }\n}\n","export abstract class TotpService {\n getCode: (key: string) => Promise;\n getTimeInterval: (key: string) => number;\n isAutoCopyEnabled: () => Promise;\n}\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { View } from './view';\r\n\r\nimport { LoginUri } from '../domain/loginUri';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nconst CanLaunchWhitelist = [\r\n 'https://',\r\n 'http://',\r\n 'ssh://',\r\n 'ftp://',\r\n 'sftp://',\r\n 'irc://',\r\n 'chrome://',\r\n];\r\n\r\nexport class LoginUriView implements View {\r\n match: UriMatchType = null;\r\n\r\n // tslint:disable\r\n private _uri: string;\r\n private _domain: string;\r\n private _hostname: string;\r\n private _canLaunch: boolean;\r\n // tslint:enable\r\n\r\n constructor(u?: LoginUri) {\r\n if (!u) {\r\n return;\r\n }\r\n\r\n this.match = u.match;\r\n }\r\n\r\n get uri(): string {\r\n return this._uri;\r\n }\r\n set uri(value: string) {\r\n this._uri = value;\r\n this._domain = null;\r\n this._canLaunch = null;\r\n }\r\n\r\n get domain(): string {\r\n if (this._domain == null && this.uri != null) {\r\n this._domain = Utils.getDomain(this.uri);\r\n if (this._domain === '') {\r\n this._domain = null;\r\n }\r\n }\r\n\r\n return this._domain;\r\n }\r\n\r\n get hostname(): string {\r\n if (this._hostname == null && this.uri != null) {\r\n this._hostname = Utils.getHostname(this.uri);\r\n if (this._hostname === '') {\r\n this._hostname = null;\r\n }\r\n }\r\n\r\n return this._hostname;\r\n }\r\n\r\n get hostnameOrUri(): string {\r\n return this.hostname != null ? this.hostname : this.uri;\r\n }\r\n\r\n get isWebsite(): boolean {\r\n return this.uri != null && (this.uri.indexOf('http://') === 0 || this.uri.indexOf('https://') === 0);\r\n }\r\n\r\n get canLaunch(): boolean {\r\n if (this._canLaunch != null) {\r\n return this._canLaunch;\r\n }\r\n if (this.uri != null) {\r\n for (let i = 0; i < CanLaunchWhitelist.length; i++) {\r\n if (this.uri.indexOf(CanLaunchWhitelist[i]) === 0) {\r\n this._canLaunch = true;\r\n return this._canLaunch;\r\n }\r\n }\r\n }\r\n this._canLaunch = false;\r\n return this._canLaunch;\r\n }\r\n}\r\n","import {\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { TwoFactorProviderRequest } from 'jslib/models/request/twoFactorProviderRequest';\n\nexport abstract class TwoFactorBaseComponent {\n @Output() onUpdated = new EventEmitter();\n\n type: TwoFactorProviderType;\n organizationId: string;\n twoFactorProviderType = TwoFactorProviderType;\n enabled = false;\n authed = false;\n\n protected masterPasswordHash: string;\n\n constructor(protected apiService: ApiService, protected i18nService: I18nService,\n protected analytics: Angulartics2, protected toasterService: ToasterService,\n protected platformUtilsService: PlatformUtilsService) { }\n\n protected auth(authResponse: any) {\n this.masterPasswordHash = authResponse.masterPasswordHash;\n this.authed = true;\n }\n\n protected async enable(enableFunction: () => Promise) {\n try {\n await enableFunction();\n this.analytics.eventTrack.next({\n action: 'Enabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.onUpdated.emit(true);\n } catch { }\n }\n\n protected async disable(promise: Promise) {\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('twoStepDisableDesc'),\n this.i18nService.t('disable'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n const request = new TwoFactorProviderRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.type = this.type;\n if (this.organizationId != null) {\n promise = this.apiService.putTwoFactorOrganizationDisable(this.organizationId, request);\n } else {\n promise = this.apiService.putTwoFactorDisable(request);\n }\n await promise;\n this.enabled = false;\n this.analytics.eventTrack.next({\n action: 'Disabled Two-step ' + TwoFactorProviderType[this.type].toString(),\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepDisabled'));\n this.onUpdated.emit(false);\n } catch { }\n }\n}\n","import { Importer } from '../importers/importer';\r\n\r\nexport interface ImportOption {\r\n id: string;\r\n name: string;\r\n}\r\nexport abstract class ImportService {\r\n featuredImportOptions: ImportOption[];\r\n regularImportOptions: ImportOption[];\r\n getImportOptions: () => ImportOption[];\r\n import: (importer: Importer, fileContents: string, organizationId?: string) => Promise;\r\n getImporter: (format: string, organization?: boolean) => Importer;\r\n}\r\n","export abstract class ExportService {\r\n getExport: (format?: 'csv' | 'json') => Promise;\r\n getOrganizationExport: (organizationId: string, format?: 'csv' | 'json') => Promise;\r\n getFileName: (prefix?: string, extension?: string) => string;\r\n}\r\n","import {\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { ModalComponent } from '../modal.component';\nimport { AddEditComponent as OrgAddEditComponent } from '../organizations/vault/add-edit.component';\nimport { AddEditComponent } from '../vault/add-edit.component';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nexport class CipherReportComponent {\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n\n loading = false;\n hasLoaded = false;\n ciphers: CipherView[] = [];\n organization: Organization;\n\n private modal: ModalComponent = null;\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, protected userService: UserService,\n protected messagingService: MessagingService, public requiresPaid: boolean) { }\n\n async load() {\n this.loading = true;\n await this.setCiphers();\n this.loading = false;\n this.hasLoaded = true;\n }\n\n selectCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n let childComponent: OrgAddEditComponent | AddEditComponent;\n if (this.organization != null) {\n childComponent = this.modal.show(OrgAddEditComponent, this.cipherAddEditModalRef);\n (childComponent as OrgAddEditComponent).organization = this.organization;\n } else {\n childComponent = this.modal.show(AddEditComponent, this.cipherAddEditModalRef);\n }\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n if (this.organization != null) {\n childComponent.organizationId = this.organization.id;\n }\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.load();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n protected async checkAccess(): Promise {\n if (this.organization != null) {\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n if (this.requiresPaid && !this.organization.useTotp) {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n return false;\n }\n } else {\n const accessPremium = await this.userService.canAccessPremium();\n if (this.requiresPaid && !accessPremium) {\n this.messagingService.send('premiumRequired');\n this.loading = false;\n return false;\n }\n }\n return true;\n }\n\n protected async setCiphers() {\n this.ciphers = [];\n }\n}\n","import { CipherType } from '../../enums/cipherType';\n\nimport { CipherData } from '../data/cipherData';\n\nimport { CipherView } from '../view/cipherView';\n\nimport { Attachment } from './attachment';\nimport { Card } from './card';\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\nimport { Field } from './field';\nimport { Identity } from './identity';\nimport { Login } from './login';\nimport { Password } from './password';\nimport { SecureNote } from './secureNote';\n\nexport class Cipher extends Domain {\n id: string;\n organizationId: string;\n folderId: string;\n name: CipherString;\n notes: CipherString;\n type: CipherType;\n favorite: boolean;\n organizationUseTotp: boolean;\n edit: boolean;\n revisionDate: Date;\n localData: any;\n login: Login;\n identity: Identity;\n card: Card;\n secureNote: SecureNote;\n attachments: Attachment[];\n fields: Field[];\n passwordHistory: Password[];\n collectionIds: string[];\n\n constructor(obj?: CipherData, alreadyEncrypted: boolean = false, localData: any = null) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n userId: null,\n organizationId: null,\n folderId: null,\n name: null,\n notes: null,\n }, alreadyEncrypted, ['id', 'userId', 'organizationId', 'folderId']);\n\n this.type = obj.type;\n this.favorite = obj.favorite;\n this.organizationUseTotp = obj.organizationUseTotp;\n this.edit = obj.edit;\n this.revisionDate = obj.revisionDate != null ? new Date(obj.revisionDate) : null;\n this.collectionIds = obj.collectionIds;\n this.localData = localData;\n\n switch (this.type) {\n case CipherType.Login:\n this.login = new Login(obj.login, alreadyEncrypted);\n break;\n case CipherType.SecureNote:\n this.secureNote = new SecureNote(obj.secureNote, alreadyEncrypted);\n break;\n case CipherType.Card:\n this.card = new Card(obj.card, alreadyEncrypted);\n break;\n case CipherType.Identity:\n this.identity = new Identity(obj.identity, alreadyEncrypted);\n break;\n default:\n break;\n }\n\n if (obj.attachments != null) {\n this.attachments = [];\n obj.attachments.forEach((attachment) => {\n this.attachments.push(new Attachment(attachment, alreadyEncrypted));\n });\n } else {\n this.attachments = null;\n }\n\n if (obj.fields != null) {\n this.fields = [];\n obj.fields.forEach((field) => {\n this.fields.push(new Field(field, alreadyEncrypted));\n });\n } else {\n this.fields = null;\n }\n\n if (obj.passwordHistory != null) {\n this.passwordHistory = [];\n obj.passwordHistory.forEach((ph) => {\n this.passwordHistory.push(new Password(ph, alreadyEncrypted));\n });\n } else {\n this.passwordHistory = null;\n }\n }\n\n async decrypt(): Promise {\n const model = new CipherView(this);\n\n await this.decryptObj(model, {\n name: null,\n notes: null,\n }, this.organizationId);\n\n switch (this.type) {\n case CipherType.Login:\n model.login = await this.login.decrypt(this.organizationId);\n break;\n case CipherType.SecureNote:\n model.secureNote = await this.secureNote.decrypt(this.organizationId);\n break;\n case CipherType.Card:\n model.card = await this.card.decrypt(this.organizationId);\n break;\n case CipherType.Identity:\n model.identity = await this.identity.decrypt(this.organizationId);\n break;\n default:\n break;\n }\n\n const orgId = this.organizationId;\n\n if (this.attachments != null && this.attachments.length > 0) {\n const attachments: any[] = [];\n await this.attachments.reduce((promise, attachment) => {\n return promise.then(() => {\n return attachment.decrypt(orgId);\n }).then((decAttachment) => {\n attachments.push(decAttachment);\n });\n }, Promise.resolve());\n model.attachments = attachments;\n }\n\n if (this.fields != null && this.fields.length > 0) {\n const fields: any[] = [];\n await this.fields.reduce((promise, field) => {\n return promise.then(() => {\n return field.decrypt(orgId);\n }).then((decField) => {\n fields.push(decField);\n });\n }, Promise.resolve());\n model.fields = fields;\n }\n\n if (this.passwordHistory != null && this.passwordHistory.length > 0) {\n const passwordHistory: any[] = [];\n await this.passwordHistory.reduce((promise, ph) => {\n return promise.then(() => {\n return ph.decrypt(orgId);\n }).then((decPh) => {\n passwordHistory.push(decPh);\n });\n }, Promise.resolve());\n model.passwordHistory = passwordHistory;\n }\n\n return model;\n }\n\n toCipherData(userId: string): CipherData {\n const c = new CipherData();\n c.id = this.id;\n c.organizationId = this.organizationId;\n c.folderId = this.folderId;\n c.userId = this.organizationId != null ? userId : null;\n c.edit = this.edit;\n c.organizationUseTotp = this.organizationUseTotp;\n c.favorite = this.favorite;\n c.revisionDate = this.revisionDate != null ? this.revisionDate.toISOString() : null;\n c.type = this.type;\n c.collectionIds = this.collectionIds;\n\n this.buildDataModel(this, c, {\n name: null,\n notes: null,\n });\n\n switch (c.type) {\n case CipherType.Login:\n c.login = this.login.toLoginData();\n break;\n case CipherType.SecureNote:\n c.secureNote = this.secureNote.toSecureNoteData();\n break;\n case CipherType.Card:\n c.card = this.card.toCardData();\n break;\n case CipherType.Identity:\n c.identity = this.identity.toIdentityData();\n break;\n default:\n break;\n }\n\n if (this.fields != null) {\n c.fields = [];\n this.fields.forEach((field) => {\n c.fields.push(field.toFieldData());\n });\n }\n\n if (this.attachments != null) {\n c.attachments = [];\n this.attachments.forEach((attachment) => {\n c.attachments.push(attachment.toAttachmentData());\n });\n }\n\n if (this.passwordHistory != null) {\n c.passwordHistory = [];\n this.passwordHistory.forEach((ph) => {\n c.passwordHistory.push(ph.toPasswordHistoryData());\n });\n }\n return c;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\nimport { EventType } from 'jslib/enums/eventType';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\n\n@Injectable()\nexport class EventService {\n constructor(private i18nService: I18nService) { }\n\n getDefaultDateFilters() {\n const d = new Date();\n const end = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 23, 59);\n d.setDate(d.getDate() - 30);\n const start = new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0);\n return [this.toDateTimeLocalString(start), this.toDateTimeLocalString(end)];\n }\n\n formatDateFilters(filterStart: string, filterEnd: string) {\n const start: Date = new Date(filterStart);\n const end: Date = new Date(filterEnd + ':59.999');\n if (isNaN(start.getTime()) || isNaN(end.getTime()) || end < start) {\n throw new Error('Invalid date range.');\n }\n return [start.toISOString(), end.toISOString()];\n }\n\n getEventInfo(ev: EventResponse, options = new EventOptions()): EventInfo {\n const appInfo = this.getAppInfo(ev.deviceType);\n return {\n message: this.getEventMessage(ev, options),\n appIcon: appInfo[0],\n appName: appInfo[1],\n };\n }\n\n private getEventMessage(ev: EventResponse, options: EventOptions) {\n let msg = '';\n switch (ev.type) {\n // User\n case EventType.User_LoggedIn:\n msg = this.i18nService.t('loggedIn');\n break;\n case EventType.User_ChangedPassword:\n msg = this.i18nService.t('changedPassword');\n break;\n case EventType.User_Updated2fa:\n msg = this.i18nService.t('enabledUpdated2fa');\n break;\n case EventType.User_Disabled2fa:\n msg = this.i18nService.t('disabled2fa');\n break;\n case EventType.User_Recovered2fa:\n msg = this.i18nService.t('recovered2fa');\n break;\n case EventType.User_FailedLogIn:\n msg = this.i18nService.t('failedLogin');\n break;\n case EventType.User_FailedLogIn2fa:\n msg = this.i18nService.t('failedLogin2fa');\n break;\n // Cipher\n case EventType.Cipher_Created:\n msg = this.i18nService.t('createdItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Updated:\n msg = this.i18nService.t('editedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Deleted:\n msg = this.i18nService.t('deletedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentCreated:\n msg = this.i18nService.t('createdAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_AttachmentDeleted:\n msg = this.i18nService.t('deletedAttachmentForItem', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_Shared:\n msg = this.i18nService.t('sharedItemId', this.formatCipherId(ev, options));\n break;\n case EventType.Cipher_UpdatedCollections:\n msg = this.i18nService.t('editedCollectionsForItem', this.formatCipherId(ev, options));\n break;\n // Collection\n case EventType.Collection_Created:\n msg = this.i18nService.t('createdCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Updated:\n msg = this.i18nService.t('editedCollectionId', this.formatCollectionId(ev));\n break;\n case EventType.Collection_Deleted:\n msg = this.i18nService.t('deletedCollectionId', this.formatCollectionId(ev));\n break;\n // Group\n case EventType.Group_Created:\n msg = this.i18nService.t('createdGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Updated:\n msg = this.i18nService.t('editedGroupId', this.formatGroupId(ev));\n break;\n case EventType.Group_Deleted:\n msg = this.i18nService.t('deletedGroupId', this.formatGroupId(ev));\n break;\n // Org user\n case EventType.OrganizationUser_Invited:\n msg = this.i18nService.t('invitedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Confirmed:\n msg = this.i18nService.t('confirmedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Updated:\n msg = this.i18nService.t('editedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_Removed:\n msg = this.i18nService.t('removedUserId', this.formatOrgUserId(ev));\n break;\n case EventType.OrganizationUser_UpdatedGroups:\n msg = this.i18nService.t('editedGroupsForUser', this.formatOrgUserId(ev));\n break;\n // Org\n case EventType.Organization_Updated:\n msg = this.i18nService.t('editedOrgSettings');\n break;\n case EventType.Organization_PurgedVault:\n msg = this.i18nService.t('purgedOrganizationVault');\n break;\n default:\n break;\n }\n return msg === '' ? null : msg;\n }\n\n private getAppInfo(deviceType: DeviceType): [string, string] {\n switch (deviceType) {\n case DeviceType.Android:\n return ['fa-android', this.i18nService.t('mobile') + ' - Android'];\n case DeviceType.iOS:\n return ['fa-apple', this.i18nService.t('mobile') + ' - iOS'];\n case DeviceType.UWP:\n return ['fa-windows', this.i18nService.t('mobile') + ' - Windows'];\n case DeviceType.ChromeExtension:\n return ['fa-chrome', this.i18nService.t('extension') + ' - Chrome'];\n case DeviceType.FirefoxExtension:\n return ['fa-firefox', this.i18nService.t('extension') + ' - Firefox'];\n case DeviceType.OperaExtension:\n return ['fa-opera', this.i18nService.t('extension') + ' - Opera'];\n case DeviceType.EdgeExtension:\n return ['fa-edge', this.i18nService.t('extension') + ' - Edge'];\n case DeviceType.VivaldiExtension:\n return ['fa-puzzle-piece', this.i18nService.t('extension') + ' - Vivaldi'];\n case DeviceType.SafariExtension:\n return ['fa-safari', this.i18nService.t('extension') + ' - Safari'];\n case DeviceType.WindowsDesktop:\n return ['fa-windows', this.i18nService.t('desktop') + ' - Windows'];\n case DeviceType.MacOsDesktop:\n return ['fa-apple', this.i18nService.t('desktop') + ' - macOS'];\n case DeviceType.LinuxDesktop:\n return ['fa-linux', this.i18nService.t('desktop') + ' - Linux'];\n case DeviceType.ChromeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Chrome'];\n case DeviceType.FirefoxBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Firefox'];\n case DeviceType.OperaBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Opera'];\n case DeviceType.SafariBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Safari'];\n case DeviceType.VivaldiBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Vivaldi'];\n case DeviceType.EdgeBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - Edge'];\n case DeviceType.IEBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - IE'];\n case DeviceType.UnknownBrowser:\n return ['fa-globe', this.i18nService.t('webVault') + ' - ' + this.i18nService.t('unknown')];\n default:\n return ['fa-globe', this.i18nService.t('unknown')];\n }\n }\n\n private formatCipherId(ev: EventResponse, options: EventOptions) {\n const shortId = this.getShortId(ev.cipherId);\n if (ev.organizationId == null || !options.cipherInfo) {\n return '' + shortId + '';\n }\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/vault?search=' + shortId +\n '&viewEvents=' + ev.cipherId);\n return a.outerHTML;\n }\n\n private formatGroupId(ev: EventResponse) {\n const shortId = this.getShortId(ev.groupId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/groups?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatCollectionId(ev: EventResponse) {\n const shortId = this.getShortId(ev.collectionId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/collections?search=' + shortId);\n return a.outerHTML;\n }\n\n private formatOrgUserId(ev: EventResponse) {\n const shortId = this.getShortId(ev.organizationUserId);\n const a = this.makeAnchor(shortId);\n a.setAttribute('href', '#/organizations/' + ev.organizationId + '/manage/people?search=' + shortId +\n '&viewEvents=' + ev.organizationUserId);\n return a.outerHTML;\n }\n\n private makeAnchor(shortId: string) {\n const a = document.createElement('a');\n a.title = this.i18nService.t('view');\n a.innerHTML = '' + shortId + '';\n return a;\n }\n\n private getShortId(id: string) {\n return id.substring(0, 8);\n }\n\n private toDateTimeLocalString(date: Date) {\n return date.getFullYear() +\n '-' + this.pad(date.getMonth() + 1) +\n '-' + this.pad(date.getDate()) +\n 'T' + this.pad(date.getHours()) +\n ':' + this.pad(date.getMinutes());\n }\n\n private pad(num: number) {\n const norm = Math.floor(Math.abs(num));\n return (norm < 10 ? '0' : '') + norm;\n }\n}\n\nexport class EventInfo {\n message: string;\n appIcon: string;\n appName: string;\n}\n\nexport class EventOptions {\n cipherInfo = true;\n}\n","export enum OrganizationUserType {\r\n Owner = 0,\r\n Admin = 1,\r\n User = 2,\r\n Manager = 3,\r\n}\r\n","import { KdfType } from '../enums/kdfType';\nimport { TwoFactorProviderType } from '../enums/twoFactorProviderType';\n\nimport { AuthResult } from '../models/domain/authResult';\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\n\nimport { DeviceRequest } from '../models/request/deviceRequest';\nimport { KeysRequest } from '../models/request/keysRequest';\nimport { PreloginRequest } from '../models/request/preloginRequest';\nimport { TokenRequest } from '../models/request/tokenRequest';\n\nimport { ErrorResponse } from '../models/response/errorResponse';\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { AppIdService } from '../abstractions/appId.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { MessagingService } from '../abstractions/messaging.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService } from '../abstractions/user.service';\n\nexport const TwoFactorProviders = {\n [TwoFactorProviderType.Authenticator]: {\n type: TwoFactorProviderType.Authenticator,\n name: null as string,\n description: null as string,\n priority: 1,\n sort: 1,\n premium: false,\n },\n [TwoFactorProviderType.Yubikey]: {\n type: TwoFactorProviderType.Yubikey,\n name: null as string,\n description: null as string,\n priority: 3,\n sort: 2,\n premium: true,\n },\n [TwoFactorProviderType.Duo]: {\n type: TwoFactorProviderType.Duo,\n name: 'Duo',\n description: null as string,\n priority: 2,\n sort: 3,\n premium: true,\n },\n [TwoFactorProviderType.OrganizationDuo]: {\n type: TwoFactorProviderType.OrganizationDuo,\n name: 'Duo (Organization)',\n description: null as string,\n priority: 10,\n sort: 4,\n premium: false,\n },\n [TwoFactorProviderType.U2f]: {\n type: TwoFactorProviderType.U2f,\n name: null as string,\n description: null as string,\n priority: 4,\n sort: 5,\n premium: true,\n },\n [TwoFactorProviderType.Email]: {\n type: TwoFactorProviderType.Email,\n name: null as string,\n description: null as string,\n priority: 0,\n sort: 6,\n premium: false,\n },\n};\n\nexport class AuthService {\n email: string;\n masterPasswordHash: string;\n twoFactorProviders: Map;\n selectedTwoFactorProviderType: TwoFactorProviderType = null;\n\n private key: SymmetricCryptoKey;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private cryptoService: CryptoService, private apiService: ApiService,\n private userService: UserService, private tokenService: TokenService,\n private appIdService: AppIdService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private messagingService: MessagingService,\n private setCryptoKeys = true) { }\n\n init() {\n TwoFactorProviders[TwoFactorProviderType.Email].name = this.i18nService.t('emailTitle');\n TwoFactorProviders[TwoFactorProviderType.Email].description = this.i18nService.t('emailDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Authenticator].name = this.i18nService.t('authenticatorAppTitle');\n TwoFactorProviders[TwoFactorProviderType.Authenticator].description =\n this.i18nService.t('authenticatorAppDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Duo].description = this.i18nService.t('duoDesc');\n\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].name =\n 'Duo (' + this.i18nService.t('organization') + ')';\n TwoFactorProviders[TwoFactorProviderType.OrganizationDuo].description =\n this.i18nService.t('duoOrganizationDesc');\n\n TwoFactorProviders[TwoFactorProviderType.U2f].name = this.i18nService.t('u2fTitle');\n TwoFactorProviders[TwoFactorProviderType.U2f].description = this.i18nService.t('u2fDesc');\n\n TwoFactorProviders[TwoFactorProviderType.Yubikey].name = this.i18nService.t('yubiKeyTitle');\n TwoFactorProviders[TwoFactorProviderType.Yubikey].description = this.i18nService.t('yubiKeyDesc');\n }\n\n async logIn(email: string, masterPassword: string): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key);\n }\n\n async logInTwoFactor(twoFactorProvider: TwoFactorProviderType, twoFactorToken: string,\n remember?: boolean): Promise {\n return await this.logInHelper(this.email, this.masterPasswordHash, this.key, twoFactorProvider,\n twoFactorToken, remember);\n }\n\n async logInComplete(email: string, masterPassword: string, twoFactorProvider: TwoFactorProviderType,\n twoFactorToken: string, remember?: boolean): Promise {\n this.selectedTwoFactorProviderType = null;\n const key = await this.makePreloginKey(masterPassword, email);\n const hashedPassword = await this.cryptoService.hashPassword(masterPassword, key);\n return await this.logInHelper(email, hashedPassword, key, twoFactorProvider, twoFactorToken, remember);\n }\n\n logOut(callback: Function) {\n callback();\n this.messagingService.send('loggedOut');\n }\n\n getSupportedTwoFactorProviders(win: Window): any[] {\n const providers: any[] = [];\n if (this.twoFactorProviders == null) {\n return providers;\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.OrganizationDuo) &&\n this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.OrganizationDuo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Authenticator)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Authenticator]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Yubikey)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Yubikey]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Duo) && this.platformUtilsService.supportsDuo()) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Duo]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.U2f) && this.platformUtilsService.supportsU2f(win)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.U2f]);\n }\n\n if (this.twoFactorProviders.has(TwoFactorProviderType.Email)) {\n providers.push(TwoFactorProviders[TwoFactorProviderType.Email]);\n }\n\n return providers;\n }\n\n getDefaultTwoFactorProvider(u2fSupported: boolean): TwoFactorProviderType {\n if (this.twoFactorProviders == null) {\n return null;\n }\n\n if (this.selectedTwoFactorProviderType != null &&\n this.twoFactorProviders.has(this.selectedTwoFactorProviderType)) {\n return this.selectedTwoFactorProviderType;\n }\n\n let providerType: TwoFactorProviderType = null;\n let providerPriority = -1;\n this.twoFactorProviders.forEach((value, type) => {\n const provider = (TwoFactorProviders as any)[type];\n if (provider != null && provider.priority > providerPriority) {\n if (type === TwoFactorProviderType.U2f && !u2fSupported) {\n return;\n }\n\n providerType = type;\n providerPriority = provider.priority;\n }\n });\n\n return providerType;\n }\n\n async makePreloginKey(masterPassword: string, email: string): Promise {\n email = email.trim().toLowerCase();\n this.kdf = null;\n this.kdfIterations = null;\n try {\n const preloginResponse = await this.apiService.postPrelogin(new PreloginRequest(email));\n if (preloginResponse != null) {\n this.kdf = preloginResponse.kdf;\n this.kdfIterations = preloginResponse.kdfIterations;\n }\n } catch (e) {\n if (e == null || e.statusCode !== 404) {\n throw e;\n }\n }\n return this.cryptoService.makeKey(masterPassword, email, this.kdf, this.kdfIterations);\n }\n\n private async logInHelper(email: string, hashedPassword: string, key: SymmetricCryptoKey,\n twoFactorProvider?: TwoFactorProviderType, twoFactorToken?: string, remember?: boolean): Promise {\n const storedTwoFactorToken = await this.tokenService.getTwoFactorToken(email);\n const appId = await this.appIdService.getAppId();\n const deviceRequest = new DeviceRequest(appId, this.platformUtilsService);\n\n let request: TokenRequest;\n if (twoFactorToken != null && twoFactorProvider != null) {\n request = new TokenRequest(email, hashedPassword, twoFactorProvider, twoFactorToken, remember,\n deviceRequest);\n } else if (storedTwoFactorToken != null) {\n request = new TokenRequest(email, hashedPassword, TwoFactorProviderType.Remember,\n storedTwoFactorToken, false, deviceRequest);\n } else {\n request = new TokenRequest(email, hashedPassword, null, null, false, deviceRequest);\n }\n\n const response = await this.apiService.postIdentityToken(request);\n\n this.clearState();\n const result = new AuthResult();\n result.twoFactor = !(response as any).accessToken;\n\n if (result.twoFactor) {\n // two factor required\n const twoFactorResponse = response as IdentityTwoFactorResponse;\n this.email = email;\n this.masterPasswordHash = hashedPassword;\n this.key = this.setCryptoKeys ? key : null;\n this.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n result.twoFactorProviders = twoFactorResponse.twoFactorProviders2;\n return result;\n }\n\n const tokenResponse = response as IdentityTokenResponse;\n if (tokenResponse.twoFactorToken != null) {\n this.tokenService.setTwoFactorToken(tokenResponse.twoFactorToken, email);\n }\n\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\n await this.userService.setInformation(this.tokenService.getUserId(), this.tokenService.getEmail(),\n this.kdf, this.kdfIterations);\n if (this.setCryptoKeys) {\n await this.cryptoService.setKey(key);\n await this.cryptoService.setKeyHash(hashedPassword);\n await this.cryptoService.setEncKey(tokenResponse.key);\n\n // User doesn't have a key pair yet (old account), let's generate one for them\n if (tokenResponse.privateKey == null) {\n try {\n const keyPair = await this.cryptoService.makeKeyPair();\n await this.apiService.postAccountKeys(new KeysRequest(keyPair[0], keyPair[1].encryptedString));\n tokenResponse.privateKey = keyPair[1].encryptedString;\n } catch (e) {\n // tslint:disable-next-line\n console.error(e);\n }\n }\n\n await this.cryptoService.setEncPrivateKey(tokenResponse.privateKey);\n }\n\n this.messagingService.send('loggedIn');\n return result;\n }\n\n private clearState(): void {\n this.email = null;\n this.masterPasswordHash = null;\n this.twoFactorProviders = null;\n this.selectedTwoFactorProviderType = null;\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from 'jslib/angular/components/groupings.component';\n\n@Component({\n selector: 'app-vault-groupings',\n templateUrl: 'groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n @Output() onSearchTextChanged = new EventEmitter();\n\n searchText: string = '';\n searchPlaceholder: string = null;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n searchTextChanged() {\n this.onSearchTextChanged.emit(this.searchText);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CiphersComponent as BaseCiphersComponent } from 'jslib/angular/components/ciphers.component';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nconst MaxCheckedCount = 500;\n\n@Component({\n selector: 'app-vault-ciphers',\n templateUrl: 'ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent implements OnDestroy {\n @Input() showAddNew = true;\n @Output() onAttachmentsClicked = new EventEmitter();\n @Output() onShareClicked = new EventEmitter();\n @Output() onCollectionsClicked = new EventEmitter();\n\n cipherType = CipherType;\n actionPromise: Promise;\n\n constructor(searchService: SearchService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected i18nService: I18nService,\n protected platformUtilsService: PlatformUtilsService, protected cipherService: CipherService) {\n super(searchService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n checkCipher(c: CipherView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n if (select) {\n this.selectAll(false);\n }\n const selectCount = select && this.ciphers.length > MaxCheckedCount ? MaxCheckedCount : this.ciphers.length;\n for (let i = 0; i < selectCount; i++) {\n this.checkCipher(this.ciphers[i], select);\n }\n }\n\n getSelected(): CipherView[] {\n if (this.ciphers == null) {\n return [];\n }\n return this.ciphers.filter((c) => !!(c as any).checked);\n }\n\n getSelectedIds(): string[] {\n return this.getSelected().map((c) => c.id);\n }\n\n attachments(c: CipherView) {\n this.onAttachmentsClicked.emit(c);\n }\n\n share(c: CipherView) {\n this.onShareClicked.emit(c);\n }\n\n collections(c: CipherView) {\n this.onCollectionsClicked.emit(c);\n }\n\n async delete(c: CipherView): Promise {\n if (this.actionPromise != null) {\n return;\n }\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteItemConfirmation'), this.i18nService.t('deleteItem'),\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.actionPromise = this.deleteCipher(c.id);\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Cipher' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedItem'));\n this.refresh();\n } catch { }\n this.actionPromise = null;\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.analytics.eventTrack.next({ action: 'Copied ' + aType.toLowerCase() + ' from listing.' });\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.toasterService.popAsync('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n protected deleteCipher(id: string) {\n return this.cipherService.deleteWithServer(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return c.hasOldAttachments && c.organizationId == null;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { AddEditComponent as BaseAddEditComponent } from 'jslib/angular/components/add-edit.component';\nimport { LoginUriView } from 'jslib/models/view/loginUriView';\n\n@Component({\n selector: 'app-vault-add-edit',\n templateUrl: 'add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n canAccessPremium: boolean;\n totpCode: string;\n totpCodeFormatted: string;\n totpDash: number;\n totpSec: number;\n totpLow: boolean;\n showRevisionDate = false;\n hasPasswordHistory = false;\n viewingPasswordHistory = false;\n\n protected totpInterval: number;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n protected totpService: TotpService, protected passwordGenerationService: PasswordGenerationService,\n protected messagingService: MessagingService) {\n super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,\n userService, collectionService);\n }\n\n async ngOnInit() {\n await super.ngOnInit();\n await this.load();\n this.showRevisionDate = this.cipher.passwordRevisionDisplayDate != null;\n this.hasPasswordHistory = this.cipher.hasPasswordHistory;\n this.cleanUp();\n\n this.canAccessPremium = await this.userService.canAccessPremium();\n if (this.cipher.type === CipherType.Login && this.cipher.login.totp &&\n (this.cipher.organizationUseTotp || this.canAccessPremium)) {\n await this.totpUpdateCode();\n const interval = this.totpService.getTimeInterval(this.cipher.login.totp);\n await this.totpTick(interval);\n\n this.totpInterval = window.setInterval(async () => {\n await this.totpTick(interval);\n }, 1000);\n }\n }\n\n toggleFavorite() {\n this.cipher.favorite = !this.cipher.favorite;\n }\n\n launch(uri: LoginUriView) {\n if (!uri.canLaunch) {\n return;\n }\n\n this.platformUtilsService.eventTrack('Launched Login URI');\n this.platformUtilsService.launchUri(uri.uri);\n }\n\n copy(value: string, typeI18nKey: string, aType: string) {\n if (value == null) {\n return;\n }\n\n this.platformUtilsService.eventTrack('Copied ' + aType);\n this.platformUtilsService.copyToClipboard(value, { window: window });\n this.platformUtilsService.showToast('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t(typeI18nKey)));\n }\n\n async generatePassword(): Promise {\n const confirmed = await super.generatePassword();\n if (confirmed) {\n const options = await this.passwordGenerationService.getOptions();\n this.cipher.login.password = await this.passwordGenerationService.generatePassword(options);\n }\n return confirmed;\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.cipher.organizationId });\n }\n\n viewHistory() {\n this.viewingPasswordHistory = !this.viewingPasswordHistory;\n }\n\n protected cleanUp() {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n\n protected async totpUpdateCode() {\n if (this.cipher == null || this.cipher.type !== CipherType.Login || this.cipher.login.totp == null) {\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n return;\n }\n\n this.totpCode = await this.totpService.getCode(this.cipher.login.totp);\n if (this.totpCode != null) {\n if (this.totpCode.length > 4) {\n const half = Math.floor(this.totpCode.length / 2);\n this.totpCodeFormatted = this.totpCode.substring(0, half) + ' ' + this.totpCode.substring(half);\n } else {\n this.totpCodeFormatted = this.totpCode;\n }\n } else {\n this.totpCodeFormatted = null;\n if (this.totpInterval) {\n window.clearInterval(this.totpInterval);\n }\n }\n }\n\n private async totpTick(intervalSeconds: number) {\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const mod = epoch % intervalSeconds;\n\n this.totpSec = intervalSeconds - mod;\n this.totpDash = +(Math.round((((78.6 / intervalSeconds) * mod) + 'e+2') as any) + 'e-2');\n this.totpLow = this.totpSec <= 7;\n if (mod === 0) {\n await this.totpUpdateCode();\n }\n }\n}\n","export enum OrganizationUserStatusType {\n Invited = 0,\n Accepted = 1,\n Confirmed = 2,\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n Type,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorProviders } from 'jslib/services/auth.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorAuthenticatorComponent } from './two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './two-factor-recovery.component';\nimport { TwoFactorU2fComponent } from './two-factor-u2f.component';\nimport { TwoFactorYubiKeyComponent } from './two-factor-yubikey.component';\n\n@Component({\n selector: 'app-two-factor-setup',\n templateUrl: 'two-factor-setup.component.html',\n})\nexport class TwoFactorSetupComponent implements OnInit {\n @ViewChild('recoveryTemplate', { read: ViewContainerRef }) recoveryModalRef: ViewContainerRef;\n @ViewChild('authenticatorTemplate', { read: ViewContainerRef }) authenticatorModalRef: ViewContainerRef;\n @ViewChild('yubikeyTemplate', { read: ViewContainerRef }) yubikeyModalRef: ViewContainerRef;\n @ViewChild('u2fTemplate', { read: ViewContainerRef }) u2fModalRef: ViewContainerRef;\n @ViewChild('duoTemplate', { read: ViewContainerRef }) duoModalRef: ViewContainerRef;\n @ViewChild('emailTemplate', { read: ViewContainerRef }) emailModalRef: ViewContainerRef;\n\n organizationId: string;\n providers: any[] = [];\n canAccessPremium: boolean;\n loading = true;\n\n private modal: ModalComponent = null;\n\n constructor(protected apiService: ApiService, protected userService: UserService,\n protected componentFactoryResolver: ComponentFactoryResolver, protected messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n\n for (const key in TwoFactorProviders) {\n if (!TwoFactorProviders.hasOwnProperty(key)) {\n continue;\n }\n\n const p = (TwoFactorProviders as any)[key];\n if (this.filterProvider(p.type)) {\n continue;\n }\n\n this.providers.push({\n type: p.type,\n name: p.name,\n description: p.description,\n enabled: false,\n premium: p.premium,\n sort: p.sort,\n });\n }\n\n this.providers.sort((a: any, b: any) => a.sort - b.sort);\n await this.load();\n }\n\n async load() {\n this.loading = true;\n const providerList = await this.getTwoFactorProviders();\n providerList.data.forEach((p) => {\n this.providers.forEach((p2) => {\n if (p.type === p2.type) {\n p2.enabled = p.enabled;\n }\n });\n });\n this.loading = false;\n }\n\n manage(type: TwoFactorProviderType) {\n switch (type) {\n case TwoFactorProviderType.Authenticator:\n const authComp = this.openModal(this.authenticatorModalRef, TwoFactorAuthenticatorComponent);\n authComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Authenticator);\n });\n break;\n case TwoFactorProviderType.Yubikey:\n const yubiComp = this.openModal(this.yubikeyModalRef, TwoFactorYubiKeyComponent);\n yubiComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Yubikey);\n });\n break;\n case TwoFactorProviderType.Duo:\n const duoComp = this.openModal(this.duoModalRef, TwoFactorDuoComponent);\n duoComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Duo);\n });\n break;\n case TwoFactorProviderType.Email:\n const emailComp = this.openModal(this.emailModalRef, TwoFactorEmailComponent);\n emailComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.Email);\n });\n break;\n case TwoFactorProviderType.U2f:\n const u2fComp = this.openModal(this.u2fModalRef, TwoFactorU2fComponent);\n u2fComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.U2f);\n });\n break;\n default:\n break;\n }\n }\n\n recoveryCode() {\n this.openModal(this.recoveryModalRef, TwoFactorRecoveryComponent);\n }\n\n async premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n protected getTwoFactorProviders() {\n return this.apiService.getTwoFactorProviders();\n }\n\n protected filterProvider(type: TwoFactorProviderType) {\n return type === TwoFactorProviderType.OrganizationDuo;\n }\n\n protected openModal(ref: ViewContainerRef, type: Type): T {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = ref.createComponent(factory).instance;\n const childComponent = this.modal.show(type, ref);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n return childComponent;\n }\n\n protected updateStatus(enabled: boolean, type: TwoFactorProviderType) {\n if (!enabled && this.modal != null) {\n this.modal.close();\n }\n this.providers.forEach((p) => {\n if (p.type === type) {\n p.enabled = enabled;\n }\n });\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { ImportOption, ImportService } from 'jslib/abstractions/import.service';\n\n@Component({\n selector: 'app-import',\n templateUrl: 'import.component.html',\n})\nexport class ImportComponent implements OnInit {\n featuredImportOptions: ImportOption[];\n importOptions: ImportOption[];\n format: string = null;\n fileContents: string;\n formPromise: Promise;\n\n protected organizationId: string = null;\n protected successNavigate: any[] = ['vault'];\n\n constructor(protected i18nService: I18nService, protected analytics: Angulartics2,\n protected toasterService: ToasterService, protected importService: ImportService,\n protected router: Router) { }\n\n ngOnInit() {\n this.setImportOptions();\n this.importOptions.sort((a, b) => {\n if (a.name == null && b.name != null) {\n return -1;\n }\n if (a.name != null && b.name == null) {\n return 1;\n }\n if (a.name == null && b.name == null) {\n return 0;\n }\n\n return this.i18nService.collator ? this.i18nService.collator.compare(a.name, b.name) :\n a.name.localeCompare(b.name);\n });\n }\n\n async submit() {\n const importer = this.importService.getImporter(this.format, this.organizationId != null);\n if (importer === null) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFormat'));\n return;\n }\n\n const fileEl = document.getElementById('file') as HTMLInputElement;\n const files = fileEl.files;\n if ((files == null || files.length === 0) && (this.fileContents == null || this.fileContents === '')) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n let fileContents = this.fileContents;\n if (files != null && files.length > 0) {\n try {\n const content = await this.getFileContents(files[0]);\n if (content != null) {\n fileContents = content;\n }\n } catch { }\n }\n\n if (fileContents == null || fileContents === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n try {\n this.formPromise = this.importService.import(importer, fileContents, this.organizationId);\n const error = await this.formPromise;\n if (error != null) {\n this.error(error);\n return;\n }\n this.analytics.eventTrack.next({\n action: 'Imported Data',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('importSuccess'));\n this.router.navigate(this.successNavigate);\n } catch { }\n }\n\n getFormatInstructionTitle() {\n if (this.format == null) {\n return null;\n }\n\n const results = this.featuredImportOptions.concat(this.importOptions).filter((o) => o.id === this.format);\n if (results.length > 0) {\n return this.i18nService.t('instructionsFor', results[0].name);\n }\n return null;\n }\n\n protected setImportOptions() {\n this.featuredImportOptions = [{\n id: null,\n name: '-- ' + this.i18nService.t('select') + ' --',\n }, ...this.importService.featuredImportOptions];\n this.importOptions = this.importService.regularImportOptions;\n }\n\n private error(error: Error) {\n this.analytics.eventTrack.next({\n action: 'Import Data Failed',\n properties: { label: this.format },\n });\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'), error.message);\n }\n\n private getFileContents(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsText(file, 'utf-8');\n reader.onload = (evt) => {\n if (this.format === 'lastpasscsv' && file.type === 'text/html') {\n const parser = new DOMParser();\n const doc = parser.parseFromString((evt.target as any).result, 'text/html');\n const pre = doc.querySelector('pre');\n if (pre != null) {\n resolve(pre.textContent);\n return;\n }\n reject();\n return;\n }\n\n resolve((evt.target as any).result);\n };\n reader.onerror = () => {\n reject();\n };\n });\n }\n}\n","import { Component } from '@angular/core';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from 'jslib/angular/components/export.component';\n\n@Component({\n selector: 'app-export',\n templateUrl: 'export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService) {\n super(cryptoService, i18nService, platformUtilsService, exportService, window);\n }\n\n protected saved() {\n super.saved();\n this.masterPassword = null;\n this.platformUtilsService.showToast('success', null, this.i18nService.t('exportSuccess'));\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: 'reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordUseMap: Map;\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const ciphersWithPasswords: CipherView[] = [];\n this.passwordUseMap = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n ciphersWithPasswords.push(c);\n if (this.passwordUseMap.has(c.login.password)) {\n this.passwordUseMap.set(c.login.password, this.passwordUseMap.get(c.login.password) + 1);\n } else {\n this.passwordUseMap.set(c.login.password, 1);\n }\n });\n const reusedPasswordCiphers = ciphersWithPasswords.filter((c) =>\n this.passwordUseMap.has(c.login.password) && this.passwordUseMap.get(c.login.password) > 1);\n this.ciphers = reusedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import { EncryptionType } from '../../enums/encryptionType';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class CipherString {\r\n encryptedString?: string;\r\n encryptionType?: EncryptionType;\r\n decryptedValue?: string;\r\n data?: string;\r\n iv?: string;\r\n mac?: string;\r\n\r\n constructor(encryptedStringOrType: string | EncryptionType, data?: string, iv?: string, mac?: string) {\r\n if (data != null) {\r\n // data and header\r\n const encType = encryptedStringOrType as EncryptionType;\r\n this.encryptedString = encType + '.' + data;\r\n\r\n // iv\r\n if (iv != null) {\r\n this.encryptedString += ('|' + iv);\r\n }\r\n\r\n // mac\r\n if (mac != null) {\r\n this.encryptedString += ('|' + mac);\r\n }\r\n\r\n this.encryptionType = encType;\r\n this.data = data;\r\n this.iv = iv;\r\n this.mac = mac;\r\n\r\n return;\r\n }\r\n\r\n this.encryptedString = encryptedStringOrType as string;\r\n if (!this.encryptedString) {\r\n return;\r\n }\r\n\r\n const headerPieces = this.encryptedString.split('.');\r\n let encPieces: string[] = null;\r\n\r\n if (headerPieces.length === 2) {\r\n try {\r\n this.encryptionType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) {\r\n return;\r\n }\r\n } else {\r\n encPieces = this.encryptedString.split('|');\r\n this.encryptionType = encPieces.length === 3 ? EncryptionType.AesCbc128_HmacSha256_B64 :\r\n EncryptionType.AesCbc256_B64;\r\n }\r\n\r\n switch (this.encryptionType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encPieces.length !== 3) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n this.mac = encPieces[2];\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encPieces.length !== 2) {\r\n return;\r\n }\r\n\r\n this.iv = encPieces[0];\r\n this.data = encPieces[1];\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n if (encPieces.length !== 1) {\r\n return;\r\n }\r\n\r\n this.data = encPieces[0];\r\n break;\r\n default:\r\n return;\r\n }\r\n }\r\n\r\n async decrypt(orgId: string): Promise {\r\n if (this.decryptedValue) {\r\n return Promise.resolve(this.decryptedValue);\r\n }\r\n\r\n let cryptoService: CryptoService;\r\n const containerService = (Utils.global as any).bitwardenContainerService;\r\n if (containerService) {\r\n cryptoService = containerService.getCryptoService();\r\n } else {\r\n throw new Error('global bitwardenContainerService not initialized.');\r\n }\r\n\r\n try {\r\n const orgKey = await cryptoService.getOrgKey(orgId);\r\n this.decryptedValue = await cryptoService.decryptToUtf8(this, orgKey);\r\n } catch (e) {\r\n this.decryptedValue = '[error: cannot decrypt]';\r\n }\r\n return this.decryptedValue;\r\n }\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: 'unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends CipherReportComponent implements OnInit {\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const unsecuredCiphers = allCiphers.filter((c) => {\n if (c.type !== CipherType.Login || !c.login.hasUris) {\n return false;\n }\n return c.login.uris.find((u) => u.uri != null && u.uri.indexOf('http://') === 0) != null;\n });\n this.ciphers = unsecuredCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: 'weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends CipherReportComponent implements OnInit {\n passwordStrengthMap = new Map();\n\n private passwordStrengthCache = new Map();\n\n constructor(protected cipherService: CipherService, protected passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const weakPasswordCiphers: CipherView[] = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const hasUsername = c.login.username != null && c.login.username.trim() !== '';\n const cacheKey = c.login.password + '_____' + (hasUsername ? c.login.username : '');\n if (!this.passwordStrengthCache.has(cacheKey)) {\n let userInput: string[] = [];\n if (hasUsername) {\n const atPosition = c.login.username.indexOf('@');\n if (atPosition > -1) {\n userInput = userInput.concat(\n c.login.username.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/))\n .filter((i) => i.length >= 3);\n } else {\n userInput = c.login.username.trim().toLowerCase().split(/[^A-Za-z0-9]/)\n .filter((i) => i.length >= 3);\n }\n }\n const result = this.passwordGenerationService.passwordStrength(c.login.password,\n userInput.length > 0 ? userInput : null);\n this.passwordStrengthCache.set(cacheKey, result.score);\n }\n const score = this.passwordStrengthCache.get(cacheKey);\n if (score != null && score <= 3) {\n this.passwordStrengthMap.set(c.id, this.scoreKey(score));\n weakPasswordCiphers.push(c);\n }\n });\n this.ciphers = weakPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private scoreKey(score: number): [string, string] {\n switch (score) {\n case 4:\n return ['strong', 'success'];\n case 3:\n return ['good', 'primary'];\n case 2:\n return ['weak', 'warning'];\n default:\n return ['veryWeak', 'danger'];\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: 'exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends CipherReportComponent implements OnInit {\n exposedPasswordMap = new Map();\n\n constructor(protected cipherService: CipherService, protected auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n ngOnInit() {\n this.checkAccess();\n }\n\n async load() {\n if (await this.checkAccess()) {\n super.load();\n }\n }\n\n async setCiphers() {\n const allCiphers = await this.getAllCiphers();\n const exposedPasswordCiphers: CipherView[] = [];\n const promises: Array> = [];\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || c.login.password == null || c.login.password === '') {\n return;\n }\n const promise = this.auditService.passwordLeaked(c.login.password).then((exposedCount) => {\n if (exposedCount > 0) {\n exposedPasswordCiphers.push(c);\n this.exposedPasswordMap.set(c.id, exposedCount);\n }\n });\n promises.push(promise);\n });\n await Promise.all(promises);\n this.ciphers = exposedPasswordCiphers;\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { CipherReportComponent } from './cipher-report.component';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: 'inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends CipherReportComponent implements OnInit {\n services = new Map();\n cipherDocs = new Map();\n\n constructor(protected cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService) {\n super(componentFactoryResolver, userService, messagingService, true);\n }\n\n async ngOnInit() {\n if (await this.checkAccess()) {\n await super.load();\n }\n }\n\n async setCiphers() {\n try {\n await this.load2fa();\n } catch { }\n if (this.services.size > 0) {\n const allCiphers = await this.getAllCiphers();\n const inactive2faCiphers: CipherView[] = [];\n const promises: Array> = [];\n const docs = new Map();\n allCiphers.forEach((c) => {\n if (c.type !== CipherType.Login || (c.login.totp != null && c.login.totp !== '') || !c.login.hasUris) {\n return;\n }\n for (let i = 0; i < c.login.uris.length; i++) {\n const u = c.login.uris[i];\n if (u.uri != null && u.uri !== '') {\n const hostname = Utils.getHostname(u.uri);\n if (hostname != null && this.services.has(hostname)) {\n if (this.services.get(hostname) != null) {\n docs.set(c.id, this.services.get(hostname));\n }\n inactive2faCiphers.push(c);\n break;\n }\n }\n }\n });\n await Promise.all(promises);\n this.ciphers = inactive2faCiphers;\n this.cipherDocs = docs;\n }\n }\n\n protected getAllCiphers(): Promise {\n return this.cipherService.getAllDecrypted();\n }\n\n private async load2fa() {\n if (this.services.size > 0) {\n return;\n }\n const response = await fetch(new Request('https://twofactorauth.org/data.json'));\n if (response.status !== 200) {\n throw new Error();\n }\n const responseJson = await response.json();\n for (const categoryName in responseJson) {\n if (responseJson.hasOwnProperty(categoryName)) {\n const category = responseJson[categoryName];\n for (const serviceName in category) {\n if (category.hasOwnProperty(serviceName)) {\n const service = category[serviceName];\n if (service.tfa && service.url != null) {\n const hostname = Utils.getHostname(service.url);\n if (hostname != null) {\n this.services.set(hostname, service.doc);\n }\n }\n }\n }\n }\n }\n }\n}\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\n@Pipe({\n name: 'search',\n})\nexport class SearchPipe implements PipeTransform {\n transform(items: any[], searchText: string, prop1?: string, prop2?: string, prop3?: string): any[] {\n if (items == null || items.length === 0) {\n return [];\n }\n\n if (searchText == null || searchText.length < 2) {\n return items;\n }\n\n searchText = searchText.trim().toLowerCase();\n return items.filter((i) => {\n if (prop1 != null && i[prop1] != null && i[prop1].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop2 != null && i[prop2] != null && i[prop2].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (prop3 != null && i[prop3] != null && i[prop3].toString().toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n return false;\n });\n }\n}\n","export class SelectionReadOnlyRequest {\n id: string;\n readOnly: boolean;\n\n constructor(id: string, readOnly: boolean) {\n this.id = id;\n this.readOnly = readOnly;\n }\n}\n","export class SelectionReadOnlyResponse {\n id: string;\n readOnly: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.readOnly = response.ReadOnly;\n }\n}\n","import { EnvironmentService } from './environment.service';\r\n\r\nexport abstract class NotificationsService {\r\n init: (environmentService: EnvironmentService) => Promise;\r\n updateConnection: (sync?: boolean) => Promise;\r\n reconnectFromActivity: () => Promise;\r\n disconnectFromInactivity: () => Promise;\r\n}\r\n","export abstract class SettingsService {\r\n clearCache: () => void;\r\n getEquivalentDomains: () => Promise;\r\n setEquivalentDomains: (equivalentDomains: string[][]) => Promise;\r\n clear: (userId: string) => Promise;\r\n}\r\n","import {\r\n Component,\r\n OnDestroy,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\n@Component({\r\n selector: 'app-frontend-layout',\r\n templateUrl: 'frontend-layout.component.html',\r\n})\r\nexport class FrontendLayoutComponent implements OnInit, OnDestroy {\r\n version: string;\r\n\r\n constructor(private platformUtilsService: PlatformUtilsService) { }\r\n\r\n ngOnInit() {\r\n this.version = this.platformUtilsService.getApplicationVersion();\r\n document.body.classList.add('layout_frontend');\r\n }\r\n\r\n ngOnDestroy() {\r\n document.body.classList.remove('layout_frontend');\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { LoginComponent as BaseLoginComponent } from 'jslib/angular/components/login.component';\n\n@Component({\n selector: 'app-login',\n templateUrl: 'login.component.html',\n})\nexport class LoginComponent extends BaseLoginComponent {\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, private route: ActivatedRoute,\n storageService: StorageService, private stateService: StateService,\n platformUtilsService: PlatformUtilsService) {\n super(authService, router, platformUtilsService, i18nService, storageService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n async ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n await super.ngOnInit();\n queryParamsSub.unsubscribe();\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { Router } from '@angular/router';\n\nimport { TwoFactorOptionsComponent } from './two-factor-options.component';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { EnvironmentService } from 'jslib/abstractions/environment.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { TwoFactorComponent as BaseTwoFactorComponent } from 'jslib/angular/components/two-factor.component';\n\n@Component({\n selector: 'app-two-factor',\n templateUrl: 'two-factor.component.html',\n})\nexport class TwoFactorComponent extends BaseTwoFactorComponent {\n @ViewChild('twoFactorOptions', { read: ViewContainerRef }) twoFactorOptionsModal: ViewContainerRef;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, apiService: ApiService,\n platformUtilsService: PlatformUtilsService, private stateService: StateService,\n environmentService: EnvironmentService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(authService, router, i18nService, apiService, platformUtilsService, window, environmentService);\n this.onSuccessfulLoginNavigate = this.goAfterLogIn;\n }\n\n anotherMethod() {\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n const modal = this.twoFactorOptionsModal.createComponent(factory).instance;\n const childComponent = modal.show(TwoFactorOptionsComponent,\n this.twoFactorOptionsModal);\n\n childComponent.onProviderSelected.subscribe(async (provider: TwoFactorProviderType) => {\n modal.close();\n this.selectedProviderType = provider;\n await this.init();\n });\n childComponent.onRecoverSelected.subscribe(() => {\n modal.close();\n });\n }\n\n async goAfterLogIn() {\n const invite = await this.stateService.get('orgInvitation');\n if (invite != null) {\n this.router.navigate(['accept-organization'], { queryParams: invite });\n } else {\n const loginRedirect = await this.stateService.get('loginRedirect');\n if (loginRedirect != null) {\n this.router.navigate([loginRedirect.route], { queryParams: loginRedirect.qParams });\n await this.stateService.remove('loginRedirect');\n } else {\n this.router.navigate([this.successRoute]);\n }\n }\n }\n}\n","import {\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-password-strength',\n templateUrl: 'password-strength.component.html',\n})\nexport class PasswordStrengthComponent implements OnChanges {\n @Input() score?: number;\n @Input() showText = false;\n\n scoreWidth = 0;\n color = 'bg-danger';\n text: string;\n\n constructor(private i18nService: I18nService) { }\n\n ngOnChanges(): void {\n this.scoreWidth = this.score == null ? 0 : (this.score + 1) * 20;\n switch (this.score) {\n case 4:\n this.color = 'bg-success';\n this.text = this.i18nService.t('strong');\n break;\n case 3:\n this.color = 'bg-primary';\n this.text = this.i18nService.t('good');\n break;\n case 2:\n this.color = 'bg-warning';\n this.text = this.i18nService.t('weak');\n break;\n default:\n this.color = 'bg-danger';\n this.text = this.score != null ? this.i18nService.t('weak') : null;\n break;\n }\n }\n}\n","import { Component } from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\n\nimport { RegisterComponent as BaseRegisterComponent } from 'jslib/angular/components/register.component';\n\n@Component({\n selector: 'app-register',\n templateUrl: 'register.component.html',\n})\nexport class RegisterComponent extends BaseRegisterComponent {\n showCreateOrgMessage = false;\n showTerms = true;\n\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, cryptoService: CryptoService,\n apiService: ApiService, private route: ActivatedRoute,\n stateService: StateService, platformUtilsService: PlatformUtilsService,\n passwordGenerationService: PasswordGenerationService) {\n super(authService, router, i18nService, cryptoService, apiService, stateService, platformUtilsService,\n passwordGenerationService);\n this.showTerms = !platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe((qParams) => {\n if (qParams.email != null && qParams.email.indexOf('@') > -1) {\n this.email = qParams.email;\n }\n if (qParams.premium != null) {\n this.stateService.save('loginRedirect', { route: '/settings/premium' });\n } else if (qParams.org != null) {\n this.showCreateOrgMessage = true;\n this.stateService.save('loginRedirect',\n { route: '/settings/create-organization', qParams: { plan: qParams.org } });\n }\n queryParamsSub.unsubscribe();\n });\n }\n}\n","export enum KdfType {\r\n PBKDF2_SHA256 = 0,\r\n}\r\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { HintComponent as BaseHintComponent } from 'jslib/angular/components/hint.component';\n\n@Component({\n selector: 'app-hint',\n templateUrl: 'hint.component.html',\n})\nexport class HintComponent extends BaseHintComponent {\n constructor(router: Router, i18nService: I18nService,\n apiService: ApiService, platformUtilsService: PlatformUtilsService) {\n super(router, i18nService, apiService, platformUtilsService);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { RouterService } from '../services/router.service';\n\nimport { LockComponent as BaseLockComponent } from 'jslib/angular/components/lock.component';\n\n@Component({\n selector: 'app-lock',\n templateUrl: 'lock.component.html',\n})\nexport class LockComponent extends BaseLockComponent implements OnInit {\n constructor(router: Router, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, messagingService: MessagingService,\n userService: UserService, cryptoService: CryptoService,\n private routerService: RouterService) {\n super(router, i18nService, platformUtilsService, messagingService, userService, cryptoService);\n }\n\n async ngOnInit() {\n const authed = await this.userService.isAuthenticated();\n if (!authed) {\n this.router.navigate(['/']);\n } else if (await this.cryptoService.hasKey()) {\n this.router.navigate(['vault']);\n }\n\n const previousUrl = this.routerService.getPreviousUrl();\n if (previousUrl !== '/' && previousUrl.indexOf('lock') === -1) {\n this.successRoute = previousUrl;\n }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { VerifyEmailRequest } from 'jslib/models/request/verifyEmailRequest';\n\n@Component({\n selector: 'app-verify-email-token',\n templateUrl: 'verify-email-token.component.html',\n})\nexport class VerifyEmailTokenComponent implements OnInit {\n constructor(private router: Router, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute,\n private apiService: ApiService, private userService: UserService) { }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null) {\n try {\n await this.apiService.postAccountVerifyEmailToken(\n new VerifyEmailRequest(qParams.userId, qParams.token));\n const authed = await this.userService.isAuthenticated();\n if (authed) {\n await this.apiService.refreshIdentityToken();\n }\n this.toasterService.popAsync('success', null, this.i18nService.t('emailVerified'));\n this.router.navigate(['/']);\n return;\n } catch { }\n }\n this.toasterService.popAsync('error', null, this.i18nService.t('emailVerifiedFailed'));\n this.router.navigate(['/']);\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport {\r\n Toast,\r\n ToasterService,\r\n} from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { StateService } from 'jslib/abstractions/state.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { OrganizationUserAcceptRequest } from 'jslib/models/request/organizationUserAcceptRequest';\r\n\r\n@Component({\r\n selector: 'app-accept-organization',\r\n templateUrl: 'accept-organization.component.html',\r\n})\r\nexport class AcceptOrganizationComponent implements OnInit {\r\n loading = true;\r\n authed = false;\r\n orgName: string;\r\n email: string;\r\n actionPromise: Promise;\r\n\r\n constructor(private router: Router, private toasterService: ToasterService,\r\n private i18nService: I18nService, private route: ActivatedRoute,\r\n private apiService: ApiService, private userService: UserService,\r\n private stateService: StateService) { }\r\n\r\n ngOnInit() {\r\n let fired = false;\r\n this.route.queryParams.subscribe(async (qParams) => {\r\n if (fired) {\r\n return;\r\n }\r\n fired = true;\r\n await this.stateService.remove('orgInvitation');\r\n let error = qParams.organizationId == null || qParams.organizationUserId == null || qParams.token == null;\r\n if (!error) {\r\n this.authed = await this.userService.isAuthenticated();\r\n if (this.authed) {\r\n const request = new OrganizationUserAcceptRequest();\r\n request.token = qParams.token;\r\n try {\r\n this.actionPromise = this.apiService.postOrganizationUserAccept(qParams.organizationId,\r\n qParams.organizationUserId, request);\r\n await this.actionPromise;\r\n const toast: Toast = {\r\n type: 'success',\r\n title: this.i18nService.t('inviteAccepted'),\r\n body: this.i18nService.t('inviteAcceptedDesc'),\r\n timeout: 10000,\r\n };\r\n this.toasterService.popAsync(toast);\r\n this.router.navigate(['/vault']);\r\n } catch {\r\n error = true;\r\n }\r\n } else {\r\n await this.stateService.save('orgInvitation', qParams);\r\n this.email = qParams.email;\r\n this.orgName = qParams.organizationName;\r\n if (this.orgName != null) {\r\n // Fix URL encoding of space issue with Angular\r\n this.orgName = this.orgName.replace(/\\+/g, ' ');\r\n }\r\n }\r\n }\r\n\r\n if (error) {\r\n this.toasterService.popAsync('error', null, this.i18nService.t('inviteAcceptFailed'));\r\n this.router.navigate(['/']);\r\n }\r\n\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { TwoFactorRecoveryRequest } from 'jslib/models/request/twoFactorRecoveryRequest';\n\n@Component({\n selector: 'app-recover-two-factor',\n templateUrl: 'recover-two-factor.component.html',\n})\nexport class RecoverTwoFactorComponent {\n email: string;\n masterPassword: string;\n recoveryCode: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private cryptoService: CryptoService,\n private authService: AuthService) { }\n\n async submit() {\n try {\n const request = new TwoFactorRecoveryRequest();\n request.recoveryCode = this.recoveryCode.replace(/\\s/g, '').toLowerCase();\n request.email = this.email.trim().toLowerCase();\n const key = await this.authService.makePreloginKey(this.masterPassword, request.email);\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, key);\n this.formPromise = this.apiService.postTwoFactorRecover(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered 2FA' });\n this.toasterService.popAsync('success', null, this.i18nService.t('twoStepRecoverDisabled'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { DeleteRecoverRequest } from 'jslib/models/request/deleteRecoverRequest';\n\n@Component({\n selector: 'app-recover-delete',\n templateUrl: 'recover-delete.component.html',\n})\nexport class RecoverDeleteComponent {\n email: string;\n formPromise: Promise;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService) {\n }\n\n async submit() {\n try {\n const request = new DeleteRecoverRequest();\n request.email = this.email.trim().toLowerCase();\n this.formPromise = this.apiService.postAccountRecoverDelete(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Started Delete Recovery' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deleteRecoverEmailSent'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { VerifyDeleteRecoverRequest } from 'jslib/models/request/verifyDeleteRecoverRequest';\n\n@Component({\n selector: 'app-verify-recover-delete',\n templateUrl: 'verify-recover-delete.component.html',\n})\nexport class VerifyRecoverDeleteComponent implements OnInit {\n email: string;\n formPromise: Promise;\n\n private userId: string;\n private token: string;\n\n constructor(private router: Router, private apiService: ApiService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute) {\n }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n if (qParams.userId != null && qParams.token != null && qParams.email != null) {\n this.userId = qParams.userId;\n this.token = qParams.token;\n this.email = qParams.email;\n } else {\n this.router.navigate(['/']);\n }\n });\n }\n\n async submit() {\n try {\n const request = new VerifyDeleteRecoverRequest(this.userId, this.token);\n this.formPromise = this.apiService.postAccountRecoverDeleteToken(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Recovered Delete' });\n this.toasterService.popAsync('success', this.i18nService.t('accountDeleted'),\n this.i18nService.t('accountDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\n@Component({\n selector: 'app-navbar',\n templateUrl: 'navbar.component.html',\n})\nexport class NavbarComponent implements OnInit {\n selfHosted = false;\n name: string;\n email: string;\n\n constructor(private messagingService: MessagingService, private platformUtilsService: PlatformUtilsService,\n private tokenService: TokenService) {\n this.selfHosted = this.platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.name = await this.tokenService.getName();\n this.email = await this.tokenService.getEmail();\n if (this.name == null || this.name.trim() === '') {\n this.name = this.email;\n }\n }\n\n lock() {\n this.messagingService.send('lockVault');\n }\n\n logOut() {\n this.messagingService.send('logout');\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\n@Component({\n selector: 'app-footer',\n templateUrl: 'footer.component.html',\n})\nexport class FooterComponent implements OnInit {\n version: string;\n year: string = '2015';\n\n constructor(private platformUtilsService: PlatformUtilsService) { }\n\n ngOnInit() {\n this.year = new Date().getFullYear().toString();\n this.version = this.platformUtilsService.getApplicationVersion();\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-user-layout',\r\n templateUrl: 'user-layout.component.html',\r\n})\r\nexport class UserLayoutComponent implements OnInit {\r\n ngOnInit() {\r\n document.body.classList.remove('layout_frontend');\r\n }\r\n}\r\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { ModalComponent } from '../modal.component';\n\nimport { OrganizationsComponent } from '../settings/organizations.component';\nimport { UpdateKeyComponent } from '../settings/update-key.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { BulkDeleteComponent } from './bulk-delete.component';\nimport { BulkMoveComponent } from './bulk-move.component';\nimport { BulkShareComponent } from './bulk-share.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { FolderAddEditComponent } from './folder-add-edit.component';\nimport { GroupingsComponent } from './groupings.component';\nimport { ShareComponent } from './share.component';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nconst BroadcasterSubscriptionId = 'VaultComponent';\n\n@Component({\n selector: 'app-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild(OrganizationsComponent) organizationsComponent: OrganizationsComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('folderAddEdit', { read: ViewContainerRef }) folderAddEditModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('share', { read: ViewContainerRef }) shareModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('bulkDeleteTemplate', { read: ViewContainerRef }) bulkDeleteModalRef: ViewContainerRef;\n @ViewChild('bulkMoveTemplate', { read: ViewContainerRef }) bulkMoveModalRef: ViewContainerRef;\n @ViewChild('bulkShareTemplate', { read: ViewContainerRef }) bulkShareModalRef: ViewContainerRef;\n @ViewChild('updateKeyTemplate', { read: ViewContainerRef }) updateKeyModalRef: ViewContainerRef;\n\n favorites: boolean = false;\n type: CipherType = null;\n folderId: string = null;\n collectionId: string = null;\n showVerifyEmail = false;\n showBrowserOutdated = false;\n showUpdateKey = false;\n showPremiumCallout = false;\n\n private modal: ModalComponent = null;\n\n constructor(private syncService: SyncService, private route: ActivatedRoute,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private tokenService: TokenService, private cryptoService: CryptoService,\n private messagingService: MessagingService, private userService: UserService,\n private platformUtilsService: PlatformUtilsService, private toasterService: ToasterService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n async ngOnInit() {\n this.showVerifyEmail = !(await this.tokenService.getEmailVerified());\n this.showBrowserOutdated = window.navigator.userAgent.indexOf('MSIE') !== -1;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (params) => {\n await this.syncService.fullSync(false);\n\n this.showUpdateKey = !(await this.cryptoService.hasEncKey());\n const canAccessPremium = await this.userService.canAccessPremium();\n this.showPremiumCallout = !this.showVerifyEmail && !canAccessPremium &&\n !this.platformUtilsService.isSelfHost();\n\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n ]);\n\n if (params == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (params.favorites) {\n this.groupingsComponent.selectedFavorites = true;\n await this.filterFavorites();\n } else if (params.type) {\n const t = parseInt(params.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t);\n } else if (params.folderId) {\n this.groupingsComponent.selectedFolder = true;\n this.groupingsComponent.selectedFolderId = params.folderId;\n await this.filterFolder(params.folderId);\n } else if (params.collectionId) {\n this.groupingsComponent.selectedCollectionId = params.collectionId;\n await this.filterCollection(params.collectionId);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.organizationsComponent.load(),\n this.ciphersComponent.load(this.ciphersComponent.filter),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n\n queryParamsSub.unsubscribe();\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async clearGroupingFilters() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchVault');\n await this.ciphersComponent.load();\n this.clearFilters();\n this.go();\n }\n\n async filterFavorites() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFavorites');\n await this.ciphersComponent.load((c) => c.favorite);\n this.clearFilters();\n this.favorites = true;\n this.go();\n }\n\n async filterCipherType(type: CipherType) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchType');\n await this.ciphersComponent.load((c) => c.type === type);\n this.clearFilters();\n this.type = type;\n this.go();\n }\n\n async filterFolder(folderId: string) {\n this.ciphersComponent.showAddNew = true;\n folderId = folderId === 'none' ? null : folderId;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchFolder');\n await this.ciphersComponent.load((c) => c.folderId === folderId);\n this.clearFilters();\n this.folderId = folderId == null ? 'none' : folderId;\n this.go();\n }\n\n async filterCollection(collectionId: string) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchCollection');\n await this.ciphersComponent.load((c) => c.collectionIds != null && c.collectionIds.indexOf(collectionId) > -1);\n this.clearFilters();\n this.collectionId = collectionId;\n this.go();\n }\n\n filterSearchText(searchText: string) {\n this.ciphersComponent.searchText = searchText;\n this.ciphersComponent.search(200);\n }\n\n async editCipherAttachments(cipher: CipherView) {\n const canAccessPremium = await this.userService.canAccessPremium();\n if (cipher.organizationId == null && !canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n } else if (cipher.organizationId != null) {\n const org = await this.userService.getOrganization(cipher.organizationId);\n if (org != null && (org.maxStorageGb == null || org.maxStorageGb === 0)) {\n this.messagingService.send('upgradeOrganization', { organizationId: cipher.organizationId });\n return;\n }\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.attachmentsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AttachmentsComponent, this.attachmentsModalRef);\n\n childComponent.cipherId = cipher.id;\n let madeAttachmentChanges = false;\n childComponent.onUploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onDeletedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onReuploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n if (madeAttachmentChanges) {\n await this.ciphersComponent.refresh();\n }\n madeAttachmentChanges = false;\n });\n }\n\n shareCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.shareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(ShareComponent, this.shareModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSharedCipher.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n editCipherCollections(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.collectionsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(CollectionsComponent, this.collectionsModalRef);\n\n childComponent.cipherId = cipher.id;\n childComponent.onSavedCollections.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n async addFolder() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = null;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n async editFolder(folderId: string) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.folderAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n FolderAddEditComponent, this.folderAddEditModalRef);\n\n childComponent.folderId = folderId;\n childComponent.onSavedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n });\n childComponent.onDeletedFolder.subscribe(async () => {\n this.modal.close();\n await this.groupingsComponent.loadFolders();\n await this.filterFolder('none');\n this.groupingsComponent.selectedFolderId = null;\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n addCipher() {\n const component = this.editCipher(null);\n component.type = this.type;\n component.folderId = this.folderId === 'none' ? null : this.folderId;\n if (this.collectionId != null) {\n const collection = this.groupingsComponent.collections.filter((c) => c.id === this.collectionId);\n if (collection.length > 0) {\n component.organizationId = collection[0].organizationId;\n component.collectionIds = [this.collectionId];\n }\n }\n }\n\n editCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n AddEditComponent, this.cipherAddEditModalRef);\n\n childComponent.cipherId = cipher == null ? null : cipher.id;\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n bulkDelete() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkDeleteModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkDeleteComponent, this.bulkDeleteModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onDeleted.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n bulkShare() {\n const selectedCiphers = this.ciphersComponent.getSelected();\n if (selectedCiphers.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkShareModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkShareComponent, this.bulkShareModalRef);\n\n childComponent.ciphers = selectedCiphers;\n childComponent.onShared.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n bulkMove() {\n const selectedIds = this.ciphersComponent.getSelectedIds();\n if (selectedIds.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('nothingSelected'));\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.bulkMoveModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(BulkMoveComponent, this.bulkMoveModalRef);\n\n childComponent.cipherIds = selectedIds;\n childComponent.onMoved.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n selectAll(select: boolean) {\n this.ciphersComponent.selectAll(select);\n }\n\n updateKey() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.updateKeyModalRef.createComponent(factory).instance;\n this.modal.show(UpdateKeyComponent, this.updateKeyModalRef);\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private clearFilters() {\n this.folderId = null;\n this.collectionId = null;\n this.favorites = false;\n this.type = null;\n }\n\n private go(queryParams: any = null) {\n if (queryParams == null) {\n queryParams = {\n favorites: this.favorites ? true : null,\n type: this.type,\n folderId: this.folderId,\n collectionId: this.collectionId,\n };\n }\n\n this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import { CipherRequest } from './cipherRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherWithIdRequest extends CipherRequest {\n id: string;\n\n constructor(cipher: Cipher) {\n super(cipher);\n this.id = cipher.id;\n }\n}\n","import { Folder } from '../domain/folder';\r\n\r\nexport class FolderRequest {\r\n name: string;\r\n\r\n constructor(folder: Folder) {\r\n this.name = folder.name ? folder.name.encryptedString : null;\r\n }\r\n}\r\n","export enum UriMatchType {\r\n Domain = 0,\r\n Host = 1,\r\n StartsWith = 2,\r\n Exact = 3,\r\n RegularExpression = 4,\r\n Never = 5,\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { AttachmentView } from 'jslib/models/view/attachmentView';\n\nimport { AttachmentsComponent as BaseAttachmentsComponent } from 'jslib/angular/components/attachments.component';\n\n@Component({\n selector: 'app-vault-attachments',\n templateUrl: 'attachments.component.html',\n})\nexport class AttachmentsComponent extends BaseAttachmentsComponent {\n constructor(cipherService: CipherService, i18nService: I18nService,\n cryptoService: CryptoService, userService: UserService,\n platformUtilsService: PlatformUtilsService) {\n super(cipherService, i18nService, cryptoService, userService, platformUtilsService, window);\n }\n\n protected async reupload(attachment: AttachmentView) {\n if (this.showFixOldAttachments(attachment)) {\n await this.reuploadCipherAttachment(attachment, false);\n }\n }\n\n protected showFixOldAttachments(attachment: AttachmentView) {\n return attachment.key == null && this.cipher.organizationId == null;\n }\n}\n","import {\n Component,\n OnDestroy,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { CollectionsComponent as BaseCollectionsComponent } from 'jslib/angular/components/collections.component';\n\n@Component({\n selector: 'app-vault-collections',\n templateUrl: 'collections.component.html',\n})\nexport class CollectionsComponent extends BaseCollectionsComponent implements OnDestroy {\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, cipherService: CipherService) {\n super(collectionService, platformUtilsService, i18nService, cipherService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n check(c: CollectionView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n this.collections.forEach((c) => this.check(c, select));\n }\n}\n","import {\r\n Component,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { TokenService } from 'jslib/abstractions/token.service';\r\n\r\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\r\n\r\nconst BroadcasterSubscriptionId = 'SettingsComponent';\r\n\r\n@Component({\r\n selector: 'app-settings',\r\n templateUrl: 'settings.component.html',\r\n})\r\nexport class SettingsComponent implements OnInit, OnDestroy {\r\n premium: boolean;\r\n\r\n constructor(private tokenService: TokenService, private broadcasterService: BroadcasterService,\r\n private ngZone: NgZone) { }\r\n\r\n async ngOnInit() {\r\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, async (message: any) => {\r\n this.ngZone.run(async () => {\r\n switch (message.command) {\r\n case 'purchasedPremium':\r\n await this.load();\r\n break;\r\n default:\r\n }\r\n });\r\n });\r\n\r\n await this.load();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\r\n }\r\n\r\n async load() {\r\n this.premium = await this.tokenService.getPremium();\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentFactoryResolver,\r\n ViewChild,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\n\r\nimport { ModalComponent } from '../modal.component';\r\nimport { DeauthorizeSessionsComponent } from './deauthorize-sessions.component';\r\nimport { DeleteAccountComponent } from './delete-account.component';\r\nimport { PurgeVaultComponent } from './purge-vault.component';\r\n\r\n@Component({\r\n selector: 'app-account',\r\n templateUrl: 'account.component.html',\r\n})\r\nexport class AccountComponent {\r\n @ViewChild('deauthorizeSessionsTemplate', { read: ViewContainerRef }) deauthModalRef: ViewContainerRef;\r\n @ViewChild('purgeVaultTemplate', { read: ViewContainerRef }) purgeModalRef: ViewContainerRef;\r\n @ViewChild('deleteAccountTemplate', { read: ViewContainerRef }) deleteModalRef: ViewContainerRef;\r\n\r\n private modal: ModalComponent = null;\r\n\r\n constructor(private componentFactoryResolver: ComponentFactoryResolver) { }\r\n\r\n deauthorizeSessions() {\r\n if (this.modal != null) {\r\n this.modal.close();\r\n }\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\r\n this.modal = this.deauthModalRef.createComponent(factory).instance;\r\n this.modal.show(DeauthorizeSessionsComponent, this.deauthModalRef);\r\n\r\n this.modal.onClosed.subscribe(async () => {\r\n this.modal = null;\r\n });\r\n }\r\n\r\n purgeVault() {\r\n if (this.modal != null) {\r\n this.modal.close();\r\n }\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\r\n this.modal = this.purgeModalRef.createComponent(factory).instance;\r\n this.modal.show(PurgeVaultComponent, this.purgeModalRef);\r\n\r\n this.modal.onClosed.subscribe(async () => {\r\n this.modal = null;\r\n });\r\n }\r\n\r\n deleteAccount() {\r\n if (this.modal != null) {\r\n this.modal.close();\r\n }\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\r\n this.modal = this.deleteModalRef.createComponent(factory).instance;\r\n this.modal.show(DeleteAccountComponent, this.deleteModalRef);\r\n\r\n this.modal.onClosed.subscribe(async () => {\r\n this.modal = null;\r\n });\r\n }\r\n}\r\n","import {\n Component,\n Input,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-purge-vault',\n templateUrl: 'purge-vault.component.html',\n})\nexport class PurgeVaultComponent {\n @Input() organizationId?: string = null;\n\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private router: Router) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.postPurgeCiphers(request, this.organizationId);\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.organizationId != null ? 'Purged Organization Vault' : 'Purged Vault',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('vaultPurged'));\n if (this.organizationId != null) {\n this.router.navigate(['organizations', this.organizationId, 'vault']);\n } else {\n this.router.navigate(['vault']);\n }\n } catch { }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-options',\n templateUrl: 'options.component.html',\n})\nexport class OptionsComponent implements OnInit {\n lockOption: number = null;\n disableIcons: boolean;\n enableGravatars: boolean;\n locale: string;\n lockOptions: any[];\n localeOptions: any[];\n\n private startingLocale: string;\n\n constructor(private storageService: StorageService, private stateService: StateService,\n private analytics: Angulartics2, private i18nService: I18nService,\n private toasterService: ToasterService, private lockService: LockService,\n private platformUtilsService: PlatformUtilsService) {\n this.lockOptions = [\n { name: i18nService.t('oneMinute'), value: 1 },\n { name: i18nService.t('fiveMinutes'), value: 5 },\n { name: i18nService.t('fifteenMinutes'), value: 15 },\n { name: i18nService.t('thirtyMinutes'), value: 30 },\n { name: i18nService.t('oneHour'), value: 60 },\n { name: i18nService.t('fourHours'), value: 240 },\n { name: i18nService.t('onRefresh'), value: -1 },\n ];\n if (this.platformUtilsService.isDev()) {\n this.lockOptions.push({ name: i18nService.t('never'), value: null });\n }\n\n const localeOptions: any[] = [];\n i18nService.supportedTranslationLocales.forEach((locale) => {\n localeOptions.push({ name: locale, value: locale });\n });\n localeOptions.sort(Utils.getSortFunction(i18nService, 'name'));\n localeOptions.splice(0, 0, { name: i18nService.t('default'), value: null });\n this.localeOptions = localeOptions;\n }\n\n async ngOnInit() {\n this.lockOption = await this.storageService.get(ConstantsService.lockOptionKey);\n this.disableIcons = await this.storageService.get(ConstantsService.disableFaviconKey);\n this.enableGravatars = await this.storageService.get('enableGravatars');\n this.locale = this.startingLocale = await this.storageService.get(ConstantsService.localeKey);\n }\n\n async submit() {\n await this.lockService.setLockOption(this.lockOption != null ? this.lockOption : null);\n await this.storageService.save(ConstantsService.disableFaviconKey, this.disableIcons);\n await this.stateService.save(ConstantsService.disableFaviconKey, this.disableIcons);\n await this.storageService.save('enableGravatars', this.enableGravatars);\n await this.stateService.save('enableGravatars', this.enableGravatars);\n await this.storageService.save(ConstantsService.localeKey, this.locale);\n this.analytics.eventTrack.next({ action: 'Saved Options' });\n if (this.locale !== this.startingLocale) {\n window.location.reload();\n } else {\n this.toasterService.popAsync('success', null, this.i18nService.t('optionsUpdated'));\n }\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { UpdateDomainsRequest } from 'jslib/models/request/updateDomainsRequest';\n\n@Component({\n selector: 'app-domain-rules',\n templateUrl: 'domain-rules.component.html',\n})\nexport class DomainRulesComponent implements OnInit {\n loading = true;\n custom: string[] = [];\n global: any[] = [];\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const response = await this.apiService.getSettingsDomains();\n this.loading = false;\n if (response.equivalentDomains != null) {\n this.custom = response.equivalentDomains.map((d) => d.join(', '));\n }\n if (response.globalEquivalentDomains != null) {\n this.global = response.globalEquivalentDomains.map((d) => {\n return {\n domains: d.domains.join(', '),\n excluded: d.excluded,\n key: d.type,\n };\n });\n }\n }\n\n toggleExcluded(globalDomain: any) {\n globalDomain.excluded = !globalDomain.excluded;\n }\n\n customize(globalDomain: any) {\n globalDomain.excluded = true;\n this.custom.push(globalDomain.domains);\n }\n\n remove(index: number) {\n this.custom.splice(index, 1);\n }\n\n add() {\n this.custom.push('');\n }\n\n async submit() {\n const request = new UpdateDomainsRequest();\n request.excludedGlobalEquivalentDomains = this.global.filter((d) => d.excluded)\n .map((d) => d.key);\n if (request.excludedGlobalEquivalentDomains.length === 0) {\n request.excludedGlobalEquivalentDomains = null;\n }\n request.equivalentDomains = this.custom.filter((d) => d != null && d.trim() !== '')\n .map((d) => d.split(',').map((d2) => d2.trim()));\n if (request.equivalentDomains.length === 0) {\n request.equivalentDomains = null;\n }\n\n try {\n this.formPromise = this.apiService.putSettingsDomains(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Saved Equivalent Domains' });\n this.toasterService.popAsync('success', null, this.i18nService.t('domainsUpdated'));\n } catch { }\n }\n\n indexTrackBy(index: number, obj: any): any {\n return index;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { UpdateTwoFactorDuoRequest } from 'jslib/models/request/updateTwoFactorDuoRequest';\nimport { TwoFactorDuoResponse } from 'jslib/models/response/twoFactorDuoResponse';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-duo',\n templateUrl: 'two-factor-duo.component.html',\n})\nexport class TwoFactorDuoComponent extends TwoFactorBaseComponent {\n type = TwoFactorProviderType.Duo;\n ikey: string;\n skey: string;\n host: string;\n formPromise: Promise;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.enabled) {\n return super.disable(this.formPromise);\n } else {\n return this.enable();\n }\n }\n\n protected enable() {\n const request = new UpdateTwoFactorDuoRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.integrationKey = this.ikey;\n request.secretKey = this.skey;\n request.host = this.host;\n\n return super.enable(async () => {\n if (this.organizationId != null) {\n this.formPromise = this.apiService.putTwoFactorOrganizationDuo(this.organizationId, request);\n } else {\n this.formPromise = this.apiService.putTwoFactorDuo(request);\n }\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n private processResponse(response: TwoFactorDuoResponse) {\n this.ikey = response.integrationKey;\n this.skey = response.secretKey;\n this.host = response.host;\n this.enabled = response.enabled;\n }\n}\n","
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \"Visa,\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n\n
\n
\n {{'paypalClickSubmit' | i18n}}\n
\n
\n\n \n {{'verifyBankAccountInitialDesc' | i18n}} {{'verifyBankAccountFailureWarning' | i18n}}\n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n","import {\n Component,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { PaymentComponent } from './payment.component';\n\n@Component({\n selector: 'app-premium',\n templateUrl: 'premium.component.html',\n})\nexport class PremiumComponent implements OnInit {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n canAccessPremium = false;\n selfHosted = false;\n premiumPrice = 10;\n storageGbPrice = 4;\n additionalStorage = 0;\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private tokenService: TokenService,\n private router: Router, private messagingService: MessagingService,\n private syncService: SyncService, private userService: UserService) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n const premium = await this.tokenService.getPremium();\n if (premium) {\n this.router.navigate(['/settings/billing']);\n return;\n }\n }\n\n async submit() {\n let files: FileList = null;\n if (this.selfHosted) {\n const fileEl = document.getElementById('file') as HTMLInputElement;\n files = fileEl.files;\n if (files == null || files.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n }\n\n try {\n if (this.selfHosted) {\n if (!this.tokenService.getEmailVerified()) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('verifyEmailFirst'));\n return;\n }\n\n const fd = new FormData();\n fd.append('license', files[0]);\n this.formPromise = this.apiService.postAccountLicense(fd).then(() => {\n return this.finalizePremium();\n });\n } else {\n this.formPromise = this.paymentComponent.createPaymentToken().then((token) => {\n const fd = new FormData();\n fd.append('paymentToken', token);\n fd.append('additionalStorageGb', (this.additionalStorage || 0).toString());\n return this.apiService.postPremium(fd);\n }).then(() => {\n return this.finalizePremium();\n });\n }\n await this.formPromise;\n } catch { }\n }\n\n async finalizePremium() {\n await this.apiService.refreshIdentityToken();\n await this.syncService.fullSync(true);\n this.analytics.eventTrack.next({ action: 'Signed Up Premium' });\n this.toasterService.popAsync('success', null, this.i18nService.t('premiumUpdated'));\n this.messagingService.send('purchasedPremium');\n this.router.navigate(['/settings/billing']);\n }\n\n get additionalStorageTotal(): number {\n return this.storageGbPrice * this.additionalStorage;\n }\n\n get total(): number {\n return this.additionalStorageTotal + this.premiumPrice;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-update-license',\n templateUrl: 'update-license.component.html',\n})\nexport class UpdateLicenseComponent {\n @Input() organizationId: string;\n @Output() onUpdated = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n const fileEl = document.getElementById('file') as HTMLInputElement;\n const files = fileEl.files;\n if (files == null || files.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n\n try {\n const fd = new FormData();\n fd.append('license', files[0]);\n\n if (this.organizationId == null) {\n this.formPromise = this.apiService.postAccountLicense(fd);\n } else {\n this.formPromise = this.apiService.postOrganizationLicenseUpdate(this.organizationId, fd);\n }\n\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Updated License' });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedLicense'));\n this.onUpdated.emit();\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { StorageRequest } from 'jslib/models/request/storageRequest';\n\n@Component({\n selector: 'app-adjust-storage',\n templateUrl: 'adjust-storage.component.html',\n})\nexport class AdjustStorageComponent {\n @Input() storageGbPrice = 0;\n @Input() add = true;\n @Input() organizationId: string;\n @Input() interval = 'year';\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n storageAdjustment = 0;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new StorageRequest();\n request.storageGbAdjustment = this.storageAdjustment;\n if (!this.add) {\n request.storageGbAdjustment *= -1;\n }\n\n if (this.organizationId == null) {\n this.formPromise = this.apiService.postAccountStorage(request);\n } else {\n this.formPromise = this.apiService.postOrganizationStorage(this.organizationId, request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.add ? 'Added Storage' : 'Removed Storage' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t('adjustedStorage', request.storageGbAdjustment.toString()));\n this.onAdjusted.emit(this.storageAdjustment);\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get adjustedStorageTotal(): number {\n return this.storageGbPrice * this.storageAdjustment;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PaymentRequest } from 'jslib/models/request/paymentRequest';\n\nimport { PaymentMethodType } from 'jslib/enums/paymentMethodType';\n\nimport { PaymentComponent } from './payment.component';\n\n@Component({\n selector: 'app-adjust-payment',\n templateUrl: 'adjust-payment.component.html',\n})\nexport class AdjustPaymentComponent {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n @Input() currentType?: PaymentMethodType;\n @Input() organizationId: string;\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n paymentMethodType = PaymentMethodType;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new PaymentRequest();\n this.formPromise = this.paymentComponent.createPaymentToken().then((token) => {\n request.paymentToken = token;\n if (this.organizationId == null) {\n return this.apiService.postAccountPayment(request);\n } else {\n return this.apiService.postOrganizationPayment(this.organizationId, request);\n }\n });\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.currentType == null ? 'Added Payment Method' : 'Changed Payment Method',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedPaymentMethod'));\n this.onAdjusted.emit();\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get canChange() {\n return this.currentType == null || this.currentType === PaymentMethodType.Card || this.organizationId != null;\n }\n}\n","export enum PaymentMethodType {\n Card = 0,\n BankAccount = 1,\n PayPal = 2,\n Bitcoin = 3,\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { BillingResponse } from 'jslib/models/response/billingResponse';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\nimport { PaymentMethodType } from 'jslib/enums/paymentMethodType';\n\n@Component({\n selector: 'app-user-billing',\n templateUrl: 'user-billing.component.html',\n})\nexport class UserBillingComponent implements OnInit {\n loading = false;\n firstLoaded = false;\n adjustStorageAdd = true;\n showAdjustStorage = false;\n showAdjustPayment = false;\n showUpdateLicense = false;\n billing: BillingResponse;\n paymentMethodType = PaymentMethodType;\n selfHosted = false;\n\n cancelPromise: Promise;\n reinstatePromise: Promise;\n\n constructor(private tokenService: TokenService, private apiService: ApiService,\n private platformUtilsService: PlatformUtilsService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private router: Router) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n await this.load();\n this.firstLoaded = true;\n }\n\n async load() {\n if (this.loading) {\n return;\n }\n\n if (this.tokenService.getPremium()) {\n this.loading = true;\n this.billing = await this.apiService.getUserBilling();\n } else {\n this.router.navigate(['/settings/premium']);\n return;\n }\n\n this.loading = false;\n }\n\n async reinstate() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('reinstateConfirmation'),\n this.i18nService.t('reinstateSubscription'), this.i18nService.t('yes'), this.i18nService.t('cancel'));\n if (!confirmed) {\n return;\n }\n\n try {\n this.reinstatePromise = this.apiService.postReinstatePremium();\n await this.reinstatePromise;\n this.analytics.eventTrack.next({ action: 'Reinstated Premium' });\n this.toasterService.popAsync('success', null, this.i18nService.t('reinstated'));\n this.load();\n } catch { }\n }\n\n async cancel() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('cancelConfirmation'),\n this.i18nService.t('cancelSubscription'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n this.cancelPromise = this.apiService.postCancelPremium();\n await this.cancelPromise;\n this.analytics.eventTrack.next({ action: 'Canceled Premium' });\n this.toasterService.popAsync('success', null, this.i18nService.t('canceledSubscription'));\n this.load();\n } catch { }\n }\n\n downloadLicense() {\n if (this.loading) {\n return;\n }\n\n const licenseString = JSON.stringify(this.billing.license, null, 2);\n this.platformUtilsService.saveFile(window, licenseString, null, 'bitwarden_premium_license.json');\n }\n\n updateLicense() {\n if (this.loading) {\n return;\n }\n this.showUpdateLicense = true;\n }\n\n closeUpdateLicense(load: boolean) {\n this.showUpdateLicense = false;\n if (load) {\n this.load();\n }\n }\n\n adjustStorage(add: boolean) {\n this.adjustStorageAdd = add;\n this.showAdjustStorage = true;\n }\n\n closeStorage(load: boolean) {\n this.showAdjustStorage = false;\n if (load) {\n this.load();\n }\n }\n\n changePayment() {\n this.showAdjustPayment = true;\n }\n\n closePayment(load: boolean) {\n this.showAdjustPayment = false;\n if (load) {\n this.load();\n }\n }\n\n get subscriptionMarkedForCancel() {\n return this.subscription != null && !this.subscription.cancelled && this.subscription.cancelAtEndDate;\n }\n\n get subscription() {\n return this.billing != null ? this.billing.subscription : null;\n }\n\n get nextInvoice() {\n return this.billing != null ? this.billing.upcomingInvoice : null;\n }\n\n get paymentSource() {\n return this.billing != null ? this.billing.paymentSource : null;\n }\n\n get charges() {\n return this.billing != null ? this.billing.charges : null;\n }\n\n get storagePercentage() {\n return this.billing != null && this.billing.maxStorageGb ?\n +(100 * (this.billing.storageGb / this.billing.maxStorageGb)).toFixed(2) : 0;\n }\n\n get storageProgressWidth() {\n return this.storagePercentage < 5 ? 5 : 0;\n }\n}\n","import {\n Component,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { PaymentComponent } from './payment.component';\n\nimport { PlanType } from 'jslib/enums/planType';\nimport { OrganizationCreateRequest } from 'jslib/models/request/organizationCreateRequest';\n\n@Component({\n selector: 'app-create-organization',\n templateUrl: 'create-organization.component.html',\n})\nexport class CreateOrganizationComponent implements OnInit {\n @ViewChild(PaymentComponent) paymentComponent: PaymentComponent;\n\n selfHosted = false;\n ownedBusiness = false;\n premiumAccessAddon = false;\n storageGbPriceMonthly = 0.33;\n additionalStorage = 0;\n additionalSeats = 0;\n plan = 'free';\n interval = 'year';\n name: string;\n billingEmail: string;\n businessName: string;\n\n storageGb: any = {\n price: 0.33,\n monthlyPrice: 0.50,\n yearlyPrice: 4,\n };\n\n plans: any = {\n free: {\n basePrice: 0,\n noAdditionalSeats: true,\n noPayment: true,\n },\n families: {\n basePrice: 1,\n annualBasePrice: 12,\n baseSeats: 5,\n noAdditionalSeats: true,\n annualPlanType: PlanType.FamiliesAnnually,\n canBuyPremiumAccessAddon: true,\n },\n teams: {\n basePrice: 5,\n annualBasePrice: 60,\n monthlyBasePrice: 8,\n baseSeats: 5,\n seatPrice: 2,\n annualSeatPrice: 24,\n monthlySeatPrice: 2.5,\n monthPlanType: PlanType.TeamsMonthly,\n annualPlanType: PlanType.TeamsAnnually,\n },\n enterprise: {\n seatPrice: 3,\n annualSeatPrice: 36,\n monthlySeatPrice: 4,\n monthPlanType: PlanType.EnterpriseMonthly,\n annualPlanType: PlanType.EnterpriseAnnually,\n },\n };\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private router: Router, private syncService: SyncService,\n private route: ActivatedRoute) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n ngOnInit() {\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.plan === 'families' || qParams.plan === 'teams' || qParams.plan === 'enterprise') {\n this.plan = qParams.plan;\n }\n queryParamsSub.unsubscribe();\n });\n }\n\n async submit() {\n let files: FileList = null;\n if (this.selfHosted) {\n const fileEl = document.getElementById('file') as HTMLInputElement;\n files = fileEl.files;\n if (files == null || files.length === 0) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('selectFile'));\n return;\n }\n }\n\n let key: string = null;\n let collectionCt: string = null;\n\n try {\n this.formPromise = this.cryptoService.makeShareKey().then((shareKey) => {\n key = shareKey[0].encryptedString;\n return this.cryptoService.encrypt(this.i18nService.t('defaultCollection'), shareKey[1]);\n }).then((collection) => {\n collectionCt = collection.encryptedString;\n if (this.selfHosted || this.plan === 'free') {\n return null;\n } else {\n return this.paymentComponent.createPaymentToken();\n }\n }).then((token: string) => {\n if (this.selfHosted) {\n const fd = new FormData();\n fd.append('license', files[0]);\n fd.append('key', key);\n fd.append('collectionName', collectionCt);\n return this.apiService.postOrganizationLicense(fd);\n } else {\n const request = new OrganizationCreateRequest();\n request.key = key;\n request.collectionName = collectionCt;\n request.name = this.name;\n request.billingEmail = this.billingEmail;\n\n if (this.plan === 'free') {\n request.planType = PlanType.Free;\n } else {\n request.paymentToken = token;\n request.businessName = this.ownedBusiness ? this.businessName : null;\n request.additionalSeats = this.additionalSeats;\n request.additionalStorageGb = this.additionalStorage;\n request.premiumAccessAddon = this.plans[this.plan].canBuyPremiumAccessAddon &&\n this.premiumAccessAddon;\n request.country = this.paymentComponent.getCountry();\n if (this.interval === 'month') {\n request.planType = this.plans[this.plan].monthPlanType;\n } else {\n request.planType = this.plans[this.plan].annualPlanType;\n }\n }\n return this.apiService.postOrganization(request);\n }\n }).then((response) => {\n return this.finalize(response.id);\n });\n await this.formPromise;\n } catch { }\n }\n\n async finalize(orgId: string) {\n await this.apiService.refreshIdentityToken();\n await this.syncService.fullSync(true);\n this.analytics.eventTrack.next({ action: 'Created Organization' });\n this.toasterService.popAsync('success', this.i18nService.t('organizationCreated'),\n this.i18nService.t('organizationReadyToGo'));\n this.router.navigate(['/organizations/' + orgId]);\n }\n\n changedPlan() {\n if (!this.plans[this.plan].canBuyPremiumAccessAddon) {\n this.premiumAccessAddon = false;\n }\n\n if (this.plans[this.plan].monthPlanType == null) {\n this.interval = 'year';\n }\n\n if (this.plans[this.plan].noAdditionalSeats) {\n this.additionalSeats = 0;\n } else if (!this.additionalSeats && !this.plans[this.plan].baseSeats &&\n !this.plans[this.plan].noAdditionalSeats) {\n this.additionalSeats = 1;\n }\n }\n\n changedOwnedBusiness() {\n if (!this.ownedBusiness || this.plan === 'teams' || this.plan === 'enterprise') {\n return;\n }\n this.plan = 'teams';\n }\n\n additionalStorageTotal(annual: boolean): number {\n if (annual) {\n return (this.additionalStorage || 0) * this.storageGb.yearlyPrice;\n } else {\n return (this.additionalStorage || 0) * this.storageGb.monthlyPrice;\n }\n }\n\n seatTotal(annual: boolean): number {\n if (this.plans[this.plan].noAdditionalSeats) {\n return 0;\n }\n\n if (annual) {\n return this.plans[this.plan].annualSeatPrice * (this.additionalSeats || 0);\n } else {\n return this.plans[this.plan].monthlySeatPrice * (this.additionalSeats || 0);\n }\n }\n\n baseTotal(annual: boolean): number {\n if (annual) {\n return (this.plans[this.plan].annualBasePrice || 0);\n } else {\n return (this.plans[this.plan].monthlyBasePrice || 0);\n }\n }\n\n premiumAccessTotal(annual: boolean): number {\n if (this.plans[this.plan].canBuyPremiumAccessAddon && this.premiumAccessAddon) {\n if (annual) {\n return 40;\n }\n }\n return 0;\n }\n\n get total(): number {\n const annual = this.interval === 'year';\n return this.baseTotal(annual) + this.seatTotal(annual) + this.additionalStorageTotal(annual) +\n this.premiumAccessTotal(annual);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent implements OnInit {\n canAccessPremium = false;\n\n constructor(private userService: UserService, private messagingService: MessagingService) { }\n\n async ngOnInit() {\n this.canAccessPremium = await this.userService.canAccessPremium();\n }\n\n premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n PasswordGeneratorComponent as BasePasswordGeneratorComponent,\n} from 'jslib/angular/components/password-generator.component';\n\nimport { ModalComponent } from '../modal.component';\nimport { PasswordGeneratorHistoryComponent } from './password-generator-history.component';\n\n@Component({\n selector: 'app-password-generator',\n templateUrl: 'password-generator.component.html',\n})\nexport class PasswordGeneratorComponent extends BasePasswordGeneratorComponent {\n @ViewChild('historyTemplate', { read: ViewContainerRef }) historyModalRef: ViewContainerRef;\n\n private modal: ModalComponent = null;\n\n constructor(passwordGenerationService: PasswordGenerationService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver) {\n super(passwordGenerationService, platformUtilsService, i18nService, window);\n }\n\n history() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.historyModalRef.createComponent(factory).instance;\n this.modal.show(PasswordGeneratorHistoryComponent, this.historyModalRef);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { AuditService } from 'jslib/abstractions/audit.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\nimport { BreachAccountResponse } from 'jslib/models/response/breachAccountResponse';\r\n\r\n@Component({\r\n selector: 'app-breach-report',\r\n templateUrl: 'breach-report.component.html',\r\n})\r\nexport class BreachReportComponent implements OnInit {\r\n error = false;\r\n username: string;\r\n checkedUsername: string;\r\n breachedAccounts: BreachAccountResponse[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private auditService: AuditService, private userService: UserService) { }\r\n\r\n async ngOnInit() {\r\n this.username = await this.userService.getEmail();\r\n }\r\n\r\n async submit() {\r\n this.error = false;\r\n this.username = this.username.toLowerCase();\r\n try {\r\n this.formPromise = this.auditService.breachedAccounts(this.username);\r\n this.breachedAccounts = await this.formPromise;\r\n } catch {\r\n this.error = true;\r\n }\r\n this.checkedUsername = this.username;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { TotpService } from 'jslib/abstractions/totp.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCreateRequest } from 'jslib/models/request/cipherCreateRequest';\nimport { CipherRequest } from 'jslib/models/request/cipherRequest';\n\nimport { AddEditComponent as BaseAddEditComponent } from '../../vault/add-edit.component';\n\n@Component({\n selector: 'app-org-vault-add-edit',\n templateUrl: '../../vault/add-edit.component.html',\n})\nexport class AddEditComponent extends BaseAddEditComponent {\n organization: Organization;\n originalCipher: Cipher = null;\n\n constructor(cipherService: CipherService, folderService: FolderService,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService,\n auditService: AuditService, stateService: StateService,\n userService: UserService, collectionService: CollectionService,\n totpService: TotpService, passwordGenerationService: PasswordGenerationService,\n private apiService: ApiService,\n messagingService: MessagingService) {\n super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,\n userService, collectionService, totpService, passwordGenerationService, messagingService);\n }\n\n protected loadCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCollections();\n }\n return Promise.resolve(this.collections);\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n const data = new CipherData(response);\n this.originalCipher = new Cipher(data);\n return new Cipher(data);\n }\n\n protected encryptCipher() {\n if (!this.organization.isAdmin) {\n return super.encryptCipher();\n }\n return this.cipherService.encrypt(this.cipher, null, this.originalCipher);\n }\n\n protected async saveCipher(cipher: Cipher) {\n if (!this.organization.isAdmin) {\n return super.saveCipher(cipher);\n }\n if (this.editMode) {\n const request = new CipherRequest(cipher);\n return this.apiService.putCipherAdmin(this.cipherId, request);\n } else {\n const request = new CipherCreateRequest(cipher);\n return this.apiService.postCipherAdmin(request);\n }\n }\n\n protected async deleteCipher() {\n if (!this.organization.isAdmin) {\n return super.deleteCipher();\n }\n return this.apiService.deleteCipherAdmin(this.cipherId);\n }\n}\n","export enum EncryptionType {\r\n AesCbc256_B64 = 0,\r\n AesCbc128_HmacSha256_B64 = 1,\r\n AesCbc256_HmacSha256_B64 = 2,\r\n Rsa2048_OaepSha256_B64 = 3,\r\n Rsa2048_OaepSha1_B64 = 4,\r\n Rsa2048_OaepSha256_HmacSha256_B64 = 5,\r\n Rsa2048_OaepSha1_HmacSha256_B64 = 6,\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { Organization } from 'jslib/models/domain/organization';\r\n\r\n@Component({\r\n selector: 'app-organization-layout',\r\n templateUrl: 'organization-layout.component.html',\r\n})\r\nexport class OrganizationLayoutComponent implements OnInit {\r\n organization: Organization;\r\n\r\n private organizationId: string;\r\n\r\n constructor(private route: ActivatedRoute, private userService: UserService) { }\r\n\r\n ngOnInit() {\r\n document.body.classList.remove('layout_frontend');\r\n this.route.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n await this.load();\r\n });\r\n }\r\n\r\n async load() {\r\n this.organization = await this.userService.getOrganization(this.organizationId);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { GroupingsComponent as BaseGroupingsComponent } from '../../vault/groupings.component';\n\n@Component({\n selector: 'app-org-vault-groupings',\n templateUrl: '../../vault/groupings.component.html',\n})\nexport class GroupingsComponent extends BaseGroupingsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, folderService: FolderService,\n storageService: StorageService, userService: UserService,\n private apiService: ApiService, private i18nService: I18nService) {\n super(collectionService, folderService, storageService, userService);\n }\n\n async loadCollections() {\n if (!this.organization.isAdmin) {\n await super.loadCollections(this.organization.id);\n return;\n }\n\n const collections = await this.apiService.getCollections(this.organization.id);\n if (collections != null && collections.data != null && collections.data.length) {\n const collectionDomains = collections.data.map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collectionDomains);\n } else {\n this.collections = [];\n }\n\n const unassignedCollection = new CollectionView();\n unassignedCollection.name = this.i18nService.t('unassigned');\n unassignedCollection.id = 'unassigned';\n unassignedCollection.organizationId = this.organization.id;\n unassignedCollection.readOnly = true;\n this.collections.push(unassignedCollection);\n this.nestedCollections = await this.collectionService.getAllNested(this.collections);\n }\n\n collapse(grouping: CollectionView) {\n super.collapse(grouping, 'org_');\n }\n\n isCollapsed(grouping: CollectionView) {\n return super.isCollapsed(grouping, 'org_');\n }\n}\n","import {\n Component,\n EventEmitter,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CiphersComponent as BaseCiphersComponent } from '../../vault/ciphers.component';\n\n@Component({\n selector: 'app-org-vault-ciphers',\n templateUrl: '../../vault/ciphers.component.html',\n})\nexport class CiphersComponent extends BaseCiphersComponent {\n @Output() onEventsClicked = new EventEmitter();\n\n organization: Organization;\n accessEvents = false;\n\n protected allCiphers: CipherView[] = [];\n\n constructor(searchService: SearchService, analytics: Angulartics2,\n toasterService: ToasterService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, cipherService: CipherService,\n private apiService: ApiService) {\n super(searchService, analytics, toasterService, i18nService, platformUtilsService, cipherService);\n }\n\n async load(filter: (cipher: CipherView) => boolean = null) {\n if (!this.organization.isAdmin) {\n await super.load(filter);\n return;\n }\n this.accessEvents = this.organization.useEvents;\n this.allCiphers = await this.cipherService.getAllFromApiForOrganization(this.organization.id);\n this.applyFilter(filter);\n this.loaded = true;\n }\n\n async applyFilter(filter: (cipher: CipherView) => boolean = null) {\n if (this.organization.isAdmin) {\n await super.applyFilter(filter);\n } else {\n const f = (c: CipherView) => c.organizationId === this.organization.id && (filter == null || filter(c));\n await super.applyFilter(f);\n }\n }\n\n search(timeout: number = null) {\n if (!this.organization.isAdmin) {\n return super.search(timeout);\n }\n this.searchPending = false;\n let filteredCiphers = this.allCiphers;\n if (this.filter != null) {\n filteredCiphers = filteredCiphers.filter(this.filter);\n }\n if (this.searchText == null || this.searchText.trim().length < 2) {\n this.ciphers = filteredCiphers;\n } else {\n this.ciphers = this.searchService.searchCiphersBasic(filteredCiphers, this.searchText);\n }\n }\n\n checkCipher(c: CipherView) {\n // do nothing\n }\n\n events(c: CipherView) {\n this.onEventsClicked.emit(c);\n }\n\n protected deleteCipher(id: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipher(id);\n }\n return this.apiService.deleteCipherAdmin(id);\n }\n\n protected showFixOldAttachments(c: CipherView) {\n return this.organization.isAdmin && c.hasOldAttachments;\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n NgZone,\n OnDestroy,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport { CipherType } from 'jslib/enums/cipherType';\n\nimport { ModalComponent } from '../../modal.component';\n\nimport { EntityEventsComponent } from '../manage/entity-events.component';\nimport { AddEditComponent } from './add-edit.component';\nimport { AttachmentsComponent } from './attachments.component';\nimport { CiphersComponent } from './ciphers.component';\nimport { CollectionsComponent } from './collections.component';\nimport { GroupingsComponent } from './groupings.component';\n\nconst BroadcasterSubscriptionId = 'OrgVaultComponent';\n\n@Component({\n selector: 'app-org-vault',\n templateUrl: 'vault.component.html',\n})\nexport class VaultComponent implements OnInit, OnDestroy {\n @ViewChild(GroupingsComponent) groupingsComponent: GroupingsComponent;\n @ViewChild(CiphersComponent) ciphersComponent: CiphersComponent;\n @ViewChild('attachments', { read: ViewContainerRef }) attachmentsModalRef: ViewContainerRef;\n @ViewChild('cipherAddEdit', { read: ViewContainerRef }) cipherAddEditModalRef: ViewContainerRef;\n @ViewChild('collections', { read: ViewContainerRef }) collectionsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n\n organization: Organization;\n collectionId: string;\n type: CipherType;\n\n private modal: ModalComponent = null;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private router: Router, private changeDetectorRef: ChangeDetectorRef,\n private syncService: SyncService, private i18nService: I18nService,\n private componentFactoryResolver: ComponentFactoryResolver, private messagingService: MessagingService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.groupingsComponent.organization = this.organization;\n this.ciphersComponent.organization = this.organization;\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.ciphersComponent.searchText = this.groupingsComponent.searchText = qParams.search;\n if (!this.organization.isAdmin) {\n await this.syncService.fullSync(false);\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'syncCompleted':\n if (message.successfully) {\n await Promise.all([\n this.groupingsComponent.load(),\n this.ciphersComponent.refresh(),\n ]);\n this.changeDetectorRef.detectChanges();\n }\n break;\n }\n });\n });\n }\n await this.groupingsComponent.load();\n\n if (qParams == null) {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n } else {\n if (qParams.type) {\n const t = parseInt(qParams.type, null);\n this.groupingsComponent.selectedType = t;\n await this.filterCipherType(t, true);\n } else if (qParams.collectionId) {\n this.groupingsComponent.selectedCollectionId = qParams.collectionId;\n await this.filterCollection(qParams.collectionId, true);\n } else {\n this.groupingsComponent.selectedAll = true;\n await this.ciphersComponent.load();\n }\n }\n\n if (qParams.viewEvents != null) {\n const cipher = this.ciphersComponent.ciphers.filter((c) => c.id === qParams.viewEvents);\n if (cipher.length > 0) {\n this.viewEvents(cipher[0]);\n }\n }\n\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n async clearGroupingFilters() {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchVault');\n await this.ciphersComponent.applyFilter();\n this.clearFilters();\n this.go();\n }\n\n async filterCipherType(type: CipherType, load = false) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchType');\n const filter = (c: CipherView) => c.type === type;\n if (load) {\n await this.ciphersComponent.load(filter);\n } else {\n await this.ciphersComponent.applyFilter(filter);\n }\n this.clearFilters();\n this.type = type;\n this.go();\n }\n\n async filterCollection(collectionId: string, load = false) {\n this.ciphersComponent.showAddNew = true;\n this.groupingsComponent.searchPlaceholder = this.i18nService.t('searchCollection');\n const filter = (c: CipherView) => {\n if (collectionId === 'unassigned') {\n return c.collectionIds == null || c.collectionIds.length === 0;\n } else {\n return c.collectionIds != null && c.collectionIds.indexOf(collectionId) > -1;\n }\n };\n if (load) {\n await this.ciphersComponent.load(filter);\n } else {\n await this.ciphersComponent.applyFilter(filter);\n }\n this.clearFilters();\n this.collectionId = collectionId;\n this.go();\n }\n\n filterSearchText(searchText: string) {\n this.ciphersComponent.searchText = searchText;\n this.ciphersComponent.search(200);\n }\n\n editCipherAttachments(cipher: CipherView) {\n if (this.organization.maxStorageGb == null || this.organization.maxStorageGb === 0) {\n this.messagingService.send('upgradeOrganization', { organizationId: cipher.organizationId });\n return;\n }\n\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.attachmentsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AttachmentsComponent, this.attachmentsModalRef);\n\n childComponent.organization = this.organization;\n childComponent.cipherId = cipher.id;\n let madeAttachmentChanges = false;\n childComponent.onUploadedAttachment.subscribe(() => madeAttachmentChanges = true);\n childComponent.onDeletedAttachment.subscribe(() => madeAttachmentChanges = true);\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n if (madeAttachmentChanges) {\n await this.ciphersComponent.refresh();\n }\n madeAttachmentChanges = false;\n });\n }\n\n editCipherCollections(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.collectionsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(CollectionsComponent, this.collectionsModalRef);\n\n if (this.organization.isAdmin) {\n childComponent.collectionIds = cipher.collectionIds;\n childComponent.collections = this.groupingsComponent.collections.filter((c) => !c.readOnly);\n }\n childComponent.organization = this.organization;\n childComponent.cipherId = cipher.id;\n childComponent.onSavedCollections.subscribe(async () => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n addCipher() {\n const component = this.editCipher(null);\n component.organizationId = this.organization.id;\n component.type = this.type;\n if (this.organization.isAdmin) {\n component.collections = this.groupingsComponent.collections.filter((c) => !c.readOnly);\n }\n if (this.collectionId != null) {\n component.collectionIds = [this.collectionId];\n }\n }\n\n editCipher(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.cipherAddEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(AddEditComponent, this.cipherAddEditModalRef);\n\n childComponent.organization = this.organization;\n childComponent.cipherId = cipher == null ? null : cipher.id;\n childComponent.onSavedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n childComponent.onDeletedCipher.subscribe(async (c: CipherView) => {\n this.modal.close();\n await this.ciphersComponent.refresh();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n\n return childComponent;\n }\n\n async viewEvents(cipher: CipherView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.eventsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityEventsComponent, this.eventsModalRef);\n\n childComponent.name = cipher.name;\n childComponent.organizationId = this.organization.id;\n childComponent.entityId = cipher.id;\n childComponent.showUser = true;\n childComponent.entity = 'cipher';\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private clearFilters() {\n this.collectionId = null;\n this.type = null;\n }\n\n private go(queryParams: any = null) {\n if (queryParams == null) {\n queryParams = {\n type: this.type,\n collectionId: this.collectionId,\n };\n }\n\n this.router.navigate([], {\n relativeTo: this.route,\n queryParams: queryParams,\n replaceUrl: true,\n });\n }\n}\n","import {\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { EventService } from '../../services/event.service';\n\nimport { EventResponse } from 'jslib/models/response/eventResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\n\n@Component({\n selector: 'app-entity-events',\n templateUrl: 'entity-events.component.html',\n})\nexport class EntityEventsComponent implements OnInit {\n @Input() name: string;\n @Input() entity: 'user' | 'cipher';\n @Input() entityId: string;\n @Input() organizationId: string;\n @Input() showUser = false;\n\n loading = true;\n loaded = false;\n events: any[];\n start: string;\n end: string;\n continuationToken: string;\n refreshPromise: Promise;\n morePromise: Promise;\n\n private orgUsersUserIdMap = new Map();\n private orgUsersIdMap = new Map();\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private eventService: EventService, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const defaultDates = this.eventService.getDefaultDateFilters();\n this.start = defaultDates[0];\n this.end = defaultDates[1];\n await this.load();\n }\n\n async load() {\n if (this.showUser) {\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\n response.data.forEach((u) => {\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\n });\n }\n await this.loadEvents(true);\n this.loaded = true;\n }\n\n async loadEvents(clearExisting: boolean) {\n if (this.refreshPromise != null || this.morePromise != null) {\n return;\n }\n\n let dates: string[] = null;\n try {\n dates = this.eventService.formatDateFilters(this.start, this.end);\n } catch (e) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('invalidDateRange'));\n return;\n }\n\n this.loading = true;\n let response: ListResponse;\n try {\n let promise: Promise;\n if (this.entity === 'user') {\n promise = this.apiService.getEventsOrganizationUser(this.organizationId, this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n } else {\n promise = this.apiService.getEventsCipher(this.entityId,\n dates[0], dates[1], clearExisting ? null : this.continuationToken);\n }\n if (clearExisting) {\n this.refreshPromise = promise;\n } else {\n this.morePromise = promise;\n }\n response = await promise;\n } catch { }\n\n this.continuationToken = response.continuationToken;\n const events = response.data.map((r) => {\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\n const eventInfo = this.eventService.getEventInfo(r);\n const user = this.showUser && userId != null && this.orgUsersUserIdMap.has(userId) ?\n this.orgUsersUserIdMap.get(userId) : null;\n return {\n message: eventInfo.message,\n appIcon: eventInfo.appIcon,\n appName: eventInfo.appName,\n userId: userId,\n userName: user != null ? user.name : this.showUser ? this.i18nService.t('unknown') : null,\n userEmail: user != null ? user.email : this.showUser ? '' : null,\n date: r.date,\n ip: r.ipAddress,\n type: r.type,\n };\n });\n\n if (!clearExisting && this.events != null && this.events.length > 0) {\n this.events = this.events.concat(events);\n } else {\n this.events = events;\n }\n\n this.loading = false;\n this.morePromise = null;\n this.refreshPromise = null;\n }\n}\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-org-tools',\n templateUrl: 'tools.component.html',\n})\nexport class ToolsComponent {\n organization: Organization;\n accessReports = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService,\n private messagingService: MessagingService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n // TODO: Maybe we want to just make sure they are not on a free plan? Just compare useTotp for now\n // since all paid plans include useTotp\n this.accessReports = this.organization.useTotp;\n });\n }\n\n upgradeOrganization() {\n this.messagingService.send('upgradeOrganization', { organizationId: this.organization.id });\n }\n}\n","import { Component } from '@angular/core';\r\nimport {\r\n ActivatedRoute,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { ImportService } from 'jslib/abstractions/import.service';\r\n\r\nimport { ImportComponent as BaseImportComponent } from '../../tools/import.component';\r\n\r\n@Component({\r\n selector: 'app-org-import',\r\n templateUrl: '../../tools/import.component.html',\r\n})\r\nexport class ImportComponent extends BaseImportComponent {\r\n constructor(i18nService: I18nService, analytics: Angulartics2,\r\n toasterService: ToasterService, importService: ImportService,\r\n router: Router, private route: ActivatedRoute) {\r\n super(i18nService, analytics, toasterService, importService, router);\r\n }\r\n\r\n ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n this.successNavigate = ['organizations', this.organizationId, 'vault'];\r\n super.ngOnInit();\r\n });\r\n }\r\n}\r\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { ExportService } from 'jslib/abstractions/export.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { ExportComponent as BaseExportComponent } from '../../tools/export.component';\n\n@Component({\n selector: 'app-org-export',\n templateUrl: '../../tools/export.component.html',\n})\nexport class ExportComponent extends BaseExportComponent {\n organizationId: string;\n\n constructor(cryptoService: CryptoService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService, exportService: ExportService,\n private route: ActivatedRoute) {\n super(cryptoService, i18nService, platformUtilsService, exportService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n });\n }\n\n getExportData() {\n return this.exportService.getOrganizationExport(this.organizationId, this.format);\n }\n\n getFileName() {\n return super.getFileName('org');\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { AuditService } from 'jslib/abstractions/audit.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent,\n} from '../../tools/exposed-passwords-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-exposed-passwords-report',\n templateUrl: '../../tools/exposed-passwords-report.component.html',\n})\nexport class ExposedPasswordsReportComponent extends BaseExposedPasswordsReportComponent {\n constructor(cipherService: CipherService, auditService: AuditService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, auditService, componentFactoryResolver, messagingService, userService);\n }\n\n ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n InactiveTwoFactorReportComponent as BaseInactiveTwoFactorReportComponent,\n} from '../../tools/inactive-two-factor-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-inactive-two-factor-report',\n templateUrl: '../../tools/inactive-two-factor-report.component.html',\n})\nexport class InactiveTwoFactorReportComponent extends BaseInactiveTwoFactorReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n ReusedPasswordsReportComponent as BaseReusedPasswordsReportComponent,\n} from '../../tools/reused-passwords-report.component';\n\n@Component({\n selector: 'app-reused-passwords-report',\n templateUrl: '../../tools/reused-passwords-report.component.html',\n})\nexport class ReusedPasswordsReportComponent extends BaseReusedPasswordsReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport {\n UnsecuredWebsitesReportComponent as BaseUnsecuredWebsitesReportComponent,\n} from '../../tools/unsecured-websites-report.component';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\n@Component({\n selector: 'app-unsecured-websites-report',\n templateUrl: '../../tools/unsecured-websites-report.component.html',\n})\nexport class UnsecuredWebsitesReportComponent extends BaseUnsecuredWebsitesReportComponent {\n constructor(cipherService: CipherService, componentFactoryResolver: ComponentFactoryResolver,\n messagingService: MessagingService, userService: UserService,\n private route: ActivatedRoute) {\n super(cipherService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view/cipherView';\n\nimport {\n WeakPasswordsReportComponent as BaseWeakPasswordsReportComponent,\n} from '../../tools/weak-passwords-report.component';\n\n@Component({\n selector: 'app-weak-passwords-report',\n templateUrl: '../../tools/weak-passwords-report.component.html',\n})\nexport class WeakPasswordsReportComponent extends BaseWeakPasswordsReportComponent {\n constructor(cipherService: CipherService, passwordGenerationService: PasswordGenerationService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n userService: UserService, private route: ActivatedRoute) {\n super(cipherService, passwordGenerationService, componentFactoryResolver, messagingService, userService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n await super.ngOnInit();\n });\n }\n\n getAllCiphers(): Promise {\n return this.cipherService.getAllFromApiForOrganization(this.organization.id);\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\n@Component({\n selector: 'app-org-manage',\n templateUrl: 'manage.component.html',\n})\nexport class ManageComponent implements OnInit {\n organization: Organization;\n accessGroups = false;\n accessEvents = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n this.organization = await this.userService.getOrganization(params.organizationId);\n this.accessEvents = this.organization.useEvents;\n this.accessGroups = this.organization.useGroups;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionData } from 'jslib/models/data/collectionData';\nimport { Collection } from 'jslib/models/domain/collection';\nimport {\n CollectionDetailsResponse,\n CollectionResponse,\n} from 'jslib/models/response/collectionResponse';\nimport { ListResponse } from 'jslib/models/response/listResponse';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { ModalComponent } from '../../modal.component';\nimport { CollectionAddEditComponent } from './collection-add-edit.component';\nimport { EntityUsersComponent } from './entity-users.component';\n\n@Component({\n selector: 'app-org-manage-collections',\n templateUrl: 'collections.component.html',\n})\nexport class CollectionsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n collections: CollectionView[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private collectionService: CollectionService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private i18nService: I18nService, private platformUtilsService: PlatformUtilsService,\n private userService: UserService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n async load() {\n const organization = await this.userService.getOrganization(this.organizationId);\n let response: ListResponse;\n if (organization.isAdmin) {\n response = await this.apiService.getCollections(this.organizationId);\n } else {\n response = await this.apiService.getUserCollections();\n }\n const collections = response.data.filter((c) => c.organizationId === this.organizationId).map((r) =>\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\n this.collections = await this.collectionService.decryptMany(collections);\n this.loading = false;\n }\n\n edit(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n CollectionAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.collectionId = collection != null ? collection.id : null;\n childComponent.onSavedCollection.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedCollection.subscribe(() => {\n this.modal.close();\n this.removeCollection(collection);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(collection: CollectionView) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), collection.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteCollection(this.organizationId, collection.id);\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', collection.name));\n this.removeCollection(collection);\n } catch { }\n }\n\n users(collection: CollectionView) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'collection';\n childComponent.entityId = collection.id;\n childComponent.entityName = collection.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.load();\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeCollection(collection: CollectionView) {\n const index = this.collections.indexOf(collection);\n if (index > -1) {\n this.collections.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-entity-users',\n templateUrl: 'entity-users.component.html',\n})\nexport class EntityUsersComponent implements OnInit {\n @Input() entity: 'group' | 'collection';\n @Input() entityId: string;\n @Input() entityName: string;\n @Input() organizationId: string;\n @Output() onEditedUsers = new EventEmitter();\n\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n\n showSelected = false;\n loading = true;\n formPromise: Promise;\n selectedCount = 0;\n searchText: string;\n\n private allUsers: OrganizationUserUserDetailsResponse[] = [];\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n await this.loadUsers();\n this.loading = false;\n }\n\n get users() {\n if (this.showSelected) {\n return this.allUsers.filter((u) => (u as any).checked);\n } else {\n return this.allUsers;\n }\n }\n\n async loadUsers() {\n const users = await this.apiService.getOrganizationUsers(this.organizationId);\n this.allUsers = users.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'email'));\n if (this.entity === 'group') {\n const response = await this.apiService.getGroupUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => u.id === s);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n }\n });\n }\n } else if (this.entity === 'collection') {\n const response = await this.apiService.getCollectionUsers(this.organizationId, this.entityId);\n if (response != null && users.data.length > 0) {\n response.forEach((s) => {\n const user = users.data.filter((u) => !u.accessAll && u.id === s.id);\n if (user != null && user.length > 0) {\n (user[0] as any).checked = true;\n (user[0] as any).readOnly = s.readOnly;\n }\n });\n }\n }\n\n this.allUsers.forEach((u) => {\n if (this.entity === 'collection' && u.accessAll) {\n (u as any).checked = true;\n }\n if ((u as any).checked) {\n this.selectedCount++;\n }\n });\n }\n\n check(u: OrganizationUserUserDetailsResponse) {\n if (this.entity === 'collection' && u.accessAll) {\n return;\n }\n (u as any).checked = !(u as any).checked;\n this.selectedChanged(u);\n }\n\n selectedChanged(u: OrganizationUserUserDetailsResponse) {\n if ((u as any).checked) {\n this.selectedCount++;\n } else {\n if (this.entity === 'collection') {\n (u as any).readOnly = false;\n }\n this.selectedCount--;\n }\n }\n\n filterSelected(showSelected: boolean) {\n this.showSelected = showSelected;\n }\n\n async submit() {\n try {\n if (this.entity === 'group') {\n const selections = this.users.filter((u) => (u as any).checked).map((u) => u.id);\n this.formPromise = this.apiService.putGroupUsers(this.organizationId, this.entityId, selections);\n } else {\n const selections = this.users.filter((u) => (u as any).checked && !u.accessAll)\n .map((u) => new SelectionReadOnlyRequest(u.id, !!(u as any).readOnly));\n this.formPromise = this.apiService.putCollectionUsers(this.organizationId, this.entityId, selections);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({\n action: this.entity === 'group' ? 'Edited Group Users' : 'Edited Collection Users',\n });\n this.toasterService.popAsync('success', null, this.i18nService.t('updatedUsers'));\n this.onEditedUsers.emit();\n } catch { }\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { EventService } from '../../services/event.service';\r\n\r\nimport { EventResponse } from 'jslib/models/response/eventResponse';\r\nimport { ListResponse } from 'jslib/models/response/listResponse';\r\n\r\n@Component({\r\n selector: 'app-org-events',\r\n templateUrl: 'events.component.html',\r\n})\r\nexport class EventsComponent implements OnInit {\r\n loading = true;\r\n loaded = false;\r\n organizationId: string;\r\n events: any[];\r\n start: string;\r\n end: string;\r\n continuationToken: string;\r\n refreshPromise: Promise;\r\n morePromise: Promise;\r\n\r\n private orgUsersUserIdMap = new Map();\r\n private orgUsersIdMap = new Map();\r\n\r\n constructor(private apiService: ApiService, private route: ActivatedRoute,\r\n private eventService: EventService, private i18nService: I18nService,\r\n private toasterService: ToasterService, private userService: UserService,\r\n private router: Router) { }\r\n\r\n async ngOnInit() {\r\n this.route.parent.parent.params.subscribe(async (params) => {\r\n this.organizationId = params.organizationId;\r\n const organization = await this.userService.getOrganization(this.organizationId);\r\n if (organization == null || !organization.useEvents) {\r\n this.router.navigate(['/organizations', this.organizationId]);\r\n return;\r\n }\r\n const defaultDates = this.eventService.getDefaultDateFilters();\r\n this.start = defaultDates[0];\r\n this.end = defaultDates[1];\r\n await this.load();\r\n });\r\n }\r\n\r\n async load() {\r\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\r\n response.data.forEach((u) => {\r\n const name = u.name == null || u.name.trim() === '' ? u.email : u.name;\r\n this.orgUsersIdMap.set(u.id, { name: name, email: u.email });\r\n this.orgUsersUserIdMap.set(u.userId, { name: name, email: u.email });\r\n });\r\n await this.loadEvents(true);\r\n this.loaded = true;\r\n }\r\n\r\n async loadEvents(clearExisting: boolean) {\r\n if (this.refreshPromise != null || this.morePromise != null) {\r\n return;\r\n }\r\n\r\n let dates: string[] = null;\r\n try {\r\n dates = this.eventService.formatDateFilters(this.start, this.end);\r\n } catch (e) {\r\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidDateRange'));\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n let response: ListResponse;\r\n try {\r\n const promise = this.apiService.getEventsOrganization(this.organizationId, dates[0], dates[1],\r\n clearExisting ? null : this.continuationToken);\r\n if (clearExisting) {\r\n this.refreshPromise = promise;\r\n } else {\r\n this.morePromise = promise;\r\n }\r\n response = await promise;\r\n } catch { }\r\n\r\n this.continuationToken = response.continuationToken;\r\n const events = response.data.map((r) => {\r\n const userId = r.actingUserId == null ? r.userId : r.actingUserId;\r\n const eventInfo = this.eventService.getEventInfo(r);\r\n const user = userId != null && this.orgUsersUserIdMap.has(userId) ?\r\n this.orgUsersUserIdMap.get(userId) : null;\r\n return {\r\n message: eventInfo.message,\r\n appIcon: eventInfo.appIcon,\r\n appName: eventInfo.appName,\r\n userId: userId,\r\n userName: user != null ? user.name : this.i18nService.t('unknown'),\r\n userEmail: user != null ? user.email : '',\r\n date: r.date,\r\n ip: r.ipAddress,\r\n type: r.type,\r\n };\r\n });\r\n\r\n if (!clearExisting && this.events != null && this.events.length > 0) {\r\n this.events = this.events.concat(events);\r\n } else {\r\n this.events = events;\r\n }\r\n\r\n this.loading = false;\r\n this.morePromise = null;\r\n this.refreshPromise = null;\r\n }\r\n}\r\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityUsersComponent } from './entity-users.component';\nimport { GroupAddEditComponent } from './group-add-edit.component';\n\n@Component({\n selector: 'app-org-groups',\n templateUrl: 'groups.component.html',\n})\nexport class GroupsComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('usersTemplate', { read: ViewContainerRef }) usersModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n groups: GroupResponse[];\n searchText: string;\n\n private modal: ModalComponent = null;\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private userService: UserService,\n private router: Router) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (organization == null || !organization.useGroups) {\n this.router.navigate(['/organizations', this.organizationId]);\n return;\n }\n await this.load();\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n async load() {\n const response = await this.apiService.getGroups(this.organizationId);\n const groups = response.data != null && response.data.length > 0 ? response.data : [];\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n this.loading = false;\n }\n\n edit(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n GroupAddEditComponent, this.addEditModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.groupId = group != null ? group.id : null;\n childComponent.onSavedGroup.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedGroup.subscribe(() => {\n this.modal.close();\n this.removeGroup(group);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n add() {\n this.edit(null);\n }\n\n async delete(group: GroupResponse) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteGroupConfirmation'), group.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteGroup(this.organizationId, group.id);\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', group.name));\n this.removeGroup(group);\n } catch { }\n }\n\n users(group: GroupResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.usersModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityUsersComponent, this.usersModalRef);\n\n childComponent.organizationId = this.organizationId;\n childComponent.entity = 'group';\n childComponent.entityId = group.id;\n childComponent.entityName = group.name;\n\n childComponent.onEditedUsers.subscribe(() => {\n this.modal.close();\n });\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private removeGroup(group: GroupResponse) {\n const index = this.groups.indexOf(group);\n if (index > -1) {\n this.groups.splice(index, 1);\n }\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n OnInit,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { OrganizationUserUserDetailsResponse } from 'jslib/models/response/organizationUserResponse';\n\nimport { OrganizationUserStatusType } from 'jslib/enums/organizationUserStatusType';\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nimport { Utils } from 'jslib/misc/utils';\n\nimport { ModalComponent } from '../../modal.component';\nimport { EntityEventsComponent } from './entity-events.component';\nimport { UserAddEditComponent } from './user-add-edit.component';\nimport { UserConfirmComponent } from './user-confirm.component';\nimport { UserGroupsComponent } from './user-groups.component';\n\n@Component({\n selector: 'app-org-people',\n templateUrl: 'people.component.html',\n})\nexport class PeopleComponent implements OnInit {\n @ViewChild('addEdit', { read: ViewContainerRef }) addEditModalRef: ViewContainerRef;\n @ViewChild('groupsTemplate', { read: ViewContainerRef }) groupsModalRef: ViewContainerRef;\n @ViewChild('eventsTemplate', { read: ViewContainerRef }) eventsModalRef: ViewContainerRef;\n @ViewChild('confirmTemplate', { read: ViewContainerRef }) confirmModalRef: ViewContainerRef;\n\n loading = true;\n organizationId: string;\n users: OrganizationUserUserDetailsResponse[];\n searchText: string;\n status: OrganizationUserStatusType = null;\n statusMap = new Map();\n organizationUserType = OrganizationUserType;\n organizationUserStatusType = OrganizationUserStatusType;\n actionPromise: Promise;\n accessEvents = false;\n accessGroups = false;\n\n private modal: ModalComponent = null;\n private allUsers: OrganizationUserUserDetailsResponse[];\n\n constructor(private apiService: ApiService, private route: ActivatedRoute,\n private i18nService: I18nService, private componentFactoryResolver: ComponentFactoryResolver,\n private platformUtilsService: PlatformUtilsService, private analytics: Angulartics2,\n private toasterService: ToasterService, private cryptoService: CryptoService,\n private userService: UserService, private router: Router,\n private storageService: StorageService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n const organization = await this.userService.getOrganization(this.organizationId);\n if (!organization.isAdmin) {\n this.router.navigate(['../collections'], { relativeTo: this.route });\n return;\n }\n this.accessEvents = organization.useEvents;\n this.accessGroups = organization.useGroups;\n await this.load();\n\n const queryParamsSub = this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\n if (qParams.viewEvents != null) {\n const user = this.users.filter((u) => u.id === qParams.viewEvents);\n if (user.length > 0 && user[0].status === OrganizationUserStatusType.Confirmed) {\n this.events(user[0]);\n }\n }\n queryParamsSub.unsubscribe();\n });\n });\n }\n\n async load() {\n const response = await this.apiService.getOrganizationUsers(this.organizationId);\n this.statusMap.clear();\n this.allUsers = response.data != null && response.data.length > 0 ? response.data : [];\n this.allUsers.sort(Utils.getSortFunction(this.i18nService, 'email'));\n this.allUsers.forEach((u) => {\n if (!this.statusMap.has(u.status)) {\n this.statusMap.set(u.status, [u]);\n } else {\n this.statusMap.get(u.status).push(u);\n }\n });\n this.filter(this.status);\n this.loading = false;\n }\n\n filter(status: OrganizationUserStatusType) {\n this.status = status;\n if (this.status != null) {\n this.users = this.statusMap.get(this.status);\n } else {\n this.users = this.allUsers;\n }\n }\n\n get invitedCount() {\n return this.statusMap.has(OrganizationUserStatusType.Invited) ?\n this.statusMap.get(OrganizationUserStatusType.Invited).length : 0;\n }\n\n get acceptedCount() {\n return this.statusMap.has(OrganizationUserStatusType.Accepted) ?\n this.statusMap.get(OrganizationUserStatusType.Accepted).length : 0;\n }\n\n get confirmedCount() {\n return this.statusMap.has(OrganizationUserStatusType.Confirmed) ?\n this.statusMap.get(OrganizationUserStatusType.Confirmed).length : 0;\n }\n\n get showConfirmUsers(): boolean {\n return this.allUsers != null && this.statusMap != null && this.allUsers.length > 1 &&\n this.confirmedCount > 0 && this.confirmedCount < 3 && this.acceptedCount > 0;\n }\n\n edit(user: OrganizationUserUserDetailsResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.addEditModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n UserAddEditComponent, this.addEditModalRef);\n\n childComponent.name = user != null ? user.name || user.email : null;\n childComponent.organizationId = this.organizationId;\n childComponent.organizationUserId = user != null ? user.id : null;\n childComponent.onSavedUser.subscribe(() => {\n this.modal.close();\n this.load();\n });\n childComponent.onDeletedUser.subscribe(() => {\n this.modal.close();\n this.removeUser(user);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n invite() {\n this.edit(null);\n }\n\n groups(user: OrganizationUserUserDetailsResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.groupsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n UserGroupsComponent, this.groupsModalRef);\n\n childComponent.name = user != null ? user.name || user.email : null;\n childComponent.organizationId = this.organizationId;\n childComponent.organizationUserId = user != null ? user.id : null;\n childComponent.onSavedUser.subscribe(() => {\n this.modal.close();\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n async remove(user: OrganizationUserUserDetailsResponse) {\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('removeUserConfirmation'), user.name || user.email,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n await this.apiService.deleteOrganizationUser(this.organizationId, user.id);\n this.analytics.eventTrack.next({ action: 'Deleted User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('removedUserId', user.name || user.email));\n this.removeUser(user);\n } catch { }\n }\n\n async reinvite(user: OrganizationUserUserDetailsResponse) {\n if (this.actionPromise != null) {\n return;\n }\n this.actionPromise = this.apiService.postOrganizationUserReinvite(this.organizationId, user.id);\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Reinvited User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenReinvited', user.name || user.email));\n this.actionPromise = null;\n }\n\n async confirm(user: OrganizationUserUserDetailsResponse) {\n function updateUser(self: PeopleComponent) {\n user.status = OrganizationUserStatusType.Confirmed;\n const mapIndex = self.statusMap.get(OrganizationUserStatusType.Accepted).indexOf(user);\n if (mapIndex > -1) {\n self.statusMap.get(OrganizationUserStatusType.Accepted).splice(mapIndex, 1);\n self.statusMap.get(OrganizationUserStatusType.Confirmed).push(user);\n }\n }\n\n if (this.actionPromise != null) {\n return;\n }\n\n const autoConfirm = await this.storageService.get(ConstantsService.autoConfirmFingerprints);\n if (autoConfirm == null || !autoConfirm) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.groupsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n UserConfirmComponent, this.confirmModalRef);\n\n childComponent.name = user != null ? user.name || user.email : null;\n childComponent.organizationId = this.organizationId;\n childComponent.organizationUserId = user != null ? user.id : null;\n childComponent.userId = user != null ? user.userId : null;\n childComponent.onConfirmedUser.subscribe(() => {\n this.modal.close();\n updateUser(this);\n });\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n return;\n }\n\n this.actionPromise = this.doConfirmation(user);\n await this.actionPromise;\n updateUser(this);\n this.analytics.eventTrack.next({ action: 'Confirmed User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenConfirmed', user.name || user.email));\n this.actionPromise = null;\n }\n\n async events(user: OrganizationUserUserDetailsResponse) {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.eventsModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n EntityEventsComponent, this.eventsModalRef);\n\n childComponent.name = user.name || user.email;\n childComponent.organizationId = this.organizationId;\n childComponent.entityId = user.id;\n childComponent.showUser = false;\n childComponent.entity = 'user';\n\n this.modal.onClosed.subscribe(() => {\n this.modal = null;\n });\n }\n\n private async doConfirmation(user: OrganizationUserUserDetailsResponse) {\n const orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n const publicKeyResponse = await this.apiService.getUserPublicKey(user.userId);\n const publicKey = Utils.fromB64ToArray(publicKeyResponse.publicKey);\n try {\n // tslint:disable-next-line\n console.log('User\\'s fingerprint: ' +\n (await this.cryptoService.getFingerprint(user.userId, publicKey.buffer)).join('-'));\n } catch { }\n const key = await this.cryptoService.rsaEncrypt(orgKey.key, publicKey.buffer);\n const request = new OrganizationUserConfirmRequest();\n request.key = key.encryptedString;\n await this.apiService.postOrganizationUserConfirm(this.organizationId, user.id, request);\n }\n\n private removeUser(user: OrganizationUserUserDetailsResponse) {\n let index = this.users.indexOf(user);\n if (index > -1) {\n this.users.splice(index, 1);\n }\n if (this.statusMap.has(OrganizationUserStatusType.Accepted)) {\n index = this.statusMap.get(OrganizationUserStatusType.Accepted).indexOf(user);\n if (index > -1) {\n this.statusMap.get(OrganizationUserStatusType.Accepted).splice(index, 1);\n }\n }\n if (this.statusMap.has(OrganizationUserStatusType.Invited)) {\n index = this.statusMap.get(OrganizationUserStatusType.Invited).indexOf(user);\n if (index > -1) {\n this.statusMap.get(OrganizationUserStatusType.Invited).splice(index, 1);\n }\n }\n if (this.statusMap.has(OrganizationUserStatusType.Confirmed)) {\n index = this.statusMap.get(OrganizationUserStatusType.Confirmed).indexOf(user);\n if (index > -1) {\n this.statusMap.get(OrganizationUserStatusType.Confirmed).splice(index, 1);\n }\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Component({\n selector: 'app-org-settings',\n templateUrl: 'settings.component.html',\n})\nexport class SettingsComponent {\n access2fa = false;\n\n constructor(private route: ActivatedRoute, private userService: UserService) { }\n\n ngOnInit() {\n this.route.parent.params.subscribe(async (params) => {\n const organization = await this.userService.getOrganization(params.organizationId);\n this.access2fa = organization.use2fa;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { OrganizationUpdateRequest } from 'jslib/models/request/organizationUpdateRequest';\nimport { OrganizationResponse } from 'jslib/models/response/organizationResponse';\n\nimport { ModalComponent } from '../../modal.component';\nimport { PurgeVaultComponent } from '../../settings/purge-vault.component';\nimport { DeleteOrganizationComponent } from './delete-organization.component';\n\n@Component({\n selector: 'app-org-account',\n templateUrl: 'account.component.html',\n})\nexport class AccountComponent {\n @ViewChild('deleteOrganizationTemplate', { read: ViewContainerRef }) deleteModalRef: ViewContainerRef;\n @ViewChild('purgeOrganizationTemplate', { read: ViewContainerRef }) purgeModalRef: ViewContainerRef;\n\n loading = true;\n org: OrganizationResponse;\n formPromise: Promise;\n\n private organizationId: string;\n private modal: ModalComponent = null;\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver,\n private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private route: ActivatedRoute, private syncService: SyncService) { }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n try {\n this.org = await this.apiService.getOrganization(this.organizationId);\n } catch { }\n });\n this.loading = false;\n }\n\n async submit() {\n try {\n const request = new OrganizationUpdateRequest();\n request.name = this.org.name;\n request.businessName = this.org.businessName;\n request.billingEmail = this.org.billingEmail;\n this.formPromise = this.apiService.putOrganization(this.organizationId, request).then(() => {\n return this.syncService.fullSync(true);\n });\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Updated Organization Settings' });\n this.toasterService.popAsync('success', null, this.i18nService.t('organizationUpdated'));\n } catch { }\n }\n\n deleteOrganization() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.deleteModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(\n DeleteOrganizationComponent, this.deleteModalRef);\n childComponent.organizationId = this.organizationId;\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n\n purgeVault() {\n if (this.modal != null) {\n this.modal.close();\n }\n\n const factory = this.componentFactoryResolver.resolveComponentFactory(ModalComponent);\n this.modal = this.purgeModalRef.createComponent(factory).instance;\n const childComponent = this.modal.show(PurgeVaultComponent, this.purgeModalRef);\n childComponent.organizationId = this.organizationId;\n\n this.modal.onClosed.subscribe(async () => {\n this.modal = null;\n });\n }\n}\n","import {\n Component,\n ComponentFactoryResolver,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { TwoFactorDuoComponent } from '../../settings/two-factor-duo.component';\nimport { TwoFactorSetupComponent as BaseTwoFactorSetupComponent } from '../../settings/two-factor-setup.component';\n\n@Component({\n selector: 'app-two-factor-setup',\n templateUrl: '../../settings/two-factor-setup.component.html',\n})\nexport class TwoFactorSetupComponent extends BaseTwoFactorSetupComponent {\n constructor(apiService: ApiService, userService: UserService,\n componentFactoryResolver: ComponentFactoryResolver, messagingService: MessagingService,\n private route: ActivatedRoute) {\n super(apiService, userService, componentFactoryResolver, messagingService);\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await super.ngOnInit();\n });\n }\n\n manage(type: TwoFactorProviderType) {\n switch (type) {\n case TwoFactorProviderType.OrganizationDuo:\n const duoComp = this.openModal(this.duoModalRef, TwoFactorDuoComponent);\n duoComp.type = TwoFactorProviderType.OrganizationDuo;\n duoComp.organizationId = this.organizationId;\n duoComp.onUpdated.subscribe((enabled: boolean) => {\n this.updateStatus(enabled, TwoFactorProviderType.OrganizationDuo);\n });\n break;\n default:\n break;\n }\n }\n\n protected getTwoFactorProviders() {\n return this.apiService.getTwoFactorOrganizationProviders(this.organizationId);\n }\n\n protected filterProvider(type: TwoFactorProviderType) {\n return type !== TwoFactorProviderType.OrganizationDuo;\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { VerifyBankRequest } from 'jslib/models/request/verifyBankRequest';\n\nimport { BillingChargeResponse } from 'jslib/models/response/billingResponse';\nimport { OrganizationBillingResponse } from 'jslib/models/response/organizationBillingResponse';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\n\nimport { PaymentMethodType } from 'jslib/enums/paymentMethodType';\nimport { PlanType } from 'jslib/enums/planType';\n\n@Component({\n selector: 'app-org-billing',\n templateUrl: 'organization-billing.component.html',\n})\nexport class OrganizationBillingComponent implements OnInit {\n loading = false;\n firstLoaded = false;\n organizationId: string;\n adjustSeatsAdd = true;\n showAdjustSeats = false;\n adjustStorageAdd = true;\n showAdjustStorage = false;\n showAdjustPayment = false;\n showUpdateLicense = false;\n billing: OrganizationBillingResponse;\n paymentMethodType = PaymentMethodType;\n selfHosted = false;\n verifyAmount1: number;\n verifyAmount2: number;\n\n cancelPromise: Promise;\n reinstatePromise: Promise;\n licensePromise: Promise;\n verifyBankPromise: Promise;\n\n constructor(private tokenService: TokenService, private apiService: ApiService,\n private platformUtilsService: PlatformUtilsService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private route: ActivatedRoute) {\n this.selfHosted = platformUtilsService.isSelfHost();\n }\n\n async ngOnInit() {\n this.route.parent.parent.params.subscribe(async (params) => {\n this.organizationId = params.organizationId;\n await this.load();\n this.firstLoaded = true;\n });\n }\n\n async load() {\n if (this.loading) {\n return;\n }\n this.loading = true;\n this.billing = await this.apiService.getOrganizationBilling(this.organizationId);\n this.loading = false;\n }\n\n async reinstate() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('reinstateConfirmation'),\n this.i18nService.t('reinstateSubscription'), this.i18nService.t('yes'), this.i18nService.t('cancel'));\n if (!confirmed) {\n return;\n }\n\n try {\n this.reinstatePromise = this.apiService.postOrganizationReinstate(this.organizationId);\n await this.reinstatePromise;\n this.analytics.eventTrack.next({ action: 'Reinstated Plan' });\n this.toasterService.popAsync('success', null, this.i18nService.t('reinstated'));\n this.load();\n } catch { }\n }\n\n async cancel() {\n if (this.loading) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('cancelConfirmation'),\n this.i18nService.t('cancelSubscription'), this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n\n try {\n this.cancelPromise = this.apiService.postOrganizationCancel(this.organizationId);\n await this.cancelPromise;\n this.analytics.eventTrack.next({ action: 'Canceled Plan' });\n this.toasterService.popAsync('success', null, this.i18nService.t('canceledSubscription'));\n this.load();\n } catch { }\n }\n\n async changePlan() {\n const contactSupport = await this.platformUtilsService.showDialog(this.i18nService.t('changeBillingPlanDesc'),\n this.i18nService.t('changeBillingPlan'), this.i18nService.t('contactSupport'), this.i18nService.t('close'));\n if (contactSupport) {\n this.platformUtilsService.launchUri('https://bitwarden.com/contact');\n }\n }\n\n async downloadLicense() {\n if (this.loading) {\n return;\n }\n\n const installationId = window.prompt(this.i18nService.t('enterInstallationId'));\n if (installationId == null || installationId === '') {\n return;\n }\n\n try {\n this.licensePromise = this.apiService.getOrganizationLicense(this.organizationId, installationId);\n const license = await this.licensePromise;\n const licenseString = JSON.stringify(license, null, 2);\n this.platformUtilsService.saveFile(window, licenseString, null, 'bitwarden_organization_license.json');\n } catch { }\n }\n\n updateLicense() {\n if (this.loading) {\n return;\n }\n this.showUpdateLicense = true;\n }\n\n async verifyBank() {\n if (this.loading) {\n return;\n }\n\n try {\n const request = new VerifyBankRequest();\n request.amount1 = this.verifyAmount1;\n request.amount2 = this.verifyAmount2;\n this.verifyBankPromise = this.apiService.postOrganizationVerifyBank(this.organizationId, request);\n await this.verifyBankPromise;\n this.analytics.eventTrack.next({ action: 'Verified Bank Account' });\n this.toasterService.popAsync('success', null, this.i18nService.t('verifiedBankAccount'));\n this.load();\n } catch { }\n }\n\n closeUpdateLicense(load: boolean) {\n this.showUpdateLicense = false;\n if (load) {\n this.load();\n }\n }\n\n adjustSeats(add: boolean) {\n this.adjustSeatsAdd = add;\n this.showAdjustSeats = true;\n }\n\n closeSeats(load: boolean) {\n this.showAdjustSeats = false;\n if (load) {\n this.load();\n }\n }\n\n adjustStorage(add: boolean) {\n this.adjustStorageAdd = add;\n this.showAdjustStorage = true;\n }\n\n closeStorage(load: boolean) {\n this.showAdjustStorage = false;\n if (load) {\n this.load();\n }\n }\n\n changePayment() {\n this.showAdjustPayment = true;\n }\n\n closePayment(load: boolean) {\n this.showAdjustPayment = false;\n if (load) {\n this.load();\n }\n }\n\n async viewInvoice(charge: BillingChargeResponse) {\n const token = await this.tokenService.getToken();\n const url = this.apiService.apiBaseUrl + '/organizations/' + this.organizationId +\n '/billing-invoice/' + charge.invoiceId + '?access_token=' + token;\n this.platformUtilsService.launchUri(url);\n }\n\n get isExpired() {\n return this.billing != null && this.billing.expiration != null &&\n new Date(this.billing.expiration) < new Date();\n }\n\n get subscriptionMarkedForCancel() {\n return this.subscription != null && !this.subscription.cancelled && this.subscription.cancelAtEndDate;\n }\n\n get subscription() {\n return this.billing != null ? this.billing.subscription : null;\n }\n\n get nextInvoice() {\n return this.billing != null ? this.billing.upcomingInvoice : null;\n }\n\n get paymentSource() {\n return this.billing != null ? this.billing.paymentSource : null;\n }\n\n get charges() {\n return this.billing != null ? this.billing.charges : null;\n }\n\n get storagePercentage() {\n return this.billing != null && this.billing.maxStorageGb ?\n +(100 * (this.billing.storageGb / this.billing.maxStorageGb)).toFixed(2) : 0;\n }\n\n get storageProgressWidth() {\n return this.storagePercentage < 5 ? 5 : 0;\n }\n\n get billingInterval() {\n const monthly = this.billing.planType === PlanType.EnterpriseMonthly ||\n this.billing.planType === PlanType.TeamsMonthly;\n return monthly ? 'month' : 'year';\n }\n\n get storageGbPrice() {\n return this.billingInterval === 'month' ? 0.5 : 4;\n }\n\n get seatPrice() {\n switch (this.billing.planType) {\n case PlanType.EnterpriseMonthly:\n return 4;\n case PlanType.EnterpriseAnnually:\n return 36;\n case PlanType.TeamsMonthly:\n return 2.5;\n case PlanType.TeamsAnnually:\n return 24;\n default:\n return 0;\n }\n }\n\n get canAdjustSeats() {\n return this.billing.planType === PlanType.EnterpriseMonthly ||\n this.billing.planType === PlanType.EnterpriseAnnually ||\n this.billing.planType === PlanType.TeamsMonthly || this.billing.planType === PlanType.TeamsAnnually;\n }\n\n get canDownloadLicense() {\n return (this.billing.planType !== PlanType.Free && this.subscription == null) ||\n (this.subscription != null && !this.subscription.cancelled);\n }\n}\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 513;","import * as jq from 'jquery';\nimport * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport {\n BodyOutputType,\n Toast,\n ToasterConfig,\n ToasterContainerComponent,\n ToasterService,\n} from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n SecurityContext,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport {\n NavigationEnd,\n Router,\n} from '@angular/router';\n\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\n\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { LockService } from 'jslib/abstractions/lock.service';\nimport { NotificationsService } from 'jslib/abstractions/notifications.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService } from 'jslib/abstractions/search.service';\nimport { SettingsService } from 'jslib/abstractions/settings.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { TokenService } from 'jslib/abstractions/token.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { RouterService } from './services/router.service';\n\nconst BroadcasterSubscriptionId = 'AppComponent';\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\nconst IdleTimeout = 60000 * 10; // 10 minutes\n\n@Component({\n selector: 'app-root',\n templateUrl: 'app.component.html',\n})\nexport class AppComponent implements OnDestroy, OnInit {\n toasterConfig: ToasterConfig = new ToasterConfig({\n showCloseButton: true,\n mouseoverTimerStop: true,\n animation: 'flyRight',\n limit: 5,\n });\n\n private lastActivity: number = null;\n private idleTimer: number = null;\n private isIdle = false;\n\n constructor(private angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics,\n private broadcasterService: BroadcasterService, private userService: UserService,\n private tokenService: TokenService, private folderService: FolderService,\n private settingsService: SettingsService, private syncService: SyncService,\n private passwordGenerationService: PasswordGenerationService, private cipherService: CipherService,\n private authService: AuthService, private router: Router, private analytics: Angulartics2,\n private toasterService: ToasterService, private i18nService: I18nService,\n private platformUtilsService: PlatformUtilsService, private ngZone: NgZone,\n private lockService: LockService, private storageService: StorageService,\n private cryptoService: CryptoService, private collectionService: CollectionService,\n private sanitizer: DomSanitizer, private searchService: SearchService,\n private notificationsService: NotificationsService, private routerService: RouterService) { }\n\n ngOnInit() {\n this.ngZone.runOutsideAngular(() => {\n window.onmousemove = () => this.recordActivity();\n window.onmousedown = () => this.recordActivity();\n window.ontouchstart = () => this.recordActivity();\n window.onclick = () => this.recordActivity();\n window.onscroll = () => this.recordActivity();\n window.onkeypress = () => this.recordActivity();\n });\n\n this.broadcasterService.subscribe(BroadcasterSubscriptionId, async (message: any) => {\n this.ngZone.run(async () => {\n switch (message.command) {\n case 'loggedIn':\n case 'loggedOut':\n case 'unlocked':\n this.notificationsService.updateConnection(false);\n break;\n case 'logout':\n this.logOut(!!message.expired);\n break;\n case 'lockVault':\n await this.lockService.lock();\n break;\n case 'locked':\n this.notificationsService.updateConnection(false);\n this.router.navigate(['lock']);\n break;\n case 'syncStarted':\n break;\n case 'syncCompleted':\n break;\n case 'upgradeOrganization':\n const upgradeConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('upgradeOrganizationDesc'), this.i18nService.t('upgradeOrganization'),\n this.i18nService.t('upgradeOrganization'), this.i18nService.t('cancel'));\n if (upgradeConfirmed) {\n this.router.navigate(['organizations', message.organizationId, 'settings', 'billing']);\n }\n break;\n case 'premiumRequired':\n const premiumConfirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('premiumRequiredDesc'), this.i18nService.t('premiumRequired'),\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'));\n if (premiumConfirmed) {\n this.router.navigate(['settings/premium']);\n }\n break;\n case 'showToast':\n this.showToast(message);\n break;\n case 'analyticsEventTrack':\n this.analytics.eventTrack.next({\n action: message.action,\n properties: { label: message.label },\n });\n break;\n default:\n break;\n }\n });\n });\n\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n const modals = Array.from(document.querySelectorAll('.modal'));\n for (const modal of modals) {\n (jq(modal) as any).modal('hide');\n }\n\n if (document.querySelector('.swal-modal') != null) {\n swal.close(undefined);\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);\n }\n\n private async logOut(expired: boolean) {\n const userId = await this.userService.getUserId();\n\n await Promise.all([\n this.syncService.setLastSync(new Date(0)),\n this.tokenService.clearToken(),\n this.cryptoService.clearKeys(),\n this.userService.clear(),\n this.settingsService.clear(userId),\n this.cipherService.clear(userId),\n this.folderService.clear(userId),\n this.collectionService.clear(userId),\n this.passwordGenerationService.clear(),\n ]);\n\n this.searchService.clearIndex();\n this.authService.logOut(async () => {\n this.analytics.eventTrack.next({ action: 'Logged Out' });\n if (expired) {\n this.toasterService.popAsync('warning', this.i18nService.t('loggedOut'),\n this.i18nService.t('loginExpired'));\n }\n this.router.navigate(['/']);\n });\n }\n\n private async recordActivity() {\n const now = (new Date()).getTime();\n if (this.lastActivity != null && now - this.lastActivity < 250) {\n return;\n }\n\n this.lastActivity = now;\n this.storageService.save(ConstantsService.lastActiveKey, now);\n\n // Idle states\n if (this.isIdle) {\n this.isIdle = false;\n this.idleStateChanged();\n }\n if (this.idleTimer != null) {\n window.clearTimeout(this.idleTimer);\n this.idleTimer = null;\n }\n this.idleTimer = window.setTimeout(() => {\n if (!this.isIdle) {\n this.isIdle = true;\n this.idleStateChanged();\n }\n }, IdleTimeout);\n }\n\n private showToast(msg: any) {\n const toast: Toast = {\n type: msg.type,\n title: msg.title,\n };\n if (typeof (msg.text) === 'string') {\n toast.body = msg.text;\n } else if (msg.text.length === 1) {\n toast.body = msg.text[0];\n } else {\n let message = '';\n msg.text.forEach((t: string) =>\n message += ('

' + this.sanitizer.sanitize(SecurityContext.HTML, t) + '

'));\n toast.body = message;\n toast.bodyOutputType = BodyOutputType.TrustedHtml;\n }\n if (msg.options != null) {\n if (msg.options.trustedHtml === true) {\n toast.bodyOutputType = BodyOutputType.TrustedHtml;\n }\n if (msg.options.timeout != null && msg.options.timeout > 0) {\n toast.timeout = msg.options.timeout;\n }\n }\n this.toasterService.popAsync(toast);\n }\n\n private idleStateChanged() {\n if (this.isIdle) {\n this.notificationsService.disconnectFromInactivity();\n } else {\n this.notificationsService.reconnectFromActivity();\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { AuthService } from 'jslib/abstractions/auth.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n TwoFactorOptionsComponent as BaseTwoFactorOptionsComponent,\n} from 'jslib/angular/components/two-factor-options.component';\n\n@Component({\n selector: 'app-two-factor-options',\n templateUrl: 'two-factor-options.component.html',\n})\nexport class TwoFactorOptionsComponent extends BaseTwoFactorOptionsComponent {\n constructor(authService: AuthService, router: Router,\n i18nService: I18nService, platformUtilsService: PlatformUtilsService) {\n super(authService, router, i18nService, platformUtilsService, window);\n }\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class TwoFactorEmailRequest extends PasswordVerificationRequest {\n email: string;\n\n constructor(email: string, masterPasswordHash: string) {\n super();\n this.masterPasswordHash = masterPasswordHash;\n this.email = email;\n }\n}\n","export class KeysRequest {\n publicKey: string;\n encryptedPrivateKey: string;\n\n constructor(publicKey: string, encryptedPrivateKey: string) {\n this.publicKey = publicKey;\n this.encryptedPrivateKey = encryptedPrivateKey;\n }\n}\n","
\n
\n \n {{text}}\n \n
\n
\n","\n","
\n
\n
\n © {{year}}, 8bit Solutions LLC\n
\n
\n
\n {{'versionNumber' | i18n : version}}\n
\n
\n
\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\n@Component({\n selector: 'app-verify-email',\n templateUrl: 'verify-email.component.html',\n})\nexport class VerifyEmailComponent {\n actionPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async send() {\n if (this.actionPromise != null) {\n return;\n }\n try {\n this.actionPromise = this.apiService.postAccountVerifyEmail();\n await this.actionPromise;\n this.analytics.eventTrack.next({ action: 'Sent Verification Email' });\n this.toasterService.popAsync('success', null, this.i18nService.t('checkInboxForVerification'));\n } catch { }\n this.actionPromise = null;\n }\n}\n","\n

\n \n

\n \n \n

{{'noOrganizationsList' | i18n}}

\n
\n \n \n {{'newOrganization' | i18n}}\n \n
\n\n
\n

\n {{'organizations' | i18n}}\n \n \n \n

\n \n \n {{'newOrganization' | i18n}}\n \n
\n \n \n \n

{{'noOrganizationsList' | i18n}}

\n \n \n {{'newOrganization' | i18n}}\n \n
\n \n \n \n \n \n \n \n \n
\n \n \n {{o.name}}\n \n \n
\n \n \n
\n
\n
\n
\n","import { Component } from '@angular/core';\n\nimport {\n Toast,\n ToasterService,\n} from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\n\nimport { CipherWithIdRequest } from 'jslib/models/request/cipherWithIdRequest';\nimport { FolderWithIdRequest } from 'jslib/models/request/folderWithIdRequest';\nimport { UpdateKeyRequest } from 'jslib/models/request/updateKeyRequest';\n\n@Component({\n selector: 'app-update-key',\n templateUrl: 'update-key.component.html',\n})\nexport class UpdateKeyComponent {\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService,\n private syncService: SyncService, private folderService: FolderService,\n private cipherService: CipherService) { }\n\n async submit() {\n const hasEncKey = await this.cryptoService.hasEncKey();\n if (hasEncKey) {\n return;\n }\n\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n try {\n this.formPromise = this.makeRequest().then((request) => {\n return this.apiService.postAccountKey(request);\n });\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Key Updated' });\n const toast: Toast = {\n type: 'success',\n title: this.i18nService.t('keyUpdated'),\n body: this.i18nService.t('logBackInOthersToo'),\n timeout: 15000,\n };\n this.toasterService.popAsync(toast);\n this.messagingService.send('logout');\n } catch { }\n }\n\n private async makeRequest(): Promise {\n const key = await this.cryptoService.getKey();\n const encKey = await this.cryptoService.makeEncKey(key);\n const privateKey = await this.cryptoService.getPrivateKey();\n let encPrivateKey: CipherString = null;\n if (privateKey != null) {\n encPrivateKey = await this.cryptoService.encrypt(privateKey, encKey[0]);\n }\n const request = new UpdateKeyRequest();\n request.privateKey = encPrivateKey != null ? encPrivateKey.encryptedString : null;\n request.key = encKey[1].encryptedString;\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n\n await this.syncService.fullSync(true);\n\n const folders = await this.folderService.getAllDecrypted();\n for (let i = 0; i < folders.length; i++) {\n if (folders[i].id == null) {\n continue;\n }\n const folder = await this.folderService.encrypt(folders[i], encKey[0]);\n request.folders.push(new FolderWithIdRequest(folder));\n }\n\n const ciphers = await this.cipherService.getAllDecrypted();\n for (let i = 0; i < ciphers.length; i++) {\n if (ciphers[i].organizationId != null) {\n continue;\n }\n const cipher = await this.cipherService.encrypt(ciphers[i], encKey[0]);\n request.ciphers.push(new CipherWithIdRequest(cipher));\n }\n\n return request;\n }\n}\n","import { FolderRequest } from './folderRequest';\n\nimport { Folder } from '../domain/folder';\n\nexport class FolderWithIdRequest extends FolderRequest {\n id: string;\n\n constructor(folder: Folder) {\n super(folder);\n this.id = folder.id;\n }\n}\n","import { CipherWithIdRequest } from './cipherWithIdRequest';\nimport { FolderWithIdRequest } from './folderWithIdRequest';\n\nexport class UpdateKeyRequest {\n ciphers: CipherWithIdRequest[] = [];\n folders: FolderWithIdRequest[] = [];\n masterPasswordHash: string;\n privateKey: string;\n key: string;\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { CipherService } from 'jslib/abstractions/cipher.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\n@Component({\r\n selector: 'app-vault-bulk-delete',\r\n templateUrl: 'bulk-delete.component.html',\r\n})\r\nexport class BulkDeleteComponent {\r\n @Input() cipherIds: string[] = [];\r\n @Output() onDeleted = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n\r\n constructor(private analytics: Angulartics2, private cipherService: CipherService,\r\n private toasterService: ToasterService, private i18nService: I18nService) { }\r\n\r\n async submit() {\r\n this.formPromise = this.cipherService.deleteManyWithServer(this.cipherIds);\r\n await this.formPromise;\r\n this.onDeleted.emit();\r\n this.analytics.eventTrack.next({ action: 'Bulk Deleted Items' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedItems'));\r\n }\r\n}\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { CipherService } from 'jslib/abstractions/cipher.service';\r\nimport { FolderService } from 'jslib/abstractions/folder.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\n\r\nimport { FolderView } from 'jslib/models/view/folderView';\r\n\r\n@Component({\r\n selector: 'app-vault-bulk-move',\r\n templateUrl: 'bulk-move.component.html',\r\n})\r\nexport class BulkMoveComponent implements OnInit {\r\n @Input() cipherIds: string[] = [];\r\n @Output() onMoved = new EventEmitter();\r\n\r\n folderId: string = null;\r\n folders: FolderView[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private analytics: Angulartics2, private cipherService: CipherService,\r\n private toasterService: ToasterService, private i18nService: I18nService,\r\n private folderService: FolderService) { }\r\n\r\n async ngOnInit() {\r\n this.folders = await this.folderService.getAllDecrypted();\r\n this.folderId = this.folders[0].id;\r\n }\r\n\r\n async submit() {\r\n this.formPromise = this.cipherService.moveManyWithServer(this.cipherIds, this.folderId);\r\n await this.formPromise;\r\n this.onMoved.emit();\r\n this.analytics.eventTrack.next({ action: 'Bulk Moved Items' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('movedItems'));\r\n }\r\n}\r\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherView } from 'jslib/models/view';\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { Organization } from 'jslib/models/domain/organization';\n\n@Component({\n selector: 'app-vault-bulk-share',\n templateUrl: 'bulk-share.component.html',\n})\nexport class BulkShareComponent implements OnInit {\n @Input() ciphers: CipherView[] = [];\n @Input() organizationId: string;\n @Output() onShared = new EventEmitter();\n\n nonShareableCount = 0;\n collections: CollectionView[] = [];\n organizations: Organization[] = [];\n shareableCiphers: CipherView[] = [];\n formPromise: Promise;\n\n private writeableCollections: CollectionView[] = [];\n\n constructor(private analytics: Angulartics2, private cipherService: CipherService,\n private toasterService: ToasterService, private i18nService: I18nService,\n private collectionService: CollectionService, private userService: UserService) { }\n\n async ngOnInit() {\n this.shareableCiphers = this.ciphers.filter((c) => !c.hasOldAttachments && c.organizationId == null);\n this.nonShareableCount = this.ciphers.length - this.shareableCiphers.length;\n const allCollections = await this.collectionService.getAllDecrypted();\n this.writeableCollections = allCollections.filter((c) => !c.readOnly);\n this.organizations = await this.userService.getAllOrganizations();\n if (this.organizationId == null && this.organizations.length > 0) {\n this.organizationId = this.organizations[0].id;\n }\n this.filterCollections();\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n filterCollections() {\n this.selectAll(false);\n if (this.organizationId == null || this.writeableCollections.length === 0) {\n this.collections = [];\n } else {\n this.collections = this.writeableCollections.filter((c) => c.organizationId === this.organizationId);\n }\n }\n\n async submit() {\n const checkedCollectionIds = this.collections.filter((c) => (c as any).checked).map((c) => c.id);\n try {\n this.formPromise = this.cipherService.shareManyWithServer(this.shareableCiphers, this.organizationId,\n checkedCollectionIds);\n await this.formPromise;\n this.onShared.emit();\n this.analytics.eventTrack.next({ action: 'Bulk Shared Items' });\n this.toasterService.popAsync('success', null, this.i18nService.t('sharedItems'));\n } catch { }\n }\n\n check(c: CollectionView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n const collections = select ? this.collections : this.writeableCollections;\n collections.forEach((c) => this.check(c, select));\n }\n\n get canSave() {\n if (this.shareableCiphers != null && this.shareableCiphers.length > 0 && this.collections != null) {\n for (let i = 0; i < this.collections.length; i++) {\n if ((this.collections[i] as any).checked) {\n return true;\n }\n }\n }\n return false;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n FolderAddEditComponent as BaseFolderAddEditComponent,\n} from 'jslib/angular/components/folder-add-edit.component';\n\n@Component({\n selector: 'app-folder-add-edit',\n templateUrl: 'folder-add-edit.component.html',\n})\nexport class FolderAddEditComponent extends BaseFolderAddEditComponent {\n constructor(folderService: FolderService, i18nService: I18nService,\n platformUtilsService: PlatformUtilsService) {\n super(folderService, i18nService, platformUtilsService);\n }\n}\n","import {\n Component,\n OnDestroy,\n} from '@angular/core';\n\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CollectionView } from 'jslib/models/view/collectionView';\n\nimport { ShareComponent as BaseShareComponent } from 'jslib/angular/components/share.component';\n\n@Component({\n selector: 'app-vault-share',\n templateUrl: 'share.component.html',\n})\nexport class ShareComponent extends BaseShareComponent implements OnDestroy {\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, userService: UserService,\n cipherService: CipherService) {\n super(collectionService, platformUtilsService, i18nService, userService, cipherService);\n }\n\n ngOnDestroy() {\n this.selectAll(false);\n }\n\n check(c: CollectionView, select?: boolean) {\n (c as any).checked = select == null ? !(c as any).checked : select;\n }\n\n selectAll(select: boolean) {\n const collections = select ? this.collections : this.writeableCollections;\n collections.forEach((c) => this.check(c, select));\n }\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { UpdateProfileRequest } from 'jslib/models/request/updateProfileRequest';\n\nimport { ProfileResponse } from 'jslib/models/response/profileResponse';\n\n@Component({\n selector: 'app-profile',\n templateUrl: 'profile.component.html',\n})\nexport class ProfileComponent implements OnInit {\n loading = true;\n profile: ProfileResponse;\n fingerprint: string;\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private userService: UserService, private cryptoService: CryptoService) { }\n\n async ngOnInit() {\n this.profile = await this.apiService.getProfile();\n this.loading = false;\n const fingerprint = await this.cryptoService.getFingerprint(await this.userService.getUserId());\n if (fingerprint != null) {\n this.fingerprint = fingerprint.join('-');\n }\n }\n\n async submit() {\n try {\n const request = new UpdateProfileRequest(this.profile.name, this.profile.masterPasswordHint);\n this.formPromise = this.apiService.putProfile(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Updated Profile' });\n this.toasterService.popAsync('success', null, this.i18nService.t('accountUpdated'));\n } catch { }\n }\n}\n","import {\n Component,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { EmailRequest } from 'jslib/models/request/emailRequest';\nimport { EmailTokenRequest } from 'jslib/models/request/emailTokenRequest';\n\n@Component({\n selector: 'app-change-email',\n templateUrl: 'change-email.component.html',\n})\nexport class ChangeEmailComponent {\n masterPassword: string;\n newEmail: string;\n token: string;\n tokenSent = false;\n\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService,\n private userService: UserService) { }\n\n async submit() {\n const hasEncKey = await this.cryptoService.hasEncKey();\n if (!hasEncKey) {\n this.toasterService.popAsync('error', null, this.i18nService.t('updateKey'));\n return;\n }\n\n this.newEmail = this.newEmail.trim().toLowerCase();\n if (!this.tokenSent) {\n const request = new EmailTokenRequest();\n request.newEmail = this.newEmail;\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.postEmailToken(request);\n await this.formPromise;\n this.tokenSent = true;\n } catch { }\n } else {\n const request = new EmailRequest();\n request.token = this.token;\n request.newEmail = this.newEmail;\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n const kdf = await this.userService.getKdf();\n const kdfIterations = await this.userService.getKdfIterations();\n const newKey = await this.cryptoService.makeKey(this.masterPassword, this.newEmail, kdf, kdfIterations);\n request.newMasterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, newKey);\n const newEncKey = await this.cryptoService.remakeEncKey(newKey);\n request.key = newEncKey[1].encryptedString;\n try {\n this.formPromise = this.apiService.postEmail(request);\n await this.formPromise;\n this.reset();\n this.analytics.eventTrack.next({ action: 'Changed Email' });\n this.toasterService.popAsync('success', this.i18nService.t('emailChanged'),\n this.i18nService.t('logBackIn'));\n this.messagingService.send('logout');\n } catch { }\n }\n }\n\n reset() {\n this.token = this.newEmail = this.masterPassword = null;\n this.tokenSent = false;\n }\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class EmailTokenRequest extends PasswordVerificationRequest {\n newEmail: string;\n masterPasswordHash: string;\n}\n","import {\n Component,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { FolderService } from 'jslib/abstractions/folder.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { SyncService } from 'jslib/abstractions/sync.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\nimport { SymmetricCryptoKey } from 'jslib/models/domain/symmetricCryptoKey';\n\nimport { CipherWithIdRequest } from 'jslib/models/request/cipherWithIdRequest';\nimport { FolderWithIdRequest } from 'jslib/models/request/folderWithIdRequest';\nimport { PasswordRequest } from 'jslib/models/request/passwordRequest';\nimport { UpdateKeyRequest } from 'jslib/models/request/updateKeyRequest';\n\n@Component({\n selector: 'app-change-password',\n templateUrl: 'change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit {\n currentMasterPassword: string;\n newMasterPassword: string;\n confirmNewMasterPassword: string;\n formPromise: Promise;\n masterPasswordScore: number;\n rotateEncKey = false;\n\n private masterPasswordStrengthTimeout: any;\n private email: string;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService,\n private userService: UserService, private passwordGenerationService: PasswordGenerationService,\n private platformUtilsService: PlatformUtilsService, private folderService: FolderService,\n private cipherService: CipherService, private syncService: SyncService) { }\n\n async ngOnInit() {\n this.email = await this.userService.getEmail();\n }\n\n async submit() {\n const hasEncKey = await this.cryptoService.hasEncKey();\n if (!hasEncKey) {\n this.toasterService.popAsync('error', null, this.i18nService.t('updateKey'));\n return;\n }\n\n if (this.currentMasterPassword == null || this.currentMasterPassword === '' ||\n this.newMasterPassword == null || this.newMasterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n if (this.newMasterPassword.length < 8) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassLength'));\n return;\n }\n if (this.newMasterPassword !== this.confirmNewMasterPassword) {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassDoesntMatch'));\n return;\n }\n\n const strengthResult = this.passwordGenerationService.passwordStrength(this.newMasterPassword,\n this.getPasswordStrengthUserInput());\n if (strengthResult != null && strengthResult.score < 3) {\n const result = await this.platformUtilsService.showDialog(this.i18nService.t('weakMasterPasswordDesc'),\n this.i18nService.t('weakMasterPassword'), this.i18nService.t('yes'), this.i18nService.t('no'),\n 'warning');\n if (!result) {\n return;\n }\n }\n\n if (this.rotateEncKey) {\n await this.syncService.fullSync(true);\n }\n\n const request = new PasswordRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.currentMasterPassword, null);\n const email = await this.userService.getEmail();\n const kdf = await this.userService.getKdf();\n const kdfIterations = await this.userService.getKdfIterations();\n const newKey = await this.cryptoService.makeKey(this.newMasterPassword, email.trim().toLowerCase(),\n kdf, kdfIterations);\n request.newMasterPasswordHash = await this.cryptoService.hashPassword(this.newMasterPassword, newKey);\n const newEncKey = await this.cryptoService.remakeEncKey(newKey);\n request.key = newEncKey[1].encryptedString;\n try {\n if (this.rotateEncKey) {\n this.formPromise = this.apiService.postPassword(request).then(() => {\n return this.updateKey(newKey, request.newMasterPasswordHash);\n });\n } else {\n this.formPromise = this.apiService.postPassword(request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Changed Password' });\n this.toasterService.popAsync('success', this.i18nService.t('masterPasswordChanged'),\n this.i18nService.t('logBackIn'));\n this.messagingService.send('logout');\n } catch { }\n }\n\n updatePasswordStrength() {\n if (this.masterPasswordStrengthTimeout != null) {\n clearTimeout(this.masterPasswordStrengthTimeout);\n }\n this.masterPasswordStrengthTimeout = setTimeout(() => {\n const strengthResult = this.passwordGenerationService.passwordStrength(this.newMasterPassword,\n this.getPasswordStrengthUserInput());\n this.masterPasswordScore = strengthResult == null ? null : strengthResult.score;\n }, 300);\n }\n\n async rotateEncKeyClicked() {\n if (this.rotateEncKey) {\n const ciphers = await this.cipherService.getAllDecrypted();\n let hasOldAttachments = false;\n if (ciphers != null) {\n for (let i = 0; i < ciphers.length; i++) {\n if (ciphers[i].organizationId == null && ciphers[i].hasOldAttachments) {\n hasOldAttachments = true;\n break;\n }\n }\n }\n\n if (hasOldAttachments) {\n const learnMore = await this.platformUtilsService.showDialog(\n this.i18nService.t('oldAttachmentsNeedFixDesc'), null,\n this.i18nService.t('learnMore'), this.i18nService.t('close'), 'warning');\n if (learnMore) {\n this.platformUtilsService.launchUri(\n 'https://help.bitwarden.com/article/attachments/#fixing-old-attachments');\n }\n this.rotateEncKey = false;\n return;\n }\n\n const result = await this.platformUtilsService.showDialog(\n this.i18nService.t('updateEncryptionKeyWarning') + ' ' +\n this.i18nService.t('rotateEncKeyConfirmation'), this.i18nService.t('rotateEncKeyTitle'),\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!result) {\n this.rotateEncKey = false;\n }\n }\n }\n\n private getPasswordStrengthUserInput() {\n let userInput: string[] = [];\n const atPosition = this.email.indexOf('@');\n if (atPosition > -1) {\n userInput = userInput.concat(this.email.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/));\n }\n return userInput;\n }\n\n private async updateKey(key: SymmetricCryptoKey, masterPasswordHash: string) {\n const encKey = await this.cryptoService.makeEncKey(key);\n const privateKey = await this.cryptoService.getPrivateKey();\n let encPrivateKey: CipherString = null;\n if (privateKey != null) {\n encPrivateKey = await this.cryptoService.encrypt(privateKey, encKey[0]);\n }\n const request = new UpdateKeyRequest();\n request.privateKey = encPrivateKey != null ? encPrivateKey.encryptedString : null;\n request.key = encKey[1].encryptedString;\n request.masterPasswordHash = masterPasswordHash;\n\n const folders = await this.folderService.getAllDecrypted();\n for (let i = 0; i < folders.length; i++) {\n if (folders[i].id == null) {\n continue;\n }\n const folder = await this.folderService.encrypt(folders[i], encKey[0]);\n request.folders.push(new FolderWithIdRequest(folder));\n }\n\n const ciphers = await this.cipherService.getAllDecrypted();\n for (let i = 0; i < ciphers.length; i++) {\n if (ciphers[i].organizationId != null) {\n continue;\n }\n\n const cipher = await this.cipherService.encrypt(ciphers[i], encKey[0]);\n request.ciphers.push(new CipherWithIdRequest(cipher));\n }\n\n await this.apiService.postAccountKey(request);\n }\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class PasswordRequest extends PasswordVerificationRequest {\n newMasterPasswordHash: string;\n key: string;\n}\n","import {\r\n Component,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { KdfRequest } from 'jslib/models/request/kdfRequest';\r\n\r\nimport { KdfType } from 'jslib/enums/kdfType';\r\n\r\n@Component({\r\n selector: 'app-change-kdf',\r\n templateUrl: 'change-kdf.component.html',\r\n})\r\nexport class ChangeKdfComponent implements OnInit {\r\n masterPassword: string;\r\n kdfIterations: number;\r\n kdf = KdfType.PBKDF2_SHA256;\r\n kdfOptions: any[] = [];\r\n formPromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private cryptoService: CryptoService, private messagingService: MessagingService,\r\n private userService: UserService) {\r\n this.kdfOptions = [\r\n { name: 'PBKDF2 SHA-256', value: KdfType.PBKDF2_SHA256 },\r\n ];\r\n }\r\n\r\n async ngOnInit() {\r\n this.kdf = await this.userService.getKdf();\r\n this.kdfIterations = await this.userService.getKdfIterations();\r\n }\r\n\r\n async submit() {\r\n const hasEncKey = await this.cryptoService.hasEncKey();\r\n if (!hasEncKey) {\r\n this.toasterService.popAsync('error', null, this.i18nService.t('updateKey'));\r\n return;\r\n }\r\n\r\n const request = new KdfRequest();\r\n request.kdf = this.kdf;\r\n request.kdfIterations = this.kdfIterations;\r\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\r\n const email = await this.userService.getEmail();\r\n const newKey = await this.cryptoService.makeKey(this.masterPassword, email, this.kdf, this.kdfIterations);\r\n request.newMasterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, newKey);\r\n const newEncKey = await this.cryptoService.remakeEncKey(newKey);\r\n request.key = newEncKey[1].encryptedString;\r\n try {\r\n this.formPromise = this.apiService.postAccountKdf(request);\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: 'Changed KDF' });\r\n this.toasterService.popAsync('success', this.i18nService.t('encKeySettingsChanged'),\r\n this.i18nService.t('logBackIn'));\r\n this.messagingService.send('logout');\r\n } catch { }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\r\n\r\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\r\n\r\n@Component({\r\n selector: 'app-deauthorize-sessions',\r\n templateUrl: 'deauthorize-sessions.component.html',\r\n})\r\nexport class DeauthorizeSessionsComponent {\r\n masterPassword: string;\r\n formPromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private cryptoService: CryptoService, private messagingService: MessagingService) { }\r\n\r\n async submit() {\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n\r\n const request = new PasswordVerificationRequest();\r\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\r\n try {\r\n this.formPromise = this.apiService.postSecurityStamp(request);\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: 'Deauthorized Sessions' });\r\n this.toasterService.popAsync('success', this.i18nService.t('sessionsDeauthorized'),\r\n this.i18nService.t('logBackIn'));\r\n this.messagingService.send('logout');\r\n } catch { }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-delete-account',\n templateUrl: 'delete-account.component.html',\n})\nexport class DeleteAccountComponent {\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private messagingService: MessagingService) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.deleteAccount(request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Account' });\n this.toasterService.popAsync('success', this.i18nService.t('accountDeleted'),\n this.i18nService.t('accountDeletedDesc'));\n this.messagingService.send('logout');\n } catch { }\n }\n}\n","import {\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { UpdateTwoFactorAuthenticatorRequest } from 'jslib/models/request/updateTwoFactorAuthenticatorRequest';\nimport { TwoFactorAuthenticatorResponse } from 'jslib/models/response/twoFactorAuthenticatorResponse';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-authenticator',\n templateUrl: 'two-factor-authenticator.component.html',\n})\nexport class TwoFactorAuthenticatorComponent extends TwoFactorBaseComponent implements OnInit, OnDestroy {\n type = TwoFactorProviderType.Authenticator;\n key: string;\n token: string;\n formPromise: Promise;\n\n private qrScript: HTMLScriptElement;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n private userService: UserService, platformUtilsService: PlatformUtilsService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n this.qrScript = window.document.createElement('script');\n this.qrScript.src = 'scripts/qrious.min.js';\n this.qrScript.async = true;\n }\n\n ngOnInit() {\n window.document.body.appendChild(this.qrScript);\n }\n\n ngOnDestroy() {\n window.document.body.removeChild(this.qrScript);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n return this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.enabled) {\n return super.disable(this.formPromise);\n } else {\n return this.enable();\n }\n }\n\n protected enable() {\n const request = new UpdateTwoFactorAuthenticatorRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.token = this.token;\n request.key = this.key;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorAuthenticator(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n private async processResponse(response: TwoFactorAuthenticatorResponse) {\n this.token = null;\n this.enabled = response.enabled;\n this.key = response.key;\n const email = await this.userService.getEmail();\n window.setTimeout(() => {\n const qr = new (window as any).QRious({\n element: document.getElementById('qr'),\n value: 'otpauth://totp/Bitwarden:' + encodeURIComponent(email) +\n '?secret=' + encodeURIComponent(this.key) + '&issuer=Bitwarden',\n size: 160,\n });\n }, 100);\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { TwoFactorEmailRequest } from 'jslib/models/request/twoFactorEmailRequest';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\nimport { UpdateTwoFactorEmailRequest } from 'jslib/models/request/updateTwoFactorEmailRequest';\nimport { TwoFactorEmailResponse } from 'jslib/models/response/twoFactorEmailResponse';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-email',\n templateUrl: 'two-factor-email.component.html',\n})\nexport class TwoFactorEmailComponent extends TwoFactorBaseComponent {\n type = TwoFactorProviderType.Email;\n email: string;\n token: string;\n sentEmail: string;\n formPromise: Promise;\n emailPromise: Promise;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private userService: UserService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n return this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.enabled) {\n return super.disable(this.formPromise);\n } else {\n return this.enable();\n }\n }\n\n async sendEmail() {\n try {\n const request = new TwoFactorEmailRequest(this.email, this.masterPasswordHash);\n this.emailPromise = this.apiService.postTwoFactorEmailSetup(request);\n await this.emailPromise;\n this.sentEmail = this.email;\n } catch { }\n }\n\n protected enable() {\n const request = new UpdateTwoFactorEmailRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.email = this.email;\n request.token = this.token;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorEmail(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n private async processResponse(response: TwoFactorEmailResponse) {\n this.token = null;\n this.email = response.email;\n this.enabled = response.enabled;\n if (!this.enabled && (this.email == null || this.email === '')) {\n this.email = await this.userService.getEmail();\n }\n }\n}\n","import { Component } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { TwoFactorRecoverResponse } from 'jslib/models/response/twoFactorRescoverResponse';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\n@Component({\n selector: 'app-two-factor-recovery',\n templateUrl: 'two-factor-recovery.component.html',\n})\nexport class TwoFactorRecoveryComponent {\n type = -1;\n code: string;\n authed: boolean;\n twoFactorProviderType = TwoFactorProviderType;\n\n constructor(private i18nService: I18nService) { }\n\n auth(authResponse: any) {\n this.authed = true;\n this.processResponse(authResponse.response);\n }\n\n print() {\n const w = window.open();\n w.document.write('
' +\n '

' + this.i18nService.t('twoFactorRecoveryYourCode') + ':

' +\n '' +\n this.code + '
' +\n '

' + new Date() + '

');\n w.print();\n w.close();\n }\n\n private formatString(s: string) {\n if (s == null) {\n return null;\n }\n return s.replace(/(.{4})/g, '$1 ').trim().toUpperCase();\n }\n\n private processResponse(response: TwoFactorRecoverResponse) {\n this.code = this.formatString(response.code);\n }\n}\n","import {\n Component,\n NgZone,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\nimport { UpdateTwoFactorU2fDeleteRequest } from 'jslib/models/request/updateTwoFactorU2fDeleteRequest';\nimport { UpdateTwoFactorU2fRequest } from 'jslib/models/request/updateTwoFactorU2fRequest';\nimport {\n ChallengeResponse,\n TwoFactorU2fResponse,\n} from 'jslib/models/response/twoFactorU2fResponse';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-u2f',\n templateUrl: 'two-factor-u2f.component.html',\n})\nexport class TwoFactorU2fComponent extends TwoFactorBaseComponent implements OnInit, OnDestroy {\n type = TwoFactorProviderType.U2f;\n name: string;\n keys: any[];\n keyIdAvailable: number = null;\n keysConfiguredCount = 0;\n u2fError: boolean;\n u2fListening: boolean;\n u2fResponse: string;\n challengePromise: Promise;\n formPromise: Promise;\n\n private u2fScript: HTMLScriptElement;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService, private ngZone: NgZone) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n this.u2fScript = window.document.createElement('script');\n this.u2fScript.src = 'scripts/u2f.js';\n this.u2fScript.async = true;\n }\n\n ngOnInit() {\n window.document.body.appendChild(this.u2fScript);\n }\n\n ngOnDestroy() {\n window.document.body.removeChild(this.u2fScript);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n this.processResponse(authResponse.response);\n }\n\n submit() {\n if (this.u2fResponse == null || this.keyIdAvailable == null) {\n // Should never happen.\n return Promise.reject();\n }\n const request = new UpdateTwoFactorU2fRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.deviceResponse = this.u2fResponse;\n request.id = this.keyIdAvailable;\n request.name = this.name;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorU2f(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n });\n }\n\n disable() {\n return super.disable(this.formPromise);\n }\n\n async remove(key: any) {\n if (this.keysConfiguredCount <= 1 || key.removePromise != null) {\n return;\n }\n const name = key.name != null ? key.name : this.i18nService.t('u2fkeyX', key.id);\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('removeU2fConfirmation'), name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return;\n }\n const request = new UpdateTwoFactorU2fDeleteRequest();\n request.id = key.id;\n request.masterPasswordHash = this.masterPasswordHash;\n try {\n key.removePromise = this.apiService.deleteTwoFactorU2f(request);\n const response = await key.removePromise;\n key.removePromise = null;\n await this.processResponse(response);\n } catch { }\n }\n\n async readKey() {\n if (this.keyIdAvailable == null) {\n return;\n }\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n try {\n this.challengePromise = this.apiService.getTwoFactorU2fChallenge(request);\n const challenge = await this.challengePromise;\n this.readDevice(challenge);\n } catch { }\n }\n\n private readDevice(u2fChallenge: ChallengeResponse) {\n // tslint:disable-next-line\n console.log('listening for key...');\n this.resetU2f(true);\n (window as any).u2f.register(u2fChallenge.appId, [{\n version: u2fChallenge.version,\n challenge: u2fChallenge.challenge,\n }], [], (data: any) => {\n this.ngZone.run(() => {\n this.u2fListening = false;\n if (data.errorCode) {\n this.u2fError = true;\n // tslint:disable-next-line\n console.log('error: ' + data.errorCode);\n return;\n }\n this.u2fResponse = JSON.stringify(data);\n });\n }, 15);\n }\n\n private resetU2f(listening = false) {\n this.u2fResponse = null;\n this.u2fError = false;\n this.u2fListening = listening;\n }\n\n private processResponse(response: TwoFactorU2fResponse) {\n this.resetU2f();\n this.keys = [];\n this.keyIdAvailable = null;\n this.name = null;\n this.keysConfiguredCount = 0;\n for (let i = 1; i <= 5; i++) {\n if (response.keys != null) {\n const key = response.keys.filter((k) => k.id === i);\n if (key.length > 0) {\n this.keysConfiguredCount++;\n this.keys.push({\n id: i, name: key[0].name,\n configured: true,\n compromised: key[0].compromised,\n removePromise: null,\n });\n continue;\n }\n }\n this.keys.push({ id: i, name: null, configured: false, compromised: false, removePromise: null });\n if (this.keyIdAvailable == null) {\n this.keyIdAvailable = i;\n }\n }\n this.enabled = response.enabled;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { UpdateTwoFactorYubioOtpRequest } from 'jslib/models/request/updateTwoFactorYubioOtpRequest';\nimport { TwoFactorYubiKeyResponse } from 'jslib/models/response/twoFactorYubiKeyResponse';\n\nimport { TwoFactorProviderType } from 'jslib/enums/twoFactorProviderType';\n\nimport { TwoFactorBaseComponent } from './two-factor-base.component';\n\n@Component({\n selector: 'app-two-factor-yubikey',\n templateUrl: 'two-factor-yubikey.component.html',\n})\nexport class TwoFactorYubiKeyComponent extends TwoFactorBaseComponent {\n type = TwoFactorProviderType.Yubikey;\n keys: any[];\n nfc = false;\n\n formPromise: Promise;\n disablePromise: Promise;\n\n constructor(apiService: ApiService, i18nService: I18nService,\n analytics: Angulartics2, toasterService: ToasterService,\n platformUtilsService: PlatformUtilsService) {\n super(apiService, i18nService, analytics, toasterService, platformUtilsService);\n }\n\n auth(authResponse: any) {\n super.auth(authResponse);\n this.processResponse(authResponse.response);\n }\n\n submit() {\n const request = new UpdateTwoFactorYubioOtpRequest();\n request.masterPasswordHash = this.masterPasswordHash;\n request.key1 = this.keys != null && this.keys.length > 0 ? this.keys[0].key : null;\n request.key2 = this.keys != null && this.keys.length > 1 ? this.keys[1].key : null;\n request.key3 = this.keys != null && this.keys.length > 2 ? this.keys[2].key : null;\n request.key4 = this.keys != null && this.keys.length > 3 ? this.keys[3].key : null;\n request.key5 = this.keys != null && this.keys.length > 4 ? this.keys[4].key : null;\n request.nfc = this.nfc;\n\n return super.enable(async () => {\n this.formPromise = this.apiService.putTwoFactorYubiKey(request);\n const response = await this.formPromise;\n await this.processResponse(response);\n this.toasterService.popAsync('success', null, this.i18nService.t('yubikeysUpdated'));\n });\n }\n\n disable() {\n return super.disable(this.disablePromise);\n }\n\n remove(key: any) {\n key.existingKey = null;\n key.key = null;\n }\n\n private processResponse(response: TwoFactorYubiKeyResponse) {\n this.enabled = response.enabled;\n this.keys = [\n { key: response.key1, existingKey: this.padRight(response.key1) },\n { key: response.key2, existingKey: this.padRight(response.key2) },\n { key: response.key3, existingKey: this.padRight(response.key3) },\n { key: response.key4, existingKey: this.padRight(response.key4) },\n { key: response.key5, existingKey: this.padRight(response.key5) },\n ];\n this.nfc = response.nfc || !response.enabled;\n }\n\n private padRight(str: string, character = '•', size = 44) {\n if (str == null || character == null || str.length >= size) {\n return str;\n }\n const max = (size - str.length) / character.length;\n for (let i = 0; i < max; i++) {\n str += character;\n }\n return str;\n }\n}\n","
\n
\n \n \n {{'licenseFileDesc' | i18n : (!organizationId ? 'bitwarden_premium_license.json' : 'bitwarden_organization_license.json')}}\n
\n \n \n
\n","
\n
\n

{{(add ? 'addStorage' : 'removeStorage') | i18n}}

\n
\n
\n \n \n
\n
\n
\n {{'total' | i18n}}: {{storageAdjustment || 0}} GB × {{storageGbPrice | currency:'$'}} = {{adjustedStorageTotal\n | currency:'$'}} /{{interval | i18n}}\n
\n \n \n \n {{(add ? 'storageAddNote' : 'storageRemoveNote') | i18n}}\n \n
\n
\n","\n

{{'contactSupportPaymentMethod' | i18n}}

\n \n {{'contactSupport' | i18n}}\n \n \n
\n
\n
\n

{{(currentType != null ? 'changePaymentMethod' : 'addPaymentMethod') | i18n}}

\n \n \n \n
\n
\n","export enum PlanType {\n Free = 0,\n FamiliesAnnually = 1,\n TeamsMonthly = 2,\n TeamsAnnually = 3,\n EnterpriseMonthly = 4,\n EnterpriseAnnually = 5,\n Custom = 6,\n}\n","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\n/**\n * A pipe that sanitizes HTML and highlights numbers and special characters (in different colors each).\n */\n@Pipe({ name: 'colorPassword' })\nexport class ColorPasswordPipe implements PipeTransform {\n transform(password: string) {\n let colorizedPassword = '';\n for (let i = 0; i < password.length; i++) {\n let character = password[i];\n let isSpecial = false;\n // Sanitize HTML first.\n switch (character) {\n case '&':\n character = '&';\n isSpecial = true;\n break;\n case '<':\n character = '<';\n isSpecial = true;\n break;\n case '>':\n character = '>';\n isSpecial = true;\n break;\n default:\n break;\n }\n let type = 'letter';\n if (isSpecial || character.match(/[^\\w ]/)) {\n type = 'special';\n } else if (character.match(/\\d/)) {\n type = 'number';\n }\n colorizedPassword += '' + character + '';\n }\n return colorizedPassword;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport {\n PasswordGeneratorHistoryComponent as BasePasswordGeneratorHistoryComponent,\n} from 'jslib/angular/components/password-generator-history.component';\n\n@Component({\n selector: 'app-password-generator-history',\n templateUrl: 'password-generator-history.component.html',\n})\nexport class PasswordGeneratorHistoryComponent extends BasePasswordGeneratorHistoryComponent {\n constructor(passwordGenerationService: PasswordGenerationService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService) {\n super(passwordGenerationService, platformUtilsService, i18nService, window);\n }\n}\n","import { AttachmentResponse } from '../response/attachmentResponse';\r\n\r\nexport class AttachmentData {\r\n id: string;\r\n url: string;\r\n fileName: string;\r\n key: string;\r\n size: number;\r\n sizeName: string;\r\n\r\n constructor(response?: AttachmentResponse) {\r\n if (response == null) {\r\n return;\r\n }\r\n this.id = response.id;\r\n this.url = response.url;\r\n this.fileName = response.fileName;\r\n this.key = response.key;\r\n this.size = response.size;\r\n this.sizeName = response.sizeName;\r\n }\r\n}\r\n","import { CardApi } from '../api/cardApi';\n\nexport class CardData {\n cardholderName: string;\n brand: string;\n number: string;\n expMonth: string;\n expYear: string;\n code: string;\n\n constructor(data?: CardApi) {\n if (data == null) {\n return;\n }\n\n this.cardholderName = data.cardholderName;\n this.brand = data.brand;\n this.number = data.number;\n this.expMonth = data.expMonth;\n this.expYear = data.expYear;\n this.code = data.code;\n }\n}\n","import { FieldType } from '../../enums/fieldType';\n\nimport { FieldApi } from '../api/fieldApi';\n\nexport class FieldData {\n type: FieldType;\n name: string;\n value: string;\n\n constructor(response?: FieldApi) {\n if (response == null) {\n return;\n }\n this.type = response.type;\n this.name = response.name;\n this.value = response.value;\n }\n}\n","import { IdentityApi } from '../api/identityApi';\n\nexport class IdentityData {\n title: string;\n firstName: string;\n middleName: string;\n lastName: string;\n address1: string;\n address2: string;\n address3: string;\n city: string;\n state: string;\n postalCode: string;\n country: string;\n company: string;\n email: string;\n phone: string;\n ssn: string;\n username: string;\n passportNumber: string;\n licenseNumber: string;\n\n constructor(data?: IdentityApi) {\n if (data == null) {\n return;\n }\n\n this.title = data.title;\n this.firstName = data.firstName;\n this.middleName = data.middleName;\n this.lastName = data.lastName;\n this.address1 = data.address1;\n this.address2 = data.address2;\n this.address3 = data.address3;\n this.city = data.city;\n this.state = data.state;\n this.postalCode = data.postalCode;\n this.country = data.country;\n this.company = data.company;\n this.email = data.email;\n this.phone = data.phone;\n this.ssn = data.ssn;\n this.username = data.username;\n this.passportNumber = data.passportNumber;\n this.licenseNumber = data.licenseNumber;\n }\n}\n","import { LoginApi } from '../api/loginApi';\r\n\r\nimport { LoginUriData } from './loginUriData';\r\n\r\nexport class LoginData {\r\n uris: LoginUriData[];\r\n username: string;\r\n password: string;\r\n passwordRevisionDate: string;\r\n totp: string;\r\n\r\n constructor(data?: LoginApi) {\r\n if (data == null) {\r\n return;\r\n }\r\n\r\n this.username = data.username;\r\n this.password = data.password;\r\n this.passwordRevisionDate = data.passwordRevisionDate;\r\n this.totp = data.totp;\r\n\r\n if (data.uris) {\r\n this.uris = [];\r\n data.uris.forEach((u) => {\r\n this.uris.push(new LoginUriData(u));\r\n });\r\n }\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\n\nimport { LoginUriApi } from '../api/loginUriApi';\n\nexport class LoginUriData {\n uri: string;\n match: UriMatchType = null;\n\n constructor(data?: LoginUriApi) {\n if (data == null) {\n return;\n }\n this.uri = data.uri;\n this.match = data.match;\n }\n}\n","import { PasswordHistoryResponse } from '../response/passwordHistoryResponse';\r\n\r\nexport class PasswordHistoryData {\r\n password: string;\r\n lastUsedDate: string;\r\n\r\n constructor(response?: PasswordHistoryResponse) {\r\n if (response == null) {\r\n return;\r\n }\r\n\r\n this.password = response.password;\r\n this.lastUsedDate = response.lastUsedDate;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\n\nimport { SecureNoteApi } from '../api/secureNoteApi';\n\nexport class SecureNoteData {\n type: SecureNoteType;\n\n constructor(data?: SecureNoteApi) {\n if (data == null) {\n return;\n }\n\n this.type = data.type;\n }\n}\n","import { AttachmentData } from '../data/attachmentData';\r\n\r\nimport { AttachmentView } from '../view/attachmentView';\r\n\r\nimport { CipherString } from './cipherString';\r\nimport Domain from './domainBase';\r\nimport { SymmetricCryptoKey } from './symmetricCryptoKey';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class Attachment extends Domain {\r\n id: string;\r\n url: string;\r\n size: number;\r\n sizeName: string;\r\n key: CipherString;\r\n fileName: CipherString;\r\n\r\n constructor(obj?: AttachmentData, alreadyEncrypted: boolean = false) {\r\n super();\r\n if (obj == null) {\r\n return;\r\n }\r\n\r\n this.size = obj.size;\r\n this.buildDomainModel(this, obj, {\r\n id: null,\r\n url: null,\r\n sizeName: null,\r\n fileName: null,\r\n key: null,\r\n }, alreadyEncrypted, ['id', 'url', 'sizeName']);\r\n }\r\n\r\n async decrypt(orgId: string): Promise {\r\n const view = await this.decryptObj(new AttachmentView(this), {\r\n fileName: null,\r\n }, orgId);\r\n\r\n if (this.key != null) {\r\n let cryptoService: CryptoService;\r\n const containerService = (Utils.global as any).bitwardenContainerService;\r\n if (containerService) {\r\n cryptoService = containerService.getCryptoService();\r\n } else {\r\n throw new Error('global bitwardenContainerService not initialized.');\r\n }\r\n\r\n try {\r\n const orgKey = await cryptoService.getOrgKey(orgId);\r\n const decValue = await cryptoService.decryptToBytes(this.key, orgKey);\r\n view.key = new SymmetricCryptoKey(decValue);\r\n } catch (e) {\r\n // TODO: error?\r\n }\r\n }\r\n\r\n return view;\r\n }\r\n\r\n toAttachmentData(): AttachmentData {\r\n const a = new AttachmentData();\r\n this.buildDataModel(this, a, {\r\n id: null,\r\n url: null,\r\n sizeName: null,\r\n fileName: null,\r\n key: null,\r\n }, ['id', 'url', 'sizeName']);\r\n return a;\r\n }\r\n}\r\n","import { View } from './view';\r\n\r\nimport { Attachment } from '../domain/attachment';\r\nimport { SymmetricCryptoKey } from '../domain/symmetricCryptoKey';\r\n\r\nexport class AttachmentView implements View {\r\n id: string;\r\n url: string;\r\n size: number;\r\n sizeName: string;\r\n fileName: string;\r\n key: SymmetricCryptoKey;\r\n\r\n constructor(a?: Attachment) {\r\n if (!a) {\r\n return;\r\n }\r\n\r\n this.id = a.id;\r\n this.url = a.url;\r\n this.size = a.size;\r\n this.sizeName = a.sizeName;\r\n }\r\n}\r\n","import { EncryptionType } from '../../enums/encryptionType';\n\nimport { Utils } from '../../misc/utils';\n\nexport class SymmetricCryptoKey {\n key: ArrayBuffer;\n encKey?: ArrayBuffer;\n macKey?: ArrayBuffer;\n encType: EncryptionType;\n\n keyB64: string;\n encKeyB64: string;\n macKeyB64: string;\n\n meta: any;\n\n constructor(key: ArrayBuffer, encType?: EncryptionType) {\n if (key == null) {\n throw new Error('Must provide key');\n }\n\n if (encType == null) {\n if (key.byteLength === 32) {\n encType = EncryptionType.AesCbc256_B64;\n } else if (key.byteLength === 64) {\n encType = EncryptionType.AesCbc256_HmacSha256_B64;\n } else {\n throw new Error('Unable to determine encType.');\n }\n }\n\n this.key = key;\n this.encType = encType;\n\n if (encType === EncryptionType.AesCbc256_B64 && key.byteLength === 32) {\n this.encKey = key;\n this.macKey = null;\n } else if (encType === EncryptionType.AesCbc128_HmacSha256_B64 && key.byteLength === 32) {\n this.encKey = key.slice(0, 16);\n this.macKey = key.slice(16, 32);\n } else if (encType === EncryptionType.AesCbc256_HmacSha256_B64 && key.byteLength === 64) {\n this.encKey = key.slice(0, 32);\n this.macKey = key.slice(32, 64);\n } else {\n throw new Error('Unsupported encType/key length.');\n }\n\n if (this.key != null) {\n this.keyB64 = Utils.fromBufferToB64(this.key);\n }\n if (this.encKey != null) {\n this.encKeyB64 = Utils.fromBufferToB64(this.encKey);\n }\n if (this.macKey != null) {\n this.macKeyB64 = Utils.fromBufferToB64(this.macKey);\n }\n }\n}\n","import { CardData } from '../data/cardData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { CardView } from '../view/cardView';\n\nexport class Card extends Domain {\n cardholderName: CipherString;\n brand: CipherString;\n number: CipherString;\n expMonth: CipherString;\n expYear: CipherString;\n code: CipherString;\n\n constructor(obj?: CardData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new CardView(this), {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n }, orgId);\n }\n\n toCardData(): CardData {\n const c = new CardData();\n this.buildDataModel(this, c, {\n cardholderName: null,\n brand: null,\n number: null,\n expMonth: null,\n expYear: null,\n code: null,\n });\n return c;\n }\n}\n","import { FieldType } from '../../enums/fieldType';\n\nimport { FieldData } from '../data/fieldData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { FieldView } from '../view/fieldView';\n\nexport class Field extends Domain {\n name: CipherString;\n value: CipherString;\n type: FieldType;\n\n constructor(obj?: FieldData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.type = obj.type;\n this.buildDomainModel(this, obj, {\n name: null,\n value: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new FieldView(this), {\n name: null,\n value: null,\n }, orgId);\n }\n\n toFieldData(): FieldData {\n const f = new FieldData();\n this.buildDataModel(this, f, {\n name: null,\n value: null,\n type: null,\n }, ['type']);\n return f;\n }\n}\n","import { IdentityData } from '../data/identityData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { IdentityView } from '../view/identityView';\n\nexport class Identity extends Domain {\n title: CipherString;\n firstName: CipherString;\n middleName: CipherString;\n lastName: CipherString;\n address1: CipherString;\n address2: CipherString;\n address3: CipherString;\n city: CipherString;\n state: CipherString;\n postalCode: CipherString;\n country: CipherString;\n company: CipherString;\n email: CipherString;\n phone: CipherString;\n ssn: CipherString;\n username: CipherString;\n passportNumber: CipherString;\n licenseNumber: CipherString;\n\n constructor(obj?: IdentityData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n title: null,\n firstName: null,\n middleName: null,\n lastName: null,\n address1: null,\n address2: null,\n address3: null,\n city: null,\n state: null,\n postalCode: null,\n country: null,\n company: null,\n email: null,\n phone: null,\n ssn: null,\n username: null,\n passportNumber: null,\n licenseNumber: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new IdentityView(this), {\n title: null,\n firstName: null,\n middleName: null,\n lastName: null,\n address1: null,\n address2: null,\n address3: null,\n city: null,\n state: null,\n postalCode: null,\n country: null,\n company: null,\n email: null,\n phone: null,\n ssn: null,\n username: null,\n passportNumber: null,\n licenseNumber: null,\n }, orgId);\n }\n\n toIdentityData(): IdentityData {\n const i = new IdentityData();\n this.buildDataModel(this, i, {\n title: null,\n firstName: null,\n middleName: null,\n lastName: null,\n address1: null,\n address2: null,\n address3: null,\n city: null,\n state: null,\n postalCode: null,\n country: null,\n company: null,\n email: null,\n phone: null,\n ssn: null,\n username: null,\n passportNumber: null,\n licenseNumber: null,\n });\n return i;\n }\n}\n","import { LoginUri } from './loginUri';\n\nimport { LoginData } from '../data/loginData';\n\nimport { LoginView } from '../view/loginView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Login extends Domain {\n uris: LoginUri[];\n username: CipherString;\n password: CipherString;\n passwordRevisionDate?: Date;\n totp: CipherString;\n\n constructor(obj?: LoginData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.passwordRevisionDate = obj.passwordRevisionDate != null ? new Date(obj.passwordRevisionDate) : null;\n this.buildDomainModel(this, obj, {\n username: null,\n password: null,\n totp: null,\n }, alreadyEncrypted, []);\n\n if (obj.uris) {\n this.uris = [];\n obj.uris.forEach((u) => {\n this.uris.push(new LoginUri(u, alreadyEncrypted));\n });\n }\n }\n\n async decrypt(orgId: string): Promise {\n const view = await this.decryptObj(new LoginView(this), {\n username: null,\n password: null,\n totp: null,\n }, orgId);\n\n if (this.uris != null) {\n view.uris = [];\n for (let i = 0; i < this.uris.length; i++) {\n const uri = await this.uris[i].decrypt(orgId);\n view.uris.push(uri);\n }\n }\n\n return view;\n }\n\n toLoginData(): LoginData {\n const l = new LoginData();\n l.passwordRevisionDate = this.passwordRevisionDate != null ? this.passwordRevisionDate.toISOString() : null;\n this.buildDataModel(this, l, {\n username: null,\n password: null,\n totp: null,\n });\n\n if (this.uris != null && this.uris.length > 0) {\n l.uris = [];\n this.uris.forEach((u) => {\n l.uris.push(u.toLoginUriData());\n });\n }\n\n return l;\n }\n}\n","import { UriMatchType } from '../../enums/uriMatchType';\n\nimport { LoginUriData } from '../data/loginUriData';\n\nimport { LoginUriView } from '../view/loginUriView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class LoginUri extends Domain {\n uri: CipherString;\n match: UriMatchType;\n\n constructor(obj?: LoginUriData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.match = obj.match;\n this.buildDomainModel(this, obj, {\n uri: null,\n }, alreadyEncrypted, []);\n }\n\n decrypt(orgId: string): Promise {\n return this.decryptObj(new LoginUriView(this), {\n uri: null,\n }, orgId);\n }\n\n toLoginUriData(): LoginUriData {\n const u = new LoginUriData();\n this.buildDataModel(this, u, {\n uri: null,\n }, ['match']);\n return u;\n }\n}\n","import { PasswordHistoryData } from '../data/passwordHistoryData';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nimport { PasswordHistoryView } from '../view/passwordHistoryView';\n\nexport class Password extends Domain {\n password: CipherString;\n lastUsedDate: Date;\n\n constructor(obj?: PasswordHistoryData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n password: null,\n }, alreadyEncrypted);\n this.lastUsedDate = new Date(obj.lastUsedDate);\n }\n\n async decrypt(orgId: string): Promise {\n const view = await this.decryptObj(new PasswordHistoryView(this), {\n password: null,\n }, orgId);\n return view;\n }\n\n toPasswordHistoryData(): PasswordHistoryData {\n const ph = new PasswordHistoryData();\n ph.lastUsedDate = this.lastUsedDate.toISOString();\n this.buildDataModel(this, ph, {\n password: null,\n });\n return ph;\n }\n}\n","import { View } from './view';\r\n\r\nimport { Password } from '../domain/password';\r\n\r\nexport class PasswordHistoryView implements View {\r\n password: string;\r\n lastUsedDate: Date;\r\n\r\n constructor(ph?: Password) {\r\n if (!ph) {\r\n return;\r\n }\r\n\r\n this.lastUsedDate = ph.lastUsedDate;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\n\nimport { SecureNoteData } from '../data/secureNoteData';\n\nimport Domain from './domainBase';\n\nimport { SecureNoteView } from '../view/secureNoteView';\n\nexport class SecureNote extends Domain {\n type: SecureNoteType;\n\n constructor(obj?: SecureNoteData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.type = obj.type;\n }\n\n decrypt(orgId: string): Promise {\n return Promise.resolve(new SecureNoteView(this));\n }\n\n toSecureNoteData(): SecureNoteData {\n const n = new SecureNoteData();\n n.type = this.type;\n return n;\n }\n}\n","import { CipherRequest } from './cipherRequest';\r\n\r\nimport { Cipher } from '../domain/cipher';\r\n\r\nexport class CipherCreateRequest {\r\n cipher: CipherRequest;\r\n collectionIds: string[];\r\n\r\n constructor(cipher: Cipher) {\r\n this.cipher = new CipherRequest(cipher);\r\n this.collectionIds = cipher.collectionIds;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\n\nimport { AttachmentView } from 'jslib/models/view/attachmentView';\n\nimport { AttachmentsComponent as BaseAttachmentsComponent } from '../../vault/attachments.component';\n\n@Component({\n selector: 'app-org-vault-attachments',\n templateUrl: '../../vault/attachments.component.html',\n})\nexport class AttachmentsComponent extends BaseAttachmentsComponent {\n organization: Organization;\n\n constructor(cipherService: CipherService, i18nService: I18nService,\n cryptoService: CryptoService, userService: UserService,\n platformUtilsService: PlatformUtilsService, private apiService: ApiService) {\n super(cipherService, i18nService, cryptoService, userService, platformUtilsService);\n }\n\n protected async reupload(attachment: AttachmentView) {\n if (this.organization.isAdmin && this.showFixOldAttachments(attachment)) {\n await super.reuploadCipherAttachment(attachment, true);\n }\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected saveCipherAttachment(file: File) {\n return this.cipherService.saveAttachmentWithServer(this.cipherDomain, file, this.organization.isAdmin);\n }\n\n protected deleteCipherAttachment(attachmentId: string) {\n if (!this.organization.isAdmin) {\n return super.deleteCipherAttachment(attachmentId);\n }\n return this.apiService.deleteCipherAttachmentAdmin(this.cipherId, attachmentId);\n }\n\n protected showFixOldAttachments(attachment: AttachmentView) {\n return attachment.key == null && this.organization.isAdmin;\n }\n}\n","import { Component } from '@angular/core';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CipherService } from 'jslib/abstractions/cipher.service';\nimport { CollectionService } from 'jslib/abstractions/collection.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { CipherData } from 'jslib/models/data/cipherData';\nimport { Cipher } from 'jslib/models/domain/cipher';\nimport { Organization } from 'jslib/models/domain/organization';\nimport { CipherCollectionsRequest } from 'jslib/models/request/cipherCollectionsRequest';\n\nimport { CollectionsComponent as BaseCollectionsComponent } from '../../vault/collections.component';\n\n@Component({\n selector: 'app-org-vault-collections',\n templateUrl: '../../vault/collections.component.html',\n})\nexport class CollectionsComponent extends BaseCollectionsComponent {\n organization: Organization;\n\n constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,\n i18nService: I18nService, cipherService: CipherService,\n private apiService: ApiService) {\n super(collectionService, platformUtilsService, i18nService, cipherService);\n }\n\n protected async loadCipher() {\n if (!this.organization.isAdmin) {\n return await super.loadCipher();\n }\n const response = await this.apiService.getCipherAdmin(this.cipherId);\n return new Cipher(new CipherData(response));\n }\n\n protected loadCipherCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCipherCollections();\n }\n return this.collectionIds;\n }\n\n protected loadCollections() {\n if (!this.organization.isAdmin) {\n return super.loadCollections();\n }\n return Promise.resolve(this.collections);\n }\n\n protected saveCollections() {\n if (this.organization.isAdmin) {\n const request = new CipherCollectionsRequest(this.cipherDomain.collectionIds);\n return this.apiService.putCipherCollectionsAdmin(this.cipherId, request);\n } else {\n return super.saveCollections();\n }\n }\n}\n","export class CipherCollectionsRequest {\n collectionIds: string[];\n\n constructor(collectionIds: string[]) {\n this.collectionIds = collectionIds == null ? [] : collectionIds;\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { CipherString } from 'jslib/models/domain/cipherString';\nimport { SymmetricCryptoKey } from 'jslib/models/domain/symmetricCryptoKey';\nimport { CollectionRequest } from 'jslib/models/request/collectionRequest';\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-collection-add-edit',\n templateUrl: 'collection-add-edit.component.html',\n})\nexport class CollectionAddEditComponent implements OnInit {\n @Input() collectionId: string;\n @Input() organizationId: string;\n @Output() onSavedCollection = new EventEmitter();\n @Output() onDeletedCollection = new EventEmitter();\n\n loading = true;\n editMode: boolean = false;\n accessGroups: boolean = false;\n title: string;\n name: string;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n deletePromise: Promise;\n\n private orgKey: SymmetricCryptoKey;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private platformUtilsService: PlatformUtilsService, private cryptoService: CryptoService,\n private userService: UserService) { }\n\n async ngOnInit() {\n const organization = await this.userService.getOrganization(this.organizationId);\n this.accessGroups = organization.useGroups;\n this.editMode = this.loading = this.collectionId != null;\n if (this.accessGroups) {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n this.groups = groupsResponse.data.map((r) => r).sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n this.orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n\n if (this.editMode) {\n this.editMode = true;\n this.title = this.i18nService.t('editCollection');\n try {\n const collection = await this.apiService.getCollectionDetails(this.organizationId, this.collectionId);\n this.name = await this.cryptoService.decryptToUtf8(new CipherString(collection.name), this.orgKey);\n if (collection.groups != null && this.groups.length > 0) {\n collection.groups.forEach((s) => {\n const group = this.groups.filter((g) => !g.accessAll && g.id === s.id);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n (group[0] as any).readOnly = s.readOnly;\n }\n });\n }\n } catch { }\n } else {\n this.title = this.i18nService.t('addCollection');\n }\n\n this.groups.forEach((g) => {\n if (g.accessAll) {\n (g as any).checked = true;\n }\n });\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n if (g.accessAll) {\n return;\n }\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n if (this.orgKey == null) {\n throw new Error('No encryption key for this organization.');\n }\n\n const request = new CollectionRequest();\n request.name = (await this.cryptoService.encrypt(this.name, this.orgKey)).encryptedString;\n request.groups = this.groups.filter((g) => (g as any).checked && !g.accessAll)\n .map((g) => new SelectionReadOnlyRequest(g.id, !!(g as any).readOnly));\n\n try {\n if (this.editMode) {\n this.formPromise = this.apiService.putCollection(this.organizationId, this.collectionId, request);\n } else {\n this.formPromise = this.apiService.postCollection(this.organizationId, request);\n }\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Collection' : 'Created Collection' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t(this.editMode ? 'editedCollectionId' : 'createdCollectionId', this.name));\n this.onSavedCollection.emit();\n } catch { }\n }\n\n async delete() {\n if (!this.editMode) {\n return;\n }\n\n const confirmed = await this.platformUtilsService.showDialog(\n this.i18nService.t('deleteCollectionConfirmation'), this.name,\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\n if (!confirmed) {\n return false;\n }\n\n try {\n this.deletePromise = this.apiService.deleteCollection(this.organizationId, this.collectionId);\n await this.deletePromise;\n this.analytics.eventTrack.next({ action: 'Deleted Collection' });\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedCollectionId', this.name));\n this.onDeletedCollection.emit();\n } catch { }\n }\n}\n","import { Collection } from '../domain/collection';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class CollectionRequest {\n name: string;\n groups: SelectionReadOnlyRequest[] = [];\n\n constructor(collection?: Collection) {\n if (collection == null) {\n return;\n }\n this.name = collection.name ? collection.name.encryptedString : null;\n }\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { GroupRequest } from 'jslib/models/request/groupRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\n@Component({\r\n selector: 'app-group-add-edit',\r\n templateUrl: 'group-add-edit.component.html',\r\n})\r\nexport class GroupAddEditComponent implements OnInit {\r\n @Input() groupId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedGroup = new EventEmitter();\r\n @Output() onDeletedGroup = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n name: string;\r\n externalId: string;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.groupId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editGroup');\r\n try {\r\n const group = await this.apiService.getGroupDetails(this.organizationId, this.groupId);\r\n this.access = group.accessAll ? 'all' : 'selected';\r\n this.name = group.name;\r\n this.externalId = group.externalId;\r\n if (group.collections != null && this.collections != null) {\r\n group.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('addGroup');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n const request = new GroupRequest();\r\n request.name = this.name;\r\n request.externalId = this.externalId;\r\n request.accessAll = this.access === 'all';\r\n if (!request.accessAll) {\r\n request.collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n this.formPromise = this.apiService.putGroup(this.organizationId, this.groupId, request);\r\n } else {\r\n this.formPromise = this.apiService.postGroup(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited Group' : 'Created Group' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedGroupId' : 'createdGroupId', this.name));\r\n this.onSavedGroup.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteGroupConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteGroup(this.organizationId, this.groupId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted Group' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('deletedGroupId', this.name));\r\n this.onDeletedGroup.emit();\r\n } catch { }\r\n }\r\n}\r\n","export class OrganizationUserConfirmRequest {\n key: string;\n}\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { ToasterService } from 'angular2-toaster';\r\nimport { Angulartics2 } from 'angulartics2';\r\n\r\nimport { ApiService } from 'jslib/abstractions/api.service';\r\nimport { CollectionService } from 'jslib/abstractions/collection.service';\r\nimport { I18nService } from 'jslib/abstractions/i18n.service';\r\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\r\n\r\nimport { CollectionData } from 'jslib/models/data/collectionData';\r\nimport { Collection } from 'jslib/models/domain/collection';\r\nimport { OrganizationUserInviteRequest } from 'jslib/models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateRequest } from 'jslib/models/request/organizationUserUpdateRequest';\r\nimport { SelectionReadOnlyRequest } from 'jslib/models/request/selectionReadOnlyRequest';\r\nimport { CollectionDetailsResponse } from 'jslib/models/response/collectionResponse';\r\nimport { CollectionView } from 'jslib/models/view/collectionView';\r\n\r\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\r\n\r\n@Component({\r\n selector: 'app-user-add-edit',\r\n templateUrl: 'user-add-edit.component.html',\r\n})\r\nexport class UserAddEditComponent implements OnInit {\r\n @Input() name: string;\r\n @Input() organizationUserId: string;\r\n @Input() organizationId: string;\r\n @Output() onSavedUser = new EventEmitter();\r\n @Output() onDeletedUser = new EventEmitter();\r\n\r\n loading = true;\r\n editMode: boolean = false;\r\n title: string;\r\n emails: string;\r\n type: OrganizationUserType = OrganizationUserType.User;\r\n access: 'all' | 'selected' = 'selected';\r\n collections: CollectionView[] = [];\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n organizationUserType = OrganizationUserType;\r\n\r\n constructor(private apiService: ApiService, private i18nService: I18nService,\r\n private analytics: Angulartics2, private toasterService: ToasterService,\r\n private collectionService: CollectionService, private platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.loading = this.organizationUserId != null;\r\n await this.loadCollections();\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editUser');\r\n try {\r\n const user = await this.apiService.getOrganizationUser(this.organizationId, this.organizationUserId);\r\n this.access = user.accessAll ? 'all' : 'selected';\r\n this.type = user.type;\r\n if (user.collections != null && this.collections != null) {\r\n user.collections.forEach((s) => {\r\n const collection = this.collections.filter((c) => c.id === s.id);\r\n if (collection != null && collection.length > 0) {\r\n (collection[0] as any).checked = true;\r\n collection[0].readOnly = s.readOnly;\r\n }\r\n });\r\n }\r\n } catch { }\r\n } else {\r\n this.title = this.i18nService.t('inviteUser');\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n async loadCollections() {\r\n const response = await this.apiService.getCollections(this.organizationId);\r\n const collections = response.data.map((r) =>\r\n new Collection(new CollectionData(r as CollectionDetailsResponse)));\r\n this.collections = await this.collectionService.decryptMany(collections);\r\n }\r\n\r\n check(c: CollectionView, select?: boolean) {\r\n (c as any).checked = select == null ? !(c as any).checked : select;\r\n if (!(c as any).checked) {\r\n c.readOnly = false;\r\n }\r\n }\r\n\r\n selectAll(select: boolean) {\r\n this.collections.forEach((c) => this.check(c, select));\r\n }\r\n\r\n async submit() {\r\n let collections: SelectionReadOnlyRequest[] = null;\r\n if (this.access !== 'all') {\r\n collections = this.collections.filter((c) => (c as any).checked)\r\n .map((c) => new SelectionReadOnlyRequest(c.id, !!c.readOnly));\r\n }\r\n\r\n try {\r\n if (this.editMode) {\r\n const request = new OrganizationUserUpdateRequest();\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.putOrganizationUser(this.organizationId, this.organizationUserId,\r\n request);\r\n } else {\r\n const request = new OrganizationUserInviteRequest();\r\n request.emails = this.emails.trim().split(/\\s*,\\s*/);\r\n request.accessAll = this.access === 'all';\r\n request.type = this.type;\r\n request.collections = collections;\r\n this.formPromise = this.apiService.postOrganizationUserInvite(this.organizationId, request);\r\n }\r\n await this.formPromise;\r\n this.analytics.eventTrack.next({ action: this.editMode ? 'Edited User' : 'Invited User' });\r\n this.toasterService.popAsync('success', null,\r\n this.i18nService.t(this.editMode ? 'editedUserId' : 'invitedUsers', this.name));\r\n this.onSavedUser.emit();\r\n } catch { }\r\n }\r\n\r\n async delete() {\r\n if (!this.editMode) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('removeUserConfirmation'), this.name,\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.apiService.deleteOrganizationUser(this.organizationId, this.organizationUserId);\r\n await this.deletePromise;\r\n this.analytics.eventTrack.next({ action: 'Deleted User' });\r\n this.toasterService.popAsync('success', null, this.i18nService.t('removedUserId', this.name));\r\n this.onDeletedUser.emit();\r\n } catch { }\r\n }\r\n}\r\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ConstantsService } from 'jslib/services/constants.service';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\n\nimport { OrganizationUserConfirmRequest } from 'jslib/models/request/organizationUserConfirmRequest';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-confirm',\n templateUrl: 'user-confirm.component.html',\n})\nexport class UserConfirmComponent implements OnInit {\n @Input() name: string;\n @Input() userId: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onConfirmedUser = new EventEmitter();\n\n dontAskAgain = false;\n loading = true;\n fingerprint: string;\n formPromise: Promise;\n\n private publicKey: Uint8Array = null;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private storageService: StorageService) { }\n\n async ngOnInit() {\n try {\n const publicKeyResponse = await this.apiService.getUserPublicKey(this.userId);\n if (publicKeyResponse != null) {\n this.publicKey = Utils.fromB64ToArray(publicKeyResponse.publicKey);\n const fingerprint = await this.cryptoService.getFingerprint(this.userId, this.publicKey.buffer);\n if (fingerprint != null) {\n this.fingerprint = fingerprint.join('-');\n }\n }\n } catch { }\n this.loading = false;\n }\n\n async submit() {\n if (this.loading) {\n return;\n }\n\n if (this.dontAskAgain) {\n await this.storageService.save(ConstantsService.autoConfirmFingerprints, true);\n }\n\n try {\n this.formPromise = this.doConfirmation();\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Confirmed User' });\n this.toasterService.popAsync('success', null, this.i18nService.t('hasBeenConfirmed', this.name));\n this.onConfirmedUser.emit();\n } catch { }\n }\n\n private async doConfirmation() {\n const orgKey = await this.cryptoService.getOrgKey(this.organizationId);\n const key = await this.cryptoService.rsaEncrypt(orgKey.key, this.publicKey.buffer);\n const request = new OrganizationUserConfirmRequest();\n request.key = key.encryptedString;\n await this.apiService.postOrganizationUserConfirm(this.organizationId, this.organizationUserId, request);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { OrganizationUserUpdateGroupsRequest } from 'jslib/models/request/organizationUserUpdateGroupsRequest';\nimport { GroupResponse } from 'jslib/models/response/groupResponse';\n\nimport { Utils } from 'jslib/misc/utils';\n\n@Component({\n selector: 'app-user-groups',\n templateUrl: 'user-groups.component.html',\n})\nexport class UserGroupsComponent implements OnInit {\n @Input() name: string;\n @Input() organizationUserId: string;\n @Input() organizationId: string;\n @Output() onSavedUser = new EventEmitter();\n\n loading = true;\n groups: GroupResponse[] = [];\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async ngOnInit() {\n const groupsResponse = await this.apiService.getGroups(this.organizationId);\n const groups = groupsResponse.data.map((r) => r);\n groups.sort(Utils.getSortFunction(this.i18nService, 'name'));\n this.groups = groups;\n\n try {\n const userGroups = await this.apiService.getOrganizationUserGroups(\n this.organizationId, this.organizationUserId);\n if (userGroups != null && this.groups != null) {\n userGroups.forEach((ug) => {\n const group = this.groups.filter((g) => g.id === ug);\n if (group != null && group.length > 0) {\n (group[0] as any).checked = true;\n }\n });\n }\n } catch { }\n\n this.loading = false;\n }\n\n check(g: GroupResponse, select?: boolean) {\n (g as any).checked = select == null ? !(g as any).checked : select;\n if (!(g as any).checked) {\n (g as any).readOnly = false;\n }\n }\n\n selectAll(select: boolean) {\n this.groups.forEach((g) => this.check(g, select));\n }\n\n async submit() {\n const request = new OrganizationUserUpdateGroupsRequest();\n request.groupIds = this.groups.filter((g) => (g as any).checked).map((g) => g.id);\n\n try {\n this.formPromise = this.apiService.putOrganizationUserGroups(this.organizationId, this.organizationUserId,\n request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Edited User Groups' });\n this.toasterService.popAsync('success', null, this.i18nService.t('editedGroupsForUser', this.name));\n this.onSavedUser.emit();\n } catch { }\n }\n}\n","import { Component } from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { PasswordVerificationRequest } from 'jslib/models/request/passwordVerificationRequest';\n\n@Component({\n selector: 'app-delete-organization',\n templateUrl: 'delete-organization.component.html',\n})\nexport class DeleteOrganizationComponent {\n organizationId: string;\n\n masterPassword: string;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService,\n private cryptoService: CryptoService, private router: Router) { }\n\n async submit() {\n if (this.masterPassword == null || this.masterPassword === '') {\n this.toasterService.popAsync('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('masterPassRequired'));\n return;\n }\n\n const request = new PasswordVerificationRequest();\n request.masterPasswordHash = await this.cryptoService.hashPassword(this.masterPassword, null);\n try {\n this.formPromise = this.apiService.deleteOrganization(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: 'Deleted Organization' });\n this.toasterService.popAsync('success', this.i18nService.t('organizationDeleted'),\n this.i18nService.t('organizationDeletedDesc'));\n this.router.navigate(['/']);\n } catch { }\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { ToasterService } from 'angular2-toaster';\nimport { Angulartics2 } from 'angulartics2';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\n\nimport { SeatRequest } from 'jslib/models/request/seatRequest';\n\n@Component({\n selector: 'app-adjust-seats',\n templateUrl: 'adjust-seats.component.html',\n})\nexport class AdjustSeatsComponent {\n @Input() seatPrice = 0;\n @Input() add = true;\n @Input() organizationId: string;\n @Input() interval = 'year';\n @Output() onAdjusted = new EventEmitter();\n @Output() onCanceled = new EventEmitter();\n\n seatAdjustment = 0;\n formPromise: Promise;\n\n constructor(private apiService: ApiService, private i18nService: I18nService,\n private analytics: Angulartics2, private toasterService: ToasterService) { }\n\n async submit() {\n try {\n const request = new SeatRequest();\n request.seatAdjustment = this.seatAdjustment;\n if (!this.add) {\n request.seatAdjustment *= -1;\n }\n\n this.formPromise = this.apiService.postOrganizationSeat(this.organizationId, request);\n await this.formPromise;\n this.analytics.eventTrack.next({ action: this.add ? 'Added Seats' : 'Removed Seats' });\n this.toasterService.popAsync('success', null,\n this.i18nService.t('adjustedSeats', request.seatAdjustment.toString()));\n this.onAdjusted.emit(this.seatAdjustment);\n } catch { }\n }\n\n cancel() {\n this.onCanceled.emit();\n }\n\n get adjustedSeatTotal(): number {\n return this.seatAdjustment * this.seatPrice;\n }\n}\n","import {\r\n Directive,\r\n ElementRef,\r\n HostListener,\r\n OnInit,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appBoxRow]',\r\n})\r\nexport class BoxRowDirective implements OnInit {\r\n el: HTMLElement = null;\r\n formEls: Element[];\r\n\r\n constructor(private elRef: ElementRef) {\r\n this.el = elRef.nativeElement;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formEls = Array.from(this.el.querySelectorAll('input:not([type=\"hidden\"]), select, textarea'));\r\n this.formEls.forEach((formEl) => {\r\n formEl.addEventListener('focus', (event: Event) => {\r\n this.el.classList.add('active');\r\n }, false);\r\n\r\n formEl.addEventListener('blur', (event: Event) => {\r\n this.el.classList.remove('active');\r\n }, false);\r\n });\r\n }\r\n\r\n @HostListener('click', ['$event']) onClick(event: Event) {\r\n const target = event.target as HTMLElement;\r\n if (target !== this.el && !target.classList.contains('progress') &&\r\n !target.classList.contains('progress-bar')) {\r\n return;\r\n }\r\n\r\n if (this.formEls.length > 0) {\r\n const formEl = (this.formEls[0] as HTMLElement);\r\n if (formEl.tagName.toLowerCase() === 'input') {\r\n const inputEl = (formEl as HTMLInputElement);\r\n if (inputEl.type != null && inputEl.type.toLowerCase() === 'checkbox') {\r\n inputEl.click();\r\n return;\r\n }\r\n }\r\n formEl.focus();\r\n }\r\n }\r\n}\r\n","import {\r\n Directive,\r\n ElementRef,\r\n forwardRef,\r\n HostListener,\r\n Input,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n NgControl,\r\n} from '@angular/forms';\r\n\r\n// ref: https://juristr.com/blog/2018/02/ng-true-value-directive/\r\n@Directive({\r\n selector: 'input[type=checkbox][appTrueFalseValue]',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => TrueFalseValueDirective),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class TrueFalseValueDirective implements ControlValueAccessor {\r\n @Input() trueValue = true;\r\n @Input() falseValue = false;\r\n\r\n constructor(private elementRef: ElementRef, private renderer: Renderer2) { }\r\n\r\n @HostListener('change', ['$event'])\r\n onHostChange(ev: any) {\r\n this.propagateChange(ev.target.checked ? this.trueValue : this.falseValue);\r\n }\r\n\r\n writeValue(obj: any): void {\r\n if (obj === this.trueValue) {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', true);\r\n } else {\r\n this.renderer.setProperty(this.elementRef.nativeElement, 'checked', false);\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void { /* nothing */ }\r\n\r\n setDisabledState?(isDisabled: boolean): void { /* nothing */ }\r\n\r\n private propagateChange = (_: any) => { /* nothing */ };\r\n}\r\n","import { DeviceType } from '../enums/deviceType';\r\n\r\nimport { ApiService as ApiServiceAbstraction } from '../abstractions/api.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { TokenService } from '../abstractions/token.service';\r\n\r\nimport { EnvironmentUrls } from '../models/domain/environmentUrls';\r\n\r\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\r\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\r\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\r\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\r\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\r\nimport { CipherRequest } from '../models/request/cipherRequest';\r\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\r\nimport { CollectionRequest } from '../models/request/collectionRequest';\r\nimport { DeleteRecoverRequest } from '../models/request/deleteRecoverRequest';\r\nimport { EmailRequest } from '../models/request/emailRequest';\r\nimport { EmailTokenRequest } from '../models/request/emailTokenRequest';\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\nimport { GroupRequest } from '../models/request/groupRequest';\r\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\r\nimport { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';\r\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\r\nimport { KdfRequest } from '../models/request/kdfRequest';\r\nimport { KeysRequest } from '../models/request/keysRequest';\r\nimport { OrganizationCreateRequest } from '../models/request/organizationCreateRequest';\r\nimport { OrganizationUpdateRequest } from '../models/request/organizationUpdateRequest';\r\nimport { OrganizationUserAcceptRequest } from '../models/request/organizationUserAcceptRequest';\r\nimport { OrganizationUserConfirmRequest } from '../models/request/organizationUserConfirmRequest';\r\nimport { OrganizationUserInviteRequest } from '../models/request/organizationUserInviteRequest';\r\nimport { OrganizationUserUpdateGroupsRequest } from '../models/request/organizationUserUpdateGroupsRequest';\r\nimport { OrganizationUserUpdateRequest } from '../models/request/organizationUserUpdateRequest';\r\nimport { PasswordHintRequest } from '../models/request/passwordHintRequest';\r\nimport { PasswordRequest } from '../models/request/passwordRequest';\r\nimport { PasswordVerificationRequest } from '../models/request/passwordVerificationRequest';\r\nimport { PaymentRequest } from '../models/request/paymentRequest';\r\nimport { PreloginRequest } from '../models/request/preloginRequest';\r\nimport { RegisterRequest } from '../models/request/registerRequest';\r\nimport { SeatRequest } from '../models/request/seatRequest';\r\nimport { SelectionReadOnlyRequest } from '../models/request/selectionReadOnlyRequest';\r\nimport { StorageRequest } from '../models/request/storageRequest';\r\nimport { TokenRequest } from '../models/request/tokenRequest';\r\nimport { TwoFactorEmailRequest } from '../models/request/twoFactorEmailRequest';\r\nimport { TwoFactorProviderRequest } from '../models/request/twoFactorProviderRequest';\r\nimport { TwoFactorRecoveryRequest } from '../models/request/twoFactorRecoveryRequest';\r\nimport { UpdateDomainsRequest } from '../models/request/updateDomainsRequest';\r\nimport { UpdateKeyRequest } from '../models/request/updateKeyRequest';\r\nimport { UpdateProfileRequest } from '../models/request/updateProfileRequest';\r\nimport { UpdateTwoFactorAuthenticatorRequest } from '../models/request/updateTwoFactorAuthenticatorRequest';\r\nimport { UpdateTwoFactorDuoRequest } from '../models/request/updateTwoFactorDuoRequest';\r\nimport { UpdateTwoFactorEmailRequest } from '../models/request/updateTwoFactorEmailRequest';\r\nimport { UpdateTwoFactorU2fDeleteRequest } from '../models/request/updateTwoFactorU2fDeleteRequest';\r\nimport { UpdateTwoFactorU2fRequest } from '../models/request/updateTwoFactorU2fRequest';\r\nimport { UpdateTwoFactorYubioOtpRequest } from '../models/request/updateTwoFactorYubioOtpRequest';\r\nimport { VerifyBankRequest } from '../models/request/verifyBankRequest';\r\nimport { VerifyDeleteRecoverRequest } from '../models/request/verifyDeleteRecoverRequest';\r\nimport { VerifyEmailRequest } from '../models/request/verifyEmailRequest';\r\n\r\nimport { BillingResponse } from '../models/response/billingResponse';\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport {\r\n CollectionGroupDetailsResponse,\r\n CollectionResponse,\r\n} from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { ErrorResponse } from '../models/response/errorResponse';\r\nimport { EventResponse } from '../models/response/eventResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n GroupDetailsResponse,\r\n GroupResponse,\r\n} from '../models/response/groupResponse';\r\nimport { IdentityTokenResponse } from '../models/response/identityTokenResponse';\r\nimport { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';\r\nimport { ListResponse } from '../models/response/listResponse';\r\nimport { OrganizationBillingResponse } from '../models/response/organizationBillingResponse';\r\nimport { OrganizationResponse } from '../models/response/organizationResponse';\r\nimport {\r\n OrganizationUserDetailsResponse,\r\n OrganizationUserUserDetailsResponse,\r\n} from '../models/response/organizationUserResponse';\r\nimport { PreloginResponse } from '../models/response/preloginResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\nimport { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';\r\nimport { SyncResponse } from '../models/response/syncResponse';\r\nimport { TwoFactorAuthenticatorResponse } from '../models/response/twoFactorAuthenticatorResponse';\r\nimport { TwoFactorDuoResponse } from '../models/response/twoFactorDuoResponse';\r\nimport { TwoFactorEmailResponse } from '../models/response/twoFactorEmailResponse';\r\nimport { TwoFactorProviderResponse } from '../models/response/twoFactorProviderResponse';\r\nimport { TwoFactorRecoverResponse } from '../models/response/twoFactorRescoverResponse';\r\nimport {\r\n ChallengeResponse,\r\n TwoFactorU2fResponse,\r\n} from '../models/response/twoFactorU2fResponse';\r\nimport { TwoFactorYubiKeyResponse } from '../models/response/twoFactorYubiKeyResponse';\r\nimport { UserKeyResponse } from '../models/response/userKeyResponse';\r\n\r\nexport class ApiService implements ApiServiceAbstraction {\r\n urlsSet: boolean = false;\r\n apiBaseUrl: string;\r\n identityBaseUrl: string;\r\n\r\n private deviceType: string;\r\n private isWebClient = false;\r\n private isDesktopClient = false;\r\n private usingBaseUrl = false;\r\n\r\n constructor(private tokenService: TokenService, private platformUtilsService: PlatformUtilsService,\r\n private logoutCallback: (expired: boolean) => Promise) {\r\n const device = platformUtilsService.getDevice();\r\n this.deviceType = device.toString();\r\n this.isWebClient = device === DeviceType.IEBrowser || device === DeviceType.ChromeBrowser ||\r\n device === DeviceType.EdgeBrowser || device === DeviceType.FirefoxBrowser ||\r\n device === DeviceType.OperaBrowser || device === DeviceType.SafariBrowser ||\r\n device === DeviceType.UnknownBrowser || device === DeviceType.VivaldiBrowser;\r\n this.isDesktopClient = device === DeviceType.WindowsDesktop || device === DeviceType.MacOsDesktop ||\r\n device === DeviceType.LinuxDesktop;\r\n }\r\n\r\n setUrls(urls: EnvironmentUrls): void {\r\n this.urlsSet = true;\r\n\r\n if (urls.base != null) {\r\n this.usingBaseUrl = true;\r\n this.apiBaseUrl = urls.base + '/api';\r\n this.identityBaseUrl = urls.base + '/identity';\r\n return;\r\n }\r\n\r\n if (urls.api != null && urls.identity != null) {\r\n this.apiBaseUrl = urls.api;\r\n this.identityBaseUrl = urls.identity;\r\n return;\r\n }\r\n\r\n /* tslint:disable */\r\n // Local Dev\r\n //this.apiBaseUrl = 'http://localhost:4000';\r\n //this.identityBaseUrl = 'http://localhost:33656';\r\n\r\n // Production\r\n this.apiBaseUrl = 'https://api.bitwarden.com';\r\n this.identityBaseUrl = 'https://identity.bitwarden.com';\r\n /* tslint:enable */\r\n }\r\n\r\n // Auth APIs\r\n\r\n async postIdentityToken(request: TokenRequest): Promise {\r\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\r\n body: this.qsStringify(request.toIdentityToken(this.platformUtilsService.identityClientId)),\r\n credentials: this.getCredentials(),\r\n cache: 'no-cache',\r\n headers: new Headers({\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\r\n 'Accept': 'application/json',\r\n 'Device-Type': this.deviceType,\r\n }),\r\n method: 'POST',\r\n }));\r\n\r\n let responseJson: any = null;\r\n const typeHeader = response.headers.get('content-type');\r\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\r\n responseJson = await response.json();\r\n }\r\n\r\n if (responseJson != null) {\r\n if (response.status === 200) {\r\n return new IdentityTokenResponse(responseJson);\r\n } else if (response.status === 400 && responseJson.TwoFactorProviders2 &&\r\n Object.keys(responseJson.TwoFactorProviders2).length) {\r\n await this.tokenService.clearTwoFactorToken(request.email);\r\n return new IdentityTwoFactorResponse(responseJson);\r\n }\r\n }\r\n\r\n return Promise.reject(new ErrorResponse(responseJson, response.status, true));\r\n }\r\n\r\n async refreshIdentityToken(): Promise {\r\n try {\r\n await this.doRefreshToken();\r\n } catch (e) {\r\n return Promise.reject(null);\r\n }\r\n }\r\n\r\n // Account APIs\r\n\r\n async getProfile(): Promise {\r\n const r = await this.send('GET', '/accounts/profile', null, true, true);\r\n return new ProfileResponse(r);\r\n }\r\n\r\n async getUserBilling(): Promise {\r\n const r = await this.send('GET', '/accounts/billing', null, true, true);\r\n return new BillingResponse(r);\r\n }\r\n\r\n async putProfile(request: UpdateProfileRequest): Promise {\r\n const r = await this.send('PUT', '/accounts/profile', request, true, true);\r\n return new ProfileResponse(r);\r\n }\r\n\r\n async postPrelogin(request: PreloginRequest): Promise {\r\n const r = await this.send('POST', '/accounts/prelogin', request, false, true);\r\n return new PreloginResponse(r);\r\n }\r\n\r\n postEmailToken(request: EmailTokenRequest): Promise {\r\n return this.send('POST', '/accounts/email-token', request, true, false);\r\n }\r\n\r\n postEmail(request: EmailRequest): Promise {\r\n return this.send('POST', '/accounts/email', request, true, false);\r\n }\r\n\r\n postPassword(request: PasswordRequest): Promise {\r\n return this.send('POST', '/accounts/password', request, true, false);\r\n }\r\n\r\n postSecurityStamp(request: PasswordVerificationRequest): Promise {\r\n return this.send('POST', '/accounts/security-stamp', request, true, false);\r\n }\r\n\r\n deleteAccount(request: PasswordVerificationRequest): Promise {\r\n return this.send('DELETE', '/accounts', request, true, false);\r\n }\r\n\r\n async getAccountRevisionDate(): Promise {\r\n const r = await this.send('GET', '/accounts/revision-date', null, true, true);\r\n return r as number;\r\n }\r\n\r\n postPasswordHint(request: PasswordHintRequest): Promise {\r\n return this.send('POST', '/accounts/password-hint', request, false, false);\r\n }\r\n\r\n postRegister(request: RegisterRequest): Promise {\r\n return this.send('POST', '/accounts/register', request, false, false);\r\n }\r\n\r\n postPremium(data: FormData): Promise {\r\n return this.send('POST', '/accounts/premium', data, true, false);\r\n }\r\n\r\n postReinstatePremium(): Promise {\r\n return this.send('POST', '/accounts/reinstate-premium', null, true, false);\r\n }\r\n\r\n postCancelPremium(): Promise {\r\n return this.send('POST', '/accounts/cancel-premium', null, true, false);\r\n }\r\n\r\n postAccountStorage(request: StorageRequest): Promise {\r\n return this.send('POST', '/accounts/storage', request, true, false);\r\n }\r\n\r\n postAccountPayment(request: PaymentRequest): Promise {\r\n return this.send('POST', '/accounts/payment', request, true, false);\r\n }\r\n\r\n postAccountLicense(data: FormData): Promise {\r\n return this.send('POST', '/accounts/license', data, true, false);\r\n }\r\n\r\n postAccountKeys(request: KeysRequest): Promise {\r\n return this.send('POST', '/accounts/keys', request, true, false);\r\n }\r\n\r\n postAccountKey(request: UpdateKeyRequest): Promise {\r\n return this.send('POST', '/accounts/key', request, true, false);\r\n }\r\n\r\n postAccountVerifyEmail(): Promise {\r\n return this.send('POST', '/accounts/verify-email', null, true, false);\r\n }\r\n\r\n postAccountVerifyEmailToken(request: VerifyEmailRequest): Promise {\r\n return this.send('POST', '/accounts/verify-email-token', request, false, false);\r\n }\r\n\r\n postAccountRecoverDelete(request: DeleteRecoverRequest): Promise {\r\n return this.send('POST', '/accounts/delete-recover', request, false, false);\r\n }\r\n\r\n postAccountRecoverDeleteToken(request: VerifyDeleteRecoverRequest): Promise {\r\n return this.send('POST', '/accounts/delete-recover-token', request, false, false);\r\n }\r\n\r\n postAccountKdf(request: KdfRequest): Promise {\r\n return this.send('POST', '/accounts/kdf', request, true, false);\r\n }\r\n\r\n // Folder APIs\r\n\r\n async getFolder(id: string): Promise {\r\n const r = await this.send('GET', '/folders/' + id, null, true, true);\r\n return new FolderResponse(r);\r\n }\r\n\r\n async postFolder(request: FolderRequest): Promise {\r\n const r = await this.send('POST', '/folders', request, true, true);\r\n return new FolderResponse(r);\r\n }\r\n\r\n async putFolder(id: string, request: FolderRequest): Promise {\r\n const r = await this.send('PUT', '/folders/' + id, request, true, true);\r\n return new FolderResponse(r);\r\n }\r\n\r\n deleteFolder(id: string): Promise {\r\n return this.send('DELETE', '/folders/' + id, null, true, false);\r\n }\r\n\r\n // Cipher APIs\r\n\r\n async getCipher(id: string): Promise {\r\n const r = await this.send('GET', '/ciphers/' + id, null, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async getCipherAdmin(id: string): Promise {\r\n const r = await this.send('GET', '/ciphers/' + id + '/admin', null, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async getCiphersOrganization(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/ciphers/organization-details?organizationId=' + organizationId,\r\n null, true, true);\r\n return new ListResponse(r, CipherResponse);\r\n }\r\n\r\n async postCipher(request: CipherRequest): Promise {\r\n const r = await this.send('POST', '/ciphers', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async postCipherCreate(request: CipherCreateRequest): Promise {\r\n const r = await this.send('POST', '/ciphers/create', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async postCipherAdmin(request: CipherCreateRequest): Promise {\r\n const r = await this.send('POST', '/ciphers/admin', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async putCipher(id: string, request: CipherRequest): Promise {\r\n const r = await this.send('PUT', '/ciphers/' + id, request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async putCipherAdmin(id: string, request: CipherRequest): Promise {\r\n const r = await this.send('PUT', '/ciphers/' + id + '/admin', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n deleteCipher(id: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id, null, true, false);\r\n }\r\n\r\n deleteCipherAdmin(id: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id + '/admin', null, true, false);\r\n }\r\n\r\n deleteManyCiphers(request: CipherBulkDeleteRequest): Promise {\r\n return this.send('DELETE', '/ciphers', request, true, false);\r\n }\r\n\r\n putMoveCiphers(request: CipherBulkMoveRequest): Promise {\r\n return this.send('PUT', '/ciphers/move', request, true, false);\r\n }\r\n\r\n async putShareCipher(id: string, request: CipherShareRequest): Promise {\r\n const r = await this.send('PUT', '/ciphers/' + id + '/share', request, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n putShareCiphers(request: CipherBulkShareRequest): Promise {\r\n return this.send('PUT', '/ciphers/share', request, true, false);\r\n }\r\n\r\n putCipherCollections(id: string, request: CipherCollectionsRequest): Promise {\r\n return this.send('PUT', '/ciphers/' + id + '/collections', request, true, false);\r\n }\r\n\r\n putCipherCollectionsAdmin(id: string, request: CipherCollectionsRequest): Promise {\r\n return this.send('PUT', '/ciphers/' + id + '/collections-admin', request, true, false);\r\n }\r\n\r\n postPurgeCiphers(request: PasswordVerificationRequest, organizationId: string = null): Promise {\r\n let path = '/ciphers/purge';\r\n if (organizationId != null) {\r\n path += '?organizationId=' + organizationId;\r\n }\r\n return this.send('POST', path, request, true, false);\r\n }\r\n\r\n postImportCiphers(request: ImportCiphersRequest): Promise {\r\n return this.send('POST', '/ciphers/import', request, true, false);\r\n }\r\n\r\n postImportOrganizationCiphers(organizationId: string, request: ImportOrganizationCiphersRequest): Promise {\r\n return this.send('POST', '/ciphers/import-organization?organizationId=' + organizationId, request, true, false);\r\n }\r\n\r\n // Attachments APIs\r\n\r\n async postCipherAttachment(id: string, data: FormData): Promise {\r\n const r = await this.send('POST', '/ciphers/' + id + '/attachment', data, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n async postCipherAttachmentAdmin(id: string, data: FormData): Promise {\r\n const r = await this.send('POST', '/ciphers/' + id + '/attachment-admin', data, true, true);\r\n return new CipherResponse(r);\r\n }\r\n\r\n deleteCipherAttachment(id: string, attachmentId: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId, null, true, false);\r\n }\r\n\r\n deleteCipherAttachmentAdmin(id: string, attachmentId: string): Promise {\r\n return this.send('DELETE', '/ciphers/' + id + '/attachment/' + attachmentId + '/admin', null, true, false);\r\n }\r\n\r\n postShareCipherAttachment(id: string, attachmentId: string, data: FormData,\r\n organizationId: string): Promise {\r\n return this.send('POST', '/ciphers/' + id + '/attachment/' +\r\n attachmentId + '/share?organizationId=' + organizationId, data, true, false);\r\n }\r\n\r\n // Collections APIs\r\n\r\n async getCollectionDetails(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/details',\r\n null, true, true);\r\n return new CollectionGroupDetailsResponse(r);\r\n }\r\n\r\n async getUserCollections(): Promise> {\r\n const r = await this.send('GET', '/collections', null, true, true);\r\n return new ListResponse(r, CollectionResponse);\r\n }\r\n\r\n async getCollections(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections', null, true, true);\r\n return new ListResponse(r, CollectionResponse);\r\n }\r\n\r\n async getCollectionUsers(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/collections/' + id + '/users',\r\n null, true, true);\r\n return r.map((dr: any) => new SelectionReadOnlyResponse(dr));\r\n }\r\n\r\n async postCollection(organizationId: string, request: CollectionRequest): Promise {\r\n const r = await this.send('POST', '/organizations/' + organizationId + '/collections', request, true, true);\r\n return new CollectionResponse(r);\r\n }\r\n\r\n async putCollection(organizationId: string, id: string, request: CollectionRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id,\r\n request, true, true);\r\n return new CollectionResponse(r);\r\n }\r\n\r\n async putCollectionUsers(organizationId: string, id: string, request: SelectionReadOnlyRequest[]): Promise {\r\n await this.send('PUT', '/organizations/' + organizationId + '/collections/' + id + '/users',\r\n request, true, false);\r\n }\r\n\r\n deleteCollection(organizationId: string, id: string): Promise {\r\n return this.send('DELETE', '/organizations/' + organizationId + '/collections/' + id, null, true, false);\r\n }\r\n\r\n deleteCollectionUser(organizationId: string, id: string, organizationUserId: string): Promise {\r\n return this.send('DELETE',\r\n '/organizations/' + organizationId + '/collections/' + id + '/user/' + organizationUserId,\r\n null, true, false);\r\n }\r\n\r\n // Groups APIs\r\n\r\n async getGroupDetails(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/details',\r\n null, true, true);\r\n return new GroupDetailsResponse(r);\r\n }\r\n\r\n async getGroups(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups', null, true, true);\r\n return new ListResponse(r, GroupResponse);\r\n }\r\n\r\n async getGroupUsers(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/groups/' + id + '/users',\r\n null, true, true);\r\n return r;\r\n }\r\n\r\n async postGroup(organizationId: string, request: GroupRequest): Promise {\r\n const r = await this.send('POST', '/organizations/' + organizationId + '/groups', request, true, true);\r\n return new GroupResponse(r);\r\n }\r\n\r\n async putGroup(organizationId: string, id: string, request: GroupRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id, request, true, true);\r\n return new GroupResponse(r);\r\n }\r\n\r\n async putGroupUsers(organizationId: string, id: string, request: string[]): Promise {\r\n await this.send('PUT', '/organizations/' + organizationId + '/groups/' + id + '/users', request, true, false);\r\n }\r\n\r\n deleteGroup(organizationId: string, id: string): Promise {\r\n return this.send('DELETE', '/organizations/' + organizationId + '/groups/' + id, null, true, false);\r\n }\r\n\r\n deleteGroupUser(organizationId: string, id: string, organizationUserId: string): Promise {\r\n return this.send('DELETE',\r\n '/organizations/' + organizationId + '/groups/' + id + '/user/' + organizationUserId, null, true, false);\r\n }\r\n\r\n // Organization User APIs\r\n\r\n async getOrganizationUser(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id, null, true, true);\r\n return new OrganizationUserDetailsResponse(r);\r\n }\r\n\r\n async getOrganizationUserGroups(organizationId: string, id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/users/' + id + '/groups',\r\n null, true, true);\r\n return r;\r\n }\r\n\r\n async getOrganizationUsers(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/users', null, true, true);\r\n return new ListResponse(r, OrganizationUserUserDetailsResponse);\r\n }\r\n\r\n postOrganizationUserInvite(organizationId: string, request: OrganizationUserInviteRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/invite', request, true, false);\r\n }\r\n\r\n postOrganizationUserReinvite(organizationId: string, id: string): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/reinvite', null, true, false);\r\n }\r\n\r\n postOrganizationUserAccept(organizationId: string, id: string,\r\n request: OrganizationUserAcceptRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/accept', request, true, false);\r\n }\r\n\r\n postOrganizationUserConfirm(organizationId: string, id: string,\r\n request: OrganizationUserConfirmRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/users/' + id + '/confirm',\r\n request, true, false);\r\n }\r\n\r\n putOrganizationUser(organizationId: string, id: string, request: OrganizationUserUpdateRequest): Promise {\r\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id, request, true, false);\r\n }\r\n\r\n putOrganizationUserGroups(organizationId: string, id: string,\r\n request: OrganizationUserUpdateGroupsRequest): Promise {\r\n return this.send('PUT', '/organizations/' + organizationId + '/users/' + id + '/groups', request, true, false);\r\n }\r\n\r\n deleteOrganizationUser(organizationId: string, id: string): Promise {\r\n return this.send('DELETE', '/organizations/' + organizationId + '/users/' + id, null, true, false);\r\n }\r\n\r\n // Sync APIs\r\n\r\n async getSync(): Promise {\r\n const path = this.isDesktopClient || this.isWebClient ? '/sync?excludeDomains=true' : '/sync';\r\n const r = await this.send('GET', path, null, true, true);\r\n return new SyncResponse(r);\r\n }\r\n\r\n async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise {\r\n return this.send('POST', '/organizations/' + organizationId + '/import', request, true, false);\r\n }\r\n\r\n // Settings APIs\r\n\r\n async getSettingsDomains(): Promise {\r\n const r = await this.send('GET', '/settings/domains', null, true, true);\r\n return new DomainsResponse(r);\r\n }\r\n\r\n async putSettingsDomains(request: UpdateDomainsRequest): Promise {\r\n const r = await this.send('PUT', '/settings/domains', request, true, true);\r\n return new DomainsResponse(r);\r\n }\r\n\r\n // Two-factor APIs\r\n\r\n async getTwoFactorProviders(): Promise> {\r\n const r = await this.send('GET', '/two-factor', null, true, true);\r\n return new ListResponse(r, TwoFactorProviderResponse);\r\n }\r\n\r\n async getTwoFactorOrganizationProviders(organizationId: string): Promise> {\r\n const r = await this.send('GET', '/organizations/' + organizationId + '/two-factor', null, true, true);\r\n return new ListResponse(r, TwoFactorProviderResponse);\r\n }\r\n\r\n async getTwoFactorAuthenticator(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-authenticator', request, true, true);\r\n return new TwoFactorAuthenticatorResponse(r);\r\n }\r\n\r\n async getTwoFactorEmail(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-email', request, true, true);\r\n return new TwoFactorEmailResponse(r);\r\n }\r\n\r\n async getTwoFactorDuo(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-duo', request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async getTwoFactorOrganizationDuo(organizationId: string,\r\n request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/organizations/' + organizationId + '/two-factor/get-duo',\r\n request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async getTwoFactorYubiKey(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-yubikey', request, true, true);\r\n return new TwoFactorYubiKeyResponse(r);\r\n }\r\n\r\n async getTwoFactorU2f(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-u2f', request, true, true);\r\n return new TwoFactorU2fResponse(r);\r\n }\r\n\r\n async getTwoFactorU2fChallenge(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-u2f-challenge', request, true, true);\r\n return new ChallengeResponse(r);\r\n }\r\n\r\n async getTwoFactorRecover(request: PasswordVerificationRequest): Promise {\r\n const r = await this.send('POST', '/two-factor/get-recover', request, true, true);\r\n return new TwoFactorRecoverResponse(r);\r\n }\r\n\r\n async putTwoFactorAuthenticator(\r\n request: UpdateTwoFactorAuthenticatorRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/authenticator', request, true, true);\r\n return new TwoFactorAuthenticatorResponse(r);\r\n }\r\n\r\n async putTwoFactorEmail(request: UpdateTwoFactorEmailRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/email', request, true, true);\r\n return new TwoFactorEmailResponse(r);\r\n }\r\n\r\n async putTwoFactorDuo(request: UpdateTwoFactorDuoRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/duo', request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async putTwoFactorOrganizationDuo(organizationId: string,\r\n request: UpdateTwoFactorDuoRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/duo', request, true, true);\r\n return new TwoFactorDuoResponse(r);\r\n }\r\n\r\n async putTwoFactorYubiKey(request: UpdateTwoFactorYubioOtpRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/yubikey', request, true, true);\r\n return new TwoFactorYubiKeyResponse(r);\r\n }\r\n\r\n async putTwoFactorU2f(request: UpdateTwoFactorU2fRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/u2f', request, true, true);\r\n return new TwoFactorU2fResponse(r);\r\n }\r\n\r\n async deleteTwoFactorU2f(request: UpdateTwoFactorU2fDeleteRequest): Promise {\r\n const r = await this.send('DELETE', '/two-factor/u2f', request, true, true);\r\n return new TwoFactorU2fResponse(r);\r\n }\r\n\r\n async putTwoFactorDisable(request: TwoFactorProviderRequest): Promise {\r\n const r = await this.send('PUT', '/two-factor/disable', request, true, true);\r\n return new TwoFactorProviderResponse(r);\r\n }\r\n\r\n async putTwoFactorOrganizationDisable(organizationId: string,\r\n request: TwoFactorProviderRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + organizationId + '/two-factor/disable',\r\n request, true, true);\r\n return new TwoFactorProviderResponse(r);\r\n }\r\n\r\n postTwoFactorRecover(request: TwoFactorRecoveryRequest): Promise {\r\n return this.send('POST', '/two-factor/recover', request, false, false);\r\n }\r\n\r\n postTwoFactorEmailSetup(request: TwoFactorEmailRequest): Promise {\r\n return this.send('POST', '/two-factor/send-email', request, true, false);\r\n }\r\n\r\n postTwoFactorEmail(request: TwoFactorEmailRequest): Promise {\r\n return this.send('POST', '/two-factor/send-email-login', request, false, false);\r\n }\r\n\r\n // Organization APIs\r\n\r\n async getOrganization(id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + id, null, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n async getOrganizationBilling(id: string): Promise {\r\n const r = await this.send('GET', '/organizations/' + id + '/billing', null, true, true);\r\n return new OrganizationBillingResponse(r);\r\n }\r\n\r\n async getOrganizationLicense(id: string, installationId: string): Promise {\r\n return this.send('GET', '/organizations/' + id + '/license?installationId=' + installationId,\r\n null, true, true);\r\n }\r\n\r\n async postOrganization(request: OrganizationCreateRequest): Promise {\r\n const r = await this.send('POST', '/organizations', request, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n async putOrganization(id: string, request: OrganizationUpdateRequest): Promise {\r\n const r = await this.send('PUT', '/organizations/' + id, request, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n postLeaveOrganization(id: string): Promise {\r\n return this.send('POST', '/organizations/' + id + '/leave', null, true, false);\r\n }\r\n\r\n async postOrganizationLicense(data: FormData): Promise {\r\n const r = await this.send('POST', '/organizations/license', data, true, true);\r\n return new OrganizationResponse(r);\r\n }\r\n\r\n async postOrganizationLicenseUpdate(id: string, data: FormData): Promise {\r\n return this.send('POST', '/organizations/' + id + '/license', data, true, false);\r\n }\r\n\r\n postOrganizationSeat(id: string, request: SeatRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/seat', request, true, false);\r\n }\r\n\r\n postOrganizationStorage(id: string, request: StorageRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/storage', request, true, false);\r\n }\r\n\r\n postOrganizationPayment(id: string, request: PaymentRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/payment', request, true, false);\r\n }\r\n\r\n postOrganizationVerifyBank(id: string, request: VerifyBankRequest): Promise {\r\n return this.send('POST', '/organizations/' + id + '/verify-bank', request, true, false);\r\n }\r\n\r\n postOrganizationCancel(id: string): Promise {\r\n return this.send('POST', '/organizations/' + id + '/cancel', null, true, false);\r\n }\r\n\r\n postOrganizationReinstate(id: string): Promise {\r\n return this.send('POST', '/organizations/' + id + '/reinstate', null, true, false);\r\n }\r\n\r\n deleteOrganization(id: string, request: PasswordVerificationRequest): Promise {\r\n return this.send('DELETE', '/organizations/' + id, request, true, false);\r\n }\r\n\r\n // Event APIs\r\n\r\n async getEvents(start: string, end: string, token: string): Promise> {\r\n const r = await this.send('GET', this.addEventParameters('/events', start, end, token), null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n async getEventsCipher(id: string, start: string, end: string,\r\n token: string): Promise> {\r\n const r = await this.send('GET', this.addEventParameters('/ciphers/' + id + '/events', start, end, token),\r\n null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n async getEventsOrganization(id: string, start: string, end: string,\r\n token: string): Promise> {\r\n const r = await this.send('GET', this.addEventParameters('/organizations/' + id + '/events', start, end, token),\r\n null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n async getEventsOrganizationUser(organizationId: string, id: string,\r\n start: string, end: string, token: string): Promise> {\r\n const r = await this.send('GET',\r\n this.addEventParameters('/organizations/' + organizationId + '/users/' + id + '/events', start, end, token),\r\n null, true, true);\r\n return new ListResponse(r, EventResponse);\r\n }\r\n\r\n // User APIs\r\n\r\n async getUserPublicKey(id: string): Promise {\r\n const r = await this.send('GET', '/users/' + id + '/public-key', null, true, true);\r\n return new UserKeyResponse(r);\r\n }\r\n\r\n // Helpers\r\n\r\n async getActiveBearerToken(): Promise {\r\n let accessToken = await this.tokenService.getToken();\r\n if (this.tokenService.tokenNeedsRefresh()) {\r\n const tokenResponse = await this.doRefreshToken();\r\n accessToken = tokenResponse.accessToken;\r\n }\r\n return accessToken;\r\n }\r\n\r\n fetch(request: Request): Promise {\r\n if (request.method === 'GET') {\r\n request.headers.set('Cache-Control', 'no-cache');\r\n request.headers.set('Pragma', 'no-cache');\r\n }\r\n return fetch(request);\r\n }\r\n\r\n private async send(method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, body: any,\r\n authed: boolean, hasResponse: boolean): Promise {\r\n const headers = new Headers({\r\n 'Device-Type': this.deviceType,\r\n });\r\n\r\n const requestInit: RequestInit = {\r\n cache: 'no-cache',\r\n credentials: this.getCredentials(),\r\n method: method,\r\n };\r\n\r\n if (authed) {\r\n const authHeader = await this.getActiveBearerToken();\r\n headers.set('Authorization', 'Bearer ' + authHeader);\r\n }\r\n if (body != null) {\r\n if (typeof body === 'string') {\r\n requestInit.body = body;\r\n headers.set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');\r\n } else if (typeof body === 'object') {\r\n if (body instanceof FormData) {\r\n requestInit.body = body;\r\n } else {\r\n headers.set('Content-Type', 'application/json; charset=utf-8');\r\n requestInit.body = JSON.stringify(body);\r\n }\r\n }\r\n }\r\n if (hasResponse) {\r\n headers.set('Accept', 'application/json');\r\n }\r\n\r\n requestInit.headers = headers;\r\n const response = await this.fetch(new Request(this.apiBaseUrl + path, requestInit));\r\n\r\n if (hasResponse && response.status === 200) {\r\n const responseJson = await response.json();\r\n return responseJson;\r\n } else if (response.status !== 200) {\r\n const error = await this.handleError(response, false);\r\n return Promise.reject(error);\r\n }\r\n }\r\n\r\n private async handleError(response: Response, tokenError: boolean): Promise {\r\n if ((tokenError && response.status === 400) || response.status === 401 || response.status === 403) {\r\n await this.logoutCallback(true);\r\n return null;\r\n }\r\n\r\n let responseJson: any = null;\r\n const typeHeader = response.headers.get('content-type');\r\n if (typeHeader != null && typeHeader.indexOf('application/json') > -1) {\r\n responseJson = await response.json();\r\n }\r\n\r\n return new ErrorResponse(responseJson, response.status, tokenError);\r\n }\r\n\r\n private async doRefreshToken(): Promise {\r\n const refreshToken = await this.tokenService.getRefreshToken();\r\n if (refreshToken == null || refreshToken === '') {\r\n throw new Error();\r\n }\r\n\r\n const decodedToken = this.tokenService.decodeToken();\r\n const response = await this.fetch(new Request(this.identityBaseUrl + '/connect/token', {\r\n body: this.qsStringify({\r\n grant_type: 'refresh_token',\r\n client_id: decodedToken.client_id,\r\n refresh_token: refreshToken,\r\n }),\r\n cache: 'no-cache',\r\n credentials: this.getCredentials(),\r\n headers: new Headers({\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\r\n 'Accept': 'application/json',\r\n 'Device-Type': this.deviceType,\r\n }),\r\n method: 'POST',\r\n }));\r\n\r\n if (response.status === 200) {\r\n const responseJson = await response.json();\r\n const tokenResponse = new IdentityTokenResponse(responseJson);\r\n await this.tokenService.setTokens(tokenResponse.accessToken, tokenResponse.refreshToken);\r\n return tokenResponse;\r\n } else {\r\n const error = await this.handleError(response, true);\r\n return Promise.reject(error);\r\n }\r\n }\r\n\r\n private qsStringify(params: any): string {\r\n return Object.keys(params).map((key) => {\r\n return encodeURIComponent(key) + '=' + encodeURIComponent(params[key]);\r\n }).join('&');\r\n }\r\n\r\n private getCredentials(): RequestCredentials {\r\n if (!this.isWebClient || this.usingBaseUrl) {\r\n return 'include';\r\n }\r\n return undefined;\r\n }\r\n\r\n private addEventParameters(base: string, start: string, end: string, token: string) {\r\n if (start != null) {\r\n base += ('?start=' + start);\r\n }\r\n if (end != null) {\r\n base += (base.indexOf('?') > -1 ? '&' : '?');\r\n base += ('end=' + end);\r\n }\r\n if (token != null) {\r\n base += (base.indexOf('?') > -1 ? '&' : '?');\r\n base += ('continuationToken=' + token);\r\n }\r\n return base;\r\n }\r\n}\r\n","import { PaymentMethodType } from '../../enums/paymentMethodType';\r\n\r\nexport class BillingResponse {\r\n storageName: string;\r\n storageGb: number;\r\n maxStorageGb: number;\r\n paymentSource: BillingSourceResponse;\r\n subscription: BillingSubscriptionResponse;\r\n upcomingInvoice: BillingInvoiceResponse;\r\n charges: BillingChargeResponse[] = [];\r\n license: any;\r\n expiration: string;\r\n\r\n constructor(response: any) {\r\n this.storageName = response.StorageName;\r\n this.storageGb = response.StorageGb;\r\n this.maxStorageGb = response.MaxStorageGb;\r\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\r\n this.subscription = response.Subscription == null ?\r\n null : new BillingSubscriptionResponse(response.Subscription);\r\n this.upcomingInvoice = response.UpcomingInvoice == null ?\r\n null : new BillingInvoiceResponse(response.UpcomingInvoice);\r\n if (response.Charges != null) {\r\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\r\n }\r\n this.license = response.License;\r\n this.expiration = response.Expiration;\r\n }\r\n}\r\n\r\nexport class BillingSourceResponse {\r\n type: PaymentMethodType;\r\n cardBrand: string;\r\n description: string;\r\n needsVerification: boolean;\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.cardBrand = response.CardBrand;\r\n this.description = response.Description;\r\n this.needsVerification = response.NeedsVerification;\r\n }\r\n}\r\n\r\nexport class BillingSubscriptionResponse {\r\n trialStartDate: string;\r\n trialEndDate: string;\r\n periodStartDate: string;\r\n periodEndDate: string;\r\n cancelledDate: string;\r\n cancelAtEndDate: boolean;\r\n status: string;\r\n cancelled: boolean;\r\n items: BillingSubscriptionItemResponse[] = [];\r\n\r\n constructor(response: any) {\r\n this.trialEndDate = response.TrialStartDate;\r\n this.trialEndDate = response.TrialEndDate;\r\n this.periodStartDate = response.PeriodStartDate;\r\n this.periodEndDate = response.PeriodEndDate;\r\n this.cancelledDate = response.CancelledDate;\r\n this.cancelAtEndDate = response.CancelAtEndDate;\r\n this.status = response.Status;\r\n this.cancelled = response.Cancelled;\r\n if (response.Items != null) {\r\n this.items = response.Items.map((i: any) => new BillingSubscriptionItemResponse(i));\r\n }\r\n }\r\n}\r\n\r\nexport class BillingSubscriptionItemResponse {\r\n name: string;\r\n amount: number;\r\n quantity: number;\r\n interval: string;\r\n\r\n constructor(response: any) {\r\n this.name = response.Name;\r\n this.amount = response.Amount;\r\n this.quantity = response.Quantity;\r\n this.interval = response.Interval;\r\n }\r\n}\r\n\r\nexport class BillingInvoiceResponse {\r\n date: string;\r\n amount: number;\r\n\r\n constructor(response: any) {\r\n this.date = response.Date;\r\n this.amount = response.Amount;\r\n }\r\n}\r\n\r\nexport class BillingChargeResponse {\r\n createdDate: string;\r\n amount: number;\r\n paymentSource: BillingSourceResponse;\r\n status: string;\r\n failureMessage: string;\r\n refunded: boolean;\r\n partiallyRefunded: boolean;\r\n refundedAmount: number;\r\n invoiceId: string;\r\n\r\n constructor(response: any) {\r\n this.createdDate = response.CreatedDate;\r\n this.amount = response.Amount;\r\n this.paymentSource = response.PaymentSource != null ? new BillingSourceResponse(response.PaymentSource) : null;\r\n this.status = response.Status;\r\n this.failureMessage = response.FailureMessage;\r\n this.refunded = response.Refunded;\r\n this.partiallyRefunded = response.PartiallyRefunded;\r\n this.refundedAmount = response.RefundedAmount;\r\n this.invoiceId = response.InvoiceId;\r\n }\r\n}\r\n","import { AttachmentResponse } from './attachmentResponse';\r\nimport { PasswordHistoryResponse } from './passwordHistoryResponse';\r\n\r\nimport { CardApi } from '../api/cardApi';\r\nimport { FieldApi } from '../api/fieldApi';\r\nimport { IdentityApi } from '../api/identityApi';\r\nimport { LoginApi } from '../api/loginApi';\r\nimport { SecureNoteApi } from '../api/secureNoteApi';\r\n\r\nexport class CipherResponse {\r\n id: string;\r\n organizationId: string;\r\n folderId: string;\r\n type: number;\r\n name: string;\r\n notes: string;\r\n fields: FieldApi[];\r\n login: LoginApi;\r\n card: CardApi;\r\n identity: IdentityApi;\r\n secureNote: SecureNoteApi;\r\n favorite: boolean;\r\n edit: boolean;\r\n organizationUseTotp: boolean;\r\n revisionDate: string;\r\n attachments: AttachmentResponse[];\r\n passwordHistory: PasswordHistoryResponse[];\r\n collectionIds: string[];\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.organizationId = response.OrganizationId;\r\n this.folderId = response.FolderId || null;\r\n this.type = response.Type;\r\n this.name = response.Name;\r\n this.notes = response.Notes;\r\n this.favorite = response.Favorite || false;\r\n this.edit = response.Edit || true;\r\n this.organizationUseTotp = response.OrganizationUseTotp;\r\n this.revisionDate = response.RevisionDate;\r\n\r\n if (response.Login != null) {\r\n this.login = new LoginApi(response.Login);\r\n }\r\n\r\n if (response.Card != null) {\r\n this.card = new CardApi(response.Card);\r\n }\r\n\r\n if (response.Identity != null) {\r\n this.identity = new IdentityApi(response.Identity);\r\n }\r\n\r\n if (response.SecureNote != null) {\r\n this.secureNote = new SecureNoteApi(response.SecureNote);\r\n }\r\n\r\n if (response.Fields != null) {\r\n this.fields = [];\r\n response.Fields.forEach((field: any) => {\r\n this.fields.push(new FieldApi(field));\r\n });\r\n }\r\n\r\n if (response.Attachments != null) {\r\n this.attachments = [];\r\n response.Attachments.forEach((attachment: any) => {\r\n this.attachments.push(new AttachmentResponse(attachment));\r\n });\r\n }\r\n\r\n if (response.PasswordHistory != null) {\r\n this.passwordHistory = [];\r\n response.PasswordHistory.forEach((ph: any) => {\r\n this.passwordHistory.push(new PasswordHistoryResponse(ph));\r\n });\r\n }\r\n\r\n if (response.CollectionIds) {\r\n this.collectionIds = [];\r\n response.CollectionIds.forEach((id: string) => {\r\n this.collectionIds.push(id);\r\n });\r\n }\r\n }\r\n}\r\n","import { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\n\nexport class CollectionResponse {\n id: string;\n organizationId: string;\n name: string;\n\n constructor(response: any) {\n this.id = response.Id;\n this.organizationId = response.OrganizationId;\n this.name = response.Name;\n }\n}\n\nexport class CollectionDetailsResponse extends CollectionResponse {\n readOnly: boolean;\n\n constructor(response: any) {\n super(response);\n this.readOnly = response.ReadOnly || false;\n }\n}\n\nexport class CollectionGroupDetailsResponse extends CollectionResponse {\n groups: SelectionReadOnlyResponse[] = [];\n\n constructor(response: any) {\n super(response);\n if (response.Groups != null) {\n this.groups = response.Groups.map((g: any) => new SelectionReadOnlyResponse(g));\n }\n }\n}\n","import { GlobalDomainResponse } from './globalDomainResponse';\r\n\r\nexport class DomainsResponse {\r\n equivalentDomains: string[][];\r\n globalEquivalentDomains: GlobalDomainResponse[] = [];\r\n\r\n constructor(response: any) {\r\n this.equivalentDomains = response.EquivalentDomains;\r\n\r\n this.globalEquivalentDomains = [];\r\n if (response.GlobalEquivalentDomains) {\r\n response.GlobalEquivalentDomains.forEach((domain: any) => {\r\n this.globalEquivalentDomains.push(new GlobalDomainResponse(domain));\r\n });\r\n }\r\n }\r\n}\r\n","export class FolderResponse {\r\n id: string;\r\n name: string;\r\n revisionDate: string;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.name = response.Name;\r\n this.revisionDate = response.RevisionDate;\r\n }\r\n}\r\n","import { PlanType } from '../../enums/planType';\n\nexport class OrganizationResponse {\n id: string;\n name: string;\n businessName: string;\n businessAddress1: string;\n businessAddress2: string;\n businessAddress3: string;\n businessCountry: string;\n businessTaxNumber: string;\n billingEmail: string;\n plan: string;\n planType: PlanType;\n seats: number;\n maxCollections: number;\n maxStorageGb: number;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.name = response.Name;\n this.businessName = response.BusinessName;\n this.businessAddress1 = response.BusinessAddress1;\n this.businessAddress2 = response.BusinessAddress2;\n this.businessAddress3 = response.BusinessAddress3;\n this.businessCountry = response.BusinessCountry;\n this.businessTaxNumber = response.BusinessTaxNumber;\n this.billingEmail = response.BillingEmail;\n this.plan = response.Plan;\n this.planType = response.PlanType;\n this.seats = response.Seats;\n this.maxCollections = response.MaxCollections;\n this.maxStorageGb = response.MaxStorageGb;\n this.useGroups = response.UseGroups;\n this.useDirectory = response.UseDirectory;\n this.useEvents = response.UseEvents;\n this.useTotp = response.UseTotp;\n this.use2fa = response.Use2fa;\n }\n}\n","import { ProfileOrganizationResponse } from './profileOrganizationResponse';\r\n\r\nexport class ProfileResponse {\r\n id: string;\r\n name: string;\r\n email: string;\r\n emailVerified: boolean;\r\n masterPasswordHint: string;\r\n premium: boolean;\r\n culture: string;\r\n twoFactorEnabled: boolean;\r\n key: string;\r\n privateKey: string;\r\n securityStamp: string;\r\n organizations: ProfileOrganizationResponse[] = [];\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.name = response.Name;\r\n this.email = response.Email;\r\n this.emailVerified = response.EmailVerified;\r\n this.masterPasswordHint = response.MasterPasswordHint;\r\n this.premium = response.Premium;\r\n this.culture = response.Culture;\r\n this.twoFactorEnabled = response.TwoFactorEnabled;\r\n this.key = response.Key;\r\n this.privateKey = response.PrivateKey;\r\n this.securityStamp = response.SecurityStamp;\r\n\r\n if (response.Organizations) {\r\n response.Organizations.forEach((org: any) => {\r\n this.organizations.push(new ProfileOrganizationResponse(org));\r\n });\r\n }\r\n }\r\n}\r\n","import { Utils } from '../misc/utils';\r\n\r\nimport { AppIdService as AppIdServiceAbstraction } from '../abstractions/appId.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nexport class AppIdService implements AppIdServiceAbstraction {\r\n constructor(private storageService: StorageService) {\r\n }\r\n\r\n getAppId(): Promise {\r\n return this.makeAndGetAppId('appId');\r\n }\r\n\r\n getAnonymousAppId(): Promise {\r\n return this.makeAndGetAppId('anonymousAppId');\r\n }\r\n\r\n private async makeAndGetAppId(key: string) {\r\n const existingId = await this.storageService.get(key);\r\n if (existingId != null) {\r\n return existingId;\r\n }\r\n\r\n const guid = Utils.newGuid();\r\n await this.storageService.save(key, guid);\r\n return guid;\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\r\nimport { AuditService as AuditServiceAbstraction } from '../abstractions/audit.service';\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { BreachAccountResponse } from '../models/response/breachAccountResponse';\r\n\r\nconst PwnedPasswordsApi = 'https://api.pwnedpasswords.com/range/';\r\nconst HibpBreachApi = 'https://haveibeenpwned.com/api/v2/breachedaccount/';\r\n\r\nexport class AuditService implements AuditServiceAbstraction {\r\n constructor(private cryptoFunctionService: CryptoFunctionService, private apiService: ApiService) { }\r\n\r\n async passwordLeaked(password: string): Promise {\r\n const hashBytes = await this.cryptoFunctionService.hash(password, 'sha1');\r\n const hash = Utils.fromBufferToHex(hashBytes).toUpperCase();\r\n const hashStart = hash.substr(0, 5);\r\n const hashEnding = hash.substr(5);\r\n\r\n const response = await fetch(new Request(PwnedPasswordsApi + hashStart));\r\n const leakedHashes = await response.text();\r\n const match = leakedHashes.split(/\\r?\\n/).find((v) => {\r\n return v.split(':')[0] === hashEnding;\r\n });\r\n\r\n return match != null ? parseInt(match.split(':')[1], 10) : 0;\r\n }\r\n\r\n async breachedAccounts(username: string): Promise {\r\n const response = await fetch(new Request(HibpBreachApi + username));\r\n if (response.status === 404) {\r\n return [];\r\n } else if (response.status !== 200) {\r\n throw new Error();\r\n }\r\n const responseJson = await response.json();\r\n return responseJson.map((a: any) => new BreachAccountResponse(a));\r\n }\r\n}\r\n","import { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { UriMatchType } from '../enums/uriMatchType';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { Attachment } from '../models/domain/attachment';\r\nimport { Card } from '../models/domain/card';\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport Domain from '../models/domain/domainBase';\r\nimport { Field } from '../models/domain/field';\r\nimport { Identity } from '../models/domain/identity';\r\nimport { Login } from '../models/domain/login';\r\nimport { LoginUri } from '../models/domain/loginUri';\r\nimport { Password } from '../models/domain/password';\r\nimport { SecureNote } from '../models/domain/secureNote';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { CipherBulkDeleteRequest } from '../models/request/cipherBulkDeleteRequest';\r\nimport { CipherBulkMoveRequest } from '../models/request/cipherBulkMoveRequest';\r\nimport { CipherBulkShareRequest } from '../models/request/cipherBulkShareRequest';\r\nimport { CipherCollectionsRequest } from '../models/request/cipherCollectionsRequest';\r\nimport { CipherCreateRequest } from '../models/request/cipherCreateRequest';\r\nimport { CipherRequest } from '../models/request/cipherRequest';\r\nimport { CipherShareRequest } from '../models/request/cipherShareRequest';\r\n\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport { ErrorResponse } from '../models/response/errorResponse';\r\n\r\nimport { AttachmentView } from '../models/view/attachmentView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { PasswordHistoryView } from '../models/view/passwordHistoryView';\r\nimport { View } from '../models/view/view';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService as CipherServiceAbstraction } from '../abstractions/cipher.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { I18nService } from '../abstractions/i18n.service';\r\nimport { SearchService } from '../abstractions/search.service';\r\nimport { SettingsService } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport { sequentialize } from '../misc/sequentialize';\r\nimport { Utils } from '../misc/utils';\r\n\r\nconst Keys = {\r\n ciphersPrefix: 'ciphers_',\r\n localData: 'sitesLocalData',\r\n neverDomains: 'neverDomains',\r\n};\r\n\r\nconst DomainMatchBlacklist = new Map>([\r\n ['google.com', new Set(['script.google.com'])],\r\n]);\r\n\r\nexport class CipherService implements CipherServiceAbstraction {\r\n // tslint:disable-next-line\r\n _decryptedCipherCache: CipherView[];\r\n\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private settingsService: SettingsService, private apiService: ApiService,\r\n private storageService: StorageService, private i18nService: I18nService,\r\n private searchService: () => SearchService) {\r\n }\r\n\r\n get decryptedCipherCache() {\r\n return this._decryptedCipherCache;\r\n }\r\n set decryptedCipherCache(value: CipherView[]) {\r\n this._decryptedCipherCache = value;\r\n if (this.searchService != null) {\r\n if (value == null) {\r\n this.searchService().clearIndex();\r\n } else {\r\n this.searchService().indexCiphers();\r\n }\r\n }\r\n }\r\n\r\n clearCache(): void {\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async encrypt(model: CipherView, key?: SymmetricCryptoKey, originalCipher: Cipher = null): Promise {\r\n // Adjust password history\r\n if (model.id != null) {\r\n if (originalCipher == null) {\r\n originalCipher = await this.get(model.id);\r\n }\r\n if (originalCipher != null) {\r\n const existingCipher = await originalCipher.decrypt();\r\n model.passwordHistory = existingCipher.passwordHistory || [];\r\n if (model.type === CipherType.Login && existingCipher.type === CipherType.Login) {\r\n if (existingCipher.login.password != null && existingCipher.login.password !== '' &&\r\n existingCipher.login.password !== model.login.password) {\r\n const ph = new PasswordHistoryView();\r\n ph.password = existingCipher.login.password;\r\n ph.lastUsedDate = model.login.passwordRevisionDate = new Date();\r\n model.passwordHistory.splice(0, 0, ph);\r\n } else {\r\n model.login.passwordRevisionDate = existingCipher.login.passwordRevisionDate;\r\n }\r\n }\r\n if (existingCipher.hasFields) {\r\n const existingHiddenFields = existingCipher.fields.filter((f) => f.type === FieldType.Hidden &&\r\n f.name != null && f.name !== '' && f.value != null && f.value !== '');\r\n const hiddenFields = model.fields == null ? [] :\r\n model.fields.filter((f) => f.type === FieldType.Hidden && f.name != null && f.name !== '');\r\n existingHiddenFields.forEach((ef) => {\r\n const matchedField = hiddenFields.filter((f) => f.name === ef.name);\r\n if (matchedField.length === 0 || matchedField[0].value !== ef.value) {\r\n const ph = new PasswordHistoryView();\r\n ph.password = ef.name + ': ' + ef.value;\r\n ph.lastUsedDate = new Date();\r\n model.passwordHistory.splice(0, 0, ph);\r\n }\r\n });\r\n }\r\n }\r\n if (model.passwordHistory != null && model.passwordHistory.length === 0) {\r\n model.passwordHistory = null;\r\n } else if (model.passwordHistory != null && model.passwordHistory.length > 5) {\r\n // only save last 5 history\r\n model.passwordHistory = model.passwordHistory.slice(0, 5);\r\n }\r\n }\r\n\r\n const cipher = new Cipher();\r\n cipher.id = model.id;\r\n cipher.folderId = model.folderId;\r\n cipher.favorite = model.favorite;\r\n cipher.organizationId = model.organizationId;\r\n cipher.type = model.type;\r\n cipher.collectionIds = model.collectionIds;\r\n\r\n if (key == null && cipher.organizationId != null) {\r\n key = await this.cryptoService.getOrgKey(cipher.organizationId);\r\n if (key == null) {\r\n throw new Error('Cannot encrypt cipher for organization. No key.');\r\n }\r\n }\r\n await Promise.all([\r\n this.encryptObjProperty(model, cipher, {\r\n name: null,\r\n notes: null,\r\n }, key),\r\n this.encryptCipherData(cipher, model, key),\r\n this.encryptFields(model.fields, key).then((fields) => {\r\n cipher.fields = fields;\r\n }),\r\n this.encryptPasswordHistories(model.passwordHistory, key).then((ph) => {\r\n cipher.passwordHistory = ph;\r\n }),\r\n this.encryptAttachments(model.attachments, key).then((attachments) => {\r\n cipher.attachments = attachments;\r\n }),\r\n ]);\r\n\r\n return cipher;\r\n }\r\n\r\n async encryptAttachments(attachmentsModel: AttachmentView[], key: SymmetricCryptoKey): Promise {\r\n if (attachmentsModel == null || attachmentsModel.length === 0) {\r\n return null;\r\n }\r\n\r\n const promises: Array> = [];\r\n const encAttachments: Attachment[] = [];\r\n attachmentsModel.forEach(async (model) => {\r\n const attachment = new Attachment();\r\n attachment.id = model.id;\r\n attachment.size = model.size;\r\n attachment.sizeName = model.sizeName;\r\n attachment.url = model.url;\r\n const promise = this.encryptObjProperty(model, attachment, {\r\n fileName: null,\r\n }, key).then(async () => {\r\n if (model.key != null) {\r\n attachment.key = await this.cryptoService.encrypt(model.key.key, key);\r\n }\r\n encAttachments.push(attachment);\r\n });\r\n promises.push(promise);\r\n });\r\n\r\n await Promise.all(promises);\r\n return encAttachments;\r\n }\r\n\r\n async encryptFields(fieldsModel: FieldView[], key: SymmetricCryptoKey): Promise {\r\n if (!fieldsModel || !fieldsModel.length) {\r\n return null;\r\n }\r\n\r\n const self = this;\r\n const encFields: Field[] = [];\r\n await fieldsModel.reduce((promise, field) => {\r\n return promise.then(() => {\r\n return self.encryptField(field, key);\r\n }).then((encField: Field) => {\r\n encFields.push(encField);\r\n });\r\n }, Promise.resolve());\r\n\r\n return encFields;\r\n }\r\n\r\n async encryptField(fieldModel: FieldView, key: SymmetricCryptoKey): Promise {\r\n const field = new Field();\r\n field.type = fieldModel.type;\r\n // normalize boolean type field values\r\n if (fieldModel.type === FieldType.Boolean && fieldModel.value !== 'true') {\r\n fieldModel.value = 'false';\r\n }\r\n\r\n await this.encryptObjProperty(fieldModel, field, {\r\n name: null,\r\n value: null,\r\n }, key);\r\n\r\n return field;\r\n }\r\n\r\n async encryptPasswordHistories(phModels: PasswordHistoryView[], key: SymmetricCryptoKey): Promise {\r\n if (!phModels || !phModels.length) {\r\n return null;\r\n }\r\n\r\n const self = this;\r\n const encPhs: Password[] = [];\r\n await phModels.reduce((promise, ph) => {\r\n return promise.then(() => {\r\n return self.encryptPasswordHistory(ph, key);\r\n }).then((encPh: Password) => {\r\n encPhs.push(encPh);\r\n });\r\n }, Promise.resolve());\r\n\r\n return encPhs;\r\n }\r\n\r\n async encryptPasswordHistory(phModel: PasswordHistoryView, key: SymmetricCryptoKey): Promise {\r\n const ph = new Password();\r\n ph.lastUsedDate = phModel.lastUsedDate;\r\n\r\n await this.encryptObjProperty(phModel, ph, {\r\n password: null,\r\n }, key);\r\n\r\n return ph;\r\n }\r\n\r\n async get(id: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const localData = await this.storageService.get(Keys.localData);\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null || !ciphers.hasOwnProperty(id)) {\r\n return null;\r\n }\r\n\r\n return new Cipher(ciphers[id], false, localData ? localData[id] : null);\r\n }\r\n\r\n async getAll(): Promise {\r\n const userId = await this.userService.getUserId();\r\n const localData = await this.storageService.get(Keys.localData);\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n const response: Cipher[] = [];\r\n for (const id in ciphers) {\r\n if (ciphers.hasOwnProperty(id)) {\r\n response.push(new Cipher(ciphers[id], false, localData ? localData[id] : null));\r\n }\r\n }\r\n return response;\r\n }\r\n\r\n @sequentialize(() => 'getAllDecrypted')\r\n async getAllDecrypted(): Promise {\r\n if (this.decryptedCipherCache != null) {\r\n return this.decryptedCipherCache;\r\n }\r\n\r\n const decCiphers: CipherView[] = [];\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n throw new Error('No key.');\r\n }\r\n\r\n const promises: any[] = [];\r\n const ciphers = await this.getAll();\r\n ciphers.forEach((cipher) => {\r\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\r\n });\r\n\r\n await Promise.all(promises);\r\n decCiphers.sort(this.getLocaleSortingFunction());\r\n this.decryptedCipherCache = decCiphers;\r\n return this.decryptedCipherCache;\r\n }\r\n\r\n async getAllDecryptedForGrouping(groupingId: string, folder: boolean = true): Promise {\r\n const ciphers = await this.getAllDecrypted();\r\n\r\n return ciphers.filter((cipher) => {\r\n if (folder && cipher.folderId === groupingId) {\r\n return true;\r\n } else if (!folder && cipher.collectionIds != null && cipher.collectionIds.indexOf(groupingId) > -1) {\r\n return true;\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n\r\n async getAllDecryptedForUrl(url: string, includeOtherTypes?: CipherType[]): Promise {\r\n if (url == null && !includeOtherTypes) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const domain = Utils.getDomain(url);\r\n const eqDomainsPromise = domain == null ? Promise.resolve([]) :\r\n this.settingsService.getEquivalentDomains().then((eqDomains: any[][]) => {\r\n let matches: any[] = [];\r\n eqDomains.forEach((eqDomain) => {\r\n if (eqDomain.length && eqDomain.indexOf(domain) >= 0) {\r\n matches = matches.concat(eqDomain);\r\n }\r\n });\r\n\r\n if (!matches.length) {\r\n matches.push(domain);\r\n }\r\n\r\n return matches;\r\n });\r\n\r\n const result = await Promise.all([eqDomainsPromise, this.getAllDecrypted()]);\r\n const matchingDomains = result[0];\r\n const ciphers = result[1];\r\n\r\n return ciphers.filter((cipher) => {\r\n if (includeOtherTypes && includeOtherTypes.indexOf(cipher.type) > -1) {\r\n return true;\r\n }\r\n\r\n if (url != null && cipher.type === CipherType.Login && cipher.login.uris != null) {\r\n for (let i = 0; i < cipher.login.uris.length; i++) {\r\n const u = cipher.login.uris[i];\r\n if (u.uri == null) {\r\n continue;\r\n }\r\n\r\n switch (u.match) {\r\n case null:\r\n case undefined:\r\n case UriMatchType.Domain:\r\n if (domain != null && u.domain != null && matchingDomains.indexOf(u.domain) > -1) {\r\n if (DomainMatchBlacklist.has(u.domain)) {\r\n const domainUrlHost = Utils.getHost(url);\r\n if (!DomainMatchBlacklist.get(u.domain).has(domainUrlHost)) {\r\n return true;\r\n }\r\n } else {\r\n return true;\r\n }\r\n }\r\n break;\r\n case UriMatchType.Host:\r\n const urlHost = Utils.getHost(url);\r\n if (urlHost != null && urlHost === Utils.getHost(u.uri)) {\r\n return true;\r\n }\r\n break;\r\n case UriMatchType.Exact:\r\n if (url === u.uri) {\r\n return true;\r\n }\r\n break;\r\n case UriMatchType.StartsWith:\r\n if (url.startsWith(u.uri)) {\r\n return true;\r\n }\r\n break;\r\n case UriMatchType.RegularExpression:\r\n try {\r\n const regex = new RegExp(u.uri, 'i');\r\n if (regex.test(url)) {\r\n return true;\r\n }\r\n } catch { }\r\n break;\r\n case UriMatchType.Never:\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n\r\n async getAllFromApiForOrganization(organizationId: string): Promise {\r\n const ciphers = await this.apiService.getCiphersOrganization(organizationId);\r\n if (ciphers != null && ciphers.data != null && ciphers.data.length) {\r\n const decCiphers: CipherView[] = [];\r\n const promises: any[] = [];\r\n ciphers.data.forEach((r) => {\r\n const data = new CipherData(r);\r\n const cipher = new Cipher(data);\r\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\r\n });\r\n await Promise.all(promises);\r\n decCiphers.sort(this.getLocaleSortingFunction());\r\n return decCiphers;\r\n } else {\r\n return [];\r\n }\r\n }\r\n\r\n async getLastUsedForUrl(url: string): Promise {\r\n const ciphers = await this.getAllDecryptedForUrl(url);\r\n if (ciphers.length === 0) {\r\n return null;\r\n }\r\n\r\n const sortedCiphers = ciphers.sort(this.sortCiphersByLastUsed);\r\n return sortedCiphers[0];\r\n }\r\n\r\n async updateLastUsedDate(id: string): Promise {\r\n let ciphersLocalData = await this.storageService.get(Keys.localData);\r\n if (!ciphersLocalData) {\r\n ciphersLocalData = {};\r\n }\r\n\r\n if (ciphersLocalData[id]) {\r\n ciphersLocalData[id].lastUsedDate = new Date().getTime();\r\n } else {\r\n ciphersLocalData[id] = {\r\n lastUsedDate: new Date().getTime(),\r\n };\r\n }\r\n\r\n await this.storageService.save(Keys.localData, ciphersLocalData);\r\n\r\n if (this.decryptedCipherCache == null) {\r\n return;\r\n }\r\n\r\n for (let i = 0; i < this.decryptedCipherCache.length; i++) {\r\n const cached = this.decryptedCipherCache[i];\r\n if (cached.id === id) {\r\n cached.localData = ciphersLocalData[id];\r\n break;\r\n }\r\n }\r\n }\r\n\r\n async saveNeverDomain(domain: string): Promise {\r\n if (domain == null) {\r\n return;\r\n }\r\n\r\n let domains = await this.storageService.get<{ [id: string]: any; }>(Keys.neverDomains);\r\n if (!domains) {\r\n domains = {};\r\n }\r\n domains[domain] = null;\r\n await this.storageService.save(Keys.neverDomains, domains);\r\n }\r\n\r\n async saveWithServer(cipher: Cipher): Promise {\r\n let response: CipherResponse;\r\n if (cipher.id == null) {\r\n if (cipher.collectionIds != null) {\r\n const request = new CipherCreateRequest(cipher);\r\n response = await this.apiService.postCipherCreate(request);\r\n } else {\r\n const request = new CipherRequest(cipher);\r\n response = await this.apiService.postCipher(request);\r\n }\r\n cipher.id = response.id;\r\n } else {\r\n const request = new CipherRequest(cipher);\r\n response = await this.apiService.putCipher(cipher.id, request);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const data = new CipherData(response, userId, cipher.collectionIds);\r\n await this.upsert(data);\r\n }\r\n\r\n async shareWithServer(cipher: CipherView, organizationId: string, collectionIds: string[]): Promise {\r\n const attachmentPromises: Array> = [];\r\n if (cipher.attachments != null) {\r\n cipher.attachments.forEach((attachment) => {\r\n if (attachment.key == null) {\r\n attachmentPromises.push(this.shareAttachmentWithServer(attachment, cipher.id, organizationId));\r\n }\r\n });\r\n }\r\n await Promise.all(attachmentPromises);\r\n\r\n cipher.organizationId = organizationId;\r\n cipher.collectionIds = collectionIds;\r\n const encCipher = await this.encrypt(cipher);\r\n const request = new CipherShareRequest(encCipher);\r\n const response = await this.apiService.putShareCipher(cipher.id, request);\r\n const userId = await this.userService.getUserId();\r\n const data = new CipherData(response, userId, collectionIds);\r\n await this.upsert(data);\r\n }\r\n\r\n async shareManyWithServer(ciphers: CipherView[], organizationId: string, collectionIds: string[]): Promise {\r\n const promises: Array> = [];\r\n const encCiphers: Cipher[] = [];\r\n for (const cipher of ciphers) {\r\n cipher.organizationId = organizationId;\r\n cipher.collectionIds = collectionIds;\r\n promises.push(this.encrypt(cipher).then((c) => {\r\n encCiphers.push(c);\r\n }));\r\n }\r\n await Promise.all(promises);\r\n const request = new CipherBulkShareRequest(encCiphers, collectionIds);\r\n await this.apiService.putShareCiphers(request);\r\n const userId = await this.userService.getUserId();\r\n await this.upsert(encCiphers.map((c) => c.toCipherData(userId)));\r\n }\r\n\r\n saveAttachmentWithServer(cipher: Cipher, unencryptedFile: any, admin = false): Promise {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n reader.readAsArrayBuffer(unencryptedFile);\r\n reader.onload = async (evt: any) => {\r\n try {\r\n const cData = await this.saveAttachmentRawWithServer(cipher,\r\n unencryptedFile.name, evt.target.result, admin);\r\n resolve(cData);\r\n } catch (e) {\r\n reject(e);\r\n }\r\n };\r\n reader.onerror = (evt) => {\r\n reject('Error reading file.');\r\n };\r\n });\r\n }\r\n\r\n async saveAttachmentRawWithServer(cipher: Cipher, filename: string,\r\n data: ArrayBuffer, admin = false): Promise {\r\n const key = await this.cryptoService.getOrgKey(cipher.organizationId);\r\n const encFileName = await this.cryptoService.encrypt(filename, key);\r\n\r\n const dataEncKey = await this.cryptoService.makeEncKey(key);\r\n const encData = await this.cryptoService.encryptToBytes(data, dataEncKey[0]);\r\n\r\n const fd = new FormData();\r\n try {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n const blob = new Blob([encData], { type: 'application/octet-stream' });\r\n fd.append('data', blob, encFileName.encryptedString);\r\n } catch (e) {\r\n if (Utils.isNode && !Utils.isBrowser) {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n fd.append('data', Buffer.from(encData) as any, {\r\n filepath: encFileName.encryptedString,\r\n contentType: 'application/octet-stream',\r\n } as any);\r\n } else {\r\n throw e;\r\n }\r\n }\r\n\r\n let response: CipherResponse;\r\n try {\r\n if (admin) {\r\n response = await this.apiService.postCipherAttachmentAdmin(cipher.id, fd);\r\n } else {\r\n response = await this.apiService.postCipherAttachment(cipher.id, fd);\r\n }\r\n } catch (e) {\r\n throw new Error((e as ErrorResponse).getSingleMessage());\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const cData = new CipherData(response, userId, cipher.collectionIds);\r\n if (!admin) {\r\n this.upsert(cData);\r\n }\r\n return new Cipher(cData);\r\n }\r\n\r\n async saveCollectionsWithServer(cipher: Cipher): Promise {\r\n const request = new CipherCollectionsRequest(cipher.collectionIds);\r\n await this.apiService.putCipherCollections(cipher.id, request);\r\n const userId = await this.userService.getUserId();\r\n const data = cipher.toCipherData(userId);\r\n await this.upsert(data);\r\n }\r\n\r\n async upsert(cipher: CipherData | CipherData[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null) {\r\n ciphers = {};\r\n }\r\n\r\n if (cipher instanceof CipherData) {\r\n const c = cipher as CipherData;\r\n ciphers[c.id] = c;\r\n } else {\r\n (cipher as CipherData[]).forEach((c) => {\r\n ciphers[c.id] = c;\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async replace(ciphers: { [id: string]: CipherData; }): Promise {\r\n const userId = await this.userService.getUserId();\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.ciphersPrefix + userId);\r\n this.clearCache();\r\n }\r\n\r\n async moveManyWithServer(ids: string[], folderId: string): Promise {\r\n await this.apiService.putMoveCiphers(new CipherBulkMoveRequest(ids, folderId));\r\n\r\n const userId = await this.userService.getUserId();\r\n let ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null) {\r\n ciphers = {};\r\n }\r\n\r\n ids.forEach((id) => {\r\n if (ciphers.hasOwnProperty(id)) {\r\n ciphers[id].folderId = folderId;\r\n }\r\n });\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async delete(id: string | string[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n if (ciphers == null) {\r\n return;\r\n }\r\n\r\n if (typeof id === 'string') {\r\n if (ciphers[id] == null) {\r\n return;\r\n }\r\n delete ciphers[id];\r\n } else {\r\n (id as string[]).forEach((i) => {\r\n delete ciphers[i];\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async deleteWithServer(id: string): Promise {\r\n await this.apiService.deleteCipher(id);\r\n await this.delete(id);\r\n }\r\n\r\n async deleteManyWithServer(ids: string[]): Promise {\r\n await this.apiService.deleteManyCiphers(new CipherBulkDeleteRequest(ids));\r\n await this.delete(ids);\r\n }\r\n\r\n async deleteAttachment(id: string, attachmentId: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(\r\n Keys.ciphersPrefix + userId);\r\n\r\n if (ciphers == null || !ciphers.hasOwnProperty(id) || ciphers[id].attachments == null) {\r\n return;\r\n }\r\n\r\n for (let i = 0; i < ciphers[id].attachments.length; i++) {\r\n if (ciphers[id].attachments[i].id === attachmentId) {\r\n ciphers[id].attachments.splice(i, 1);\r\n }\r\n }\r\n\r\n await this.storageService.save(Keys.ciphersPrefix + userId, ciphers);\r\n this.decryptedCipherCache = null;\r\n }\r\n\r\n async deleteAttachmentWithServer(id: string, attachmentId: string): Promise {\r\n try {\r\n await this.apiService.deleteCipherAttachment(id, attachmentId);\r\n } catch (e) {\r\n return Promise.reject((e as ErrorResponse).getSingleMessage());\r\n }\r\n await this.deleteAttachment(id, attachmentId);\r\n }\r\n\r\n sortCiphersByLastUsed(a: CipherView, b: CipherView): number {\r\n const aLastUsed = a.localData && a.localData.lastUsedDate ? a.localData.lastUsedDate as number : null;\r\n const bLastUsed = b.localData && b.localData.lastUsedDate ? b.localData.lastUsedDate as number : null;\r\n\r\n if (aLastUsed != null && bLastUsed != null && aLastUsed < bLastUsed) {\r\n return 1;\r\n }\r\n if (aLastUsed != null && bLastUsed == null) {\r\n return -1;\r\n }\r\n\r\n if (bLastUsed != null && aLastUsed != null && aLastUsed > bLastUsed) {\r\n return -1;\r\n }\r\n if (bLastUsed != null && aLastUsed == null) {\r\n return 1;\r\n }\r\n\r\n return 0;\r\n }\r\n\r\n sortCiphersByLastUsedThenName(a: CipherView, b: CipherView): number {\r\n const result = this.sortCiphersByLastUsed(a, b);\r\n if (result !== 0) {\r\n return result;\r\n }\r\n\r\n return this.getLocaleSortingFunction()(a, b);\r\n }\r\n\r\n getLocaleSortingFunction(): (a: CipherView, b: CipherView) => number {\r\n return (a, b) => {\r\n let aName = a.name;\r\n let bName = b.name;\r\n\r\n if (aName == null && bName != null) {\r\n return -1;\r\n }\r\n if (aName != null && bName == null) {\r\n return 1;\r\n }\r\n if (aName == null && bName == null) {\r\n return 0;\r\n }\r\n\r\n const result = this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\r\n aName.localeCompare(bName);\r\n\r\n if (result !== 0 || a.type !== CipherType.Login || b.type !== CipherType.Login) {\r\n return result;\r\n }\r\n\r\n if (a.login.username != null) {\r\n aName += a.login.username;\r\n }\r\n\r\n if (b.login.username != null) {\r\n bName += b.login.username;\r\n }\r\n\r\n return this.i18nService.collator ? this.i18nService.collator.compare(aName, bName) :\r\n aName.localeCompare(bName);\r\n };\r\n }\r\n\r\n // Helpers\r\n\r\n private async shareAttachmentWithServer(attachmentView: AttachmentView, cipherId: string,\r\n organizationId: string): Promise {\r\n const attachmentResponse = await fetch(new Request(attachmentView.url, { cache: 'no-cache' }));\r\n if (attachmentResponse.status !== 200) {\r\n throw Error('Failed to download attachment: ' + attachmentResponse.status.toString());\r\n }\r\n\r\n const buf = await attachmentResponse.arrayBuffer();\r\n const decBuf = await this.cryptoService.decryptFromBytes(buf, null);\r\n const key = await this.cryptoService.getOrgKey(organizationId);\r\n const encFileName = await this.cryptoService.encrypt(attachmentView.fileName, key);\r\n\r\n const dataEncKey = await this.cryptoService.makeEncKey(key);\r\n const encData = await this.cryptoService.encryptToBytes(decBuf, dataEncKey[0]);\r\n\r\n const fd = new FormData();\r\n try {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n const blob = new Blob([encData], { type: 'application/octet-stream' });\r\n fd.append('data', blob, encFileName.encryptedString);\r\n } catch (e) {\r\n if (Utils.isNode && !Utils.isBrowser) {\r\n fd.append('key', dataEncKey[1].encryptedString);\r\n fd.append('data', Buffer.from(encData) as any, {\r\n filepath: encFileName.encryptedString,\r\n contentType: 'application/octet-stream',\r\n } as any);\r\n } else {\r\n throw e;\r\n }\r\n }\r\n\r\n try {\r\n await this.apiService.postShareCipherAttachment(cipherId, attachmentView.id, fd, organizationId);\r\n } catch (e) {\r\n throw new Error((e as ErrorResponse).getSingleMessage());\r\n }\r\n }\r\n\r\n private async encryptObjProperty(model: V, obj: D,\r\n map: any, key: SymmetricCryptoKey): Promise {\r\n const promises = [];\r\n const self = this;\r\n\r\n for (const prop in map) {\r\n if (!map.hasOwnProperty(prop)) {\r\n continue;\r\n }\r\n\r\n // tslint:disable-next-line\r\n (function (theProp, theObj) {\r\n const p = Promise.resolve().then(() => {\r\n const modelProp = (model as any)[(map[theProp] || theProp)];\r\n if (modelProp && modelProp !== '') {\r\n return self.cryptoService.encrypt(modelProp, key);\r\n }\r\n return null;\r\n }).then((val: CipherString) => {\r\n (theObj as any)[theProp] = val;\r\n });\r\n promises.push(p);\r\n })(prop, obj);\r\n }\r\n\r\n await Promise.all(promises);\r\n }\r\n\r\n private async encryptCipherData(cipher: Cipher, model: CipherView, key: SymmetricCryptoKey) {\r\n switch (cipher.type) {\r\n case CipherType.Login:\r\n cipher.login = new Login();\r\n cipher.login.passwordRevisionDate = model.login.passwordRevisionDate;\r\n await this.encryptObjProperty(model.login, cipher.login, {\r\n username: null,\r\n password: null,\r\n totp: null,\r\n }, key);\r\n\r\n if (model.login.uris != null) {\r\n cipher.login.uris = [];\r\n for (let i = 0; i < model.login.uris.length; i++) {\r\n const loginUri = new LoginUri();\r\n loginUri.match = model.login.uris[i].match;\r\n await this.encryptObjProperty(model.login.uris[i], loginUri, {\r\n uri: null,\r\n }, key);\r\n cipher.login.uris.push(loginUri);\r\n }\r\n }\r\n return;\r\n case CipherType.SecureNote:\r\n cipher.secureNote = new SecureNote();\r\n cipher.secureNote.type = model.secureNote.type;\r\n return;\r\n case CipherType.Card:\r\n cipher.card = new Card();\r\n await this.encryptObjProperty(model.card, cipher.card, {\r\n cardholderName: null,\r\n brand: null,\r\n number: null,\r\n expMonth: null,\r\n expYear: null,\r\n code: null,\r\n }, key);\r\n return;\r\n case CipherType.Identity:\r\n cipher.identity = new Identity();\r\n await this.encryptObjProperty(model.identity, cipher.identity, {\r\n title: null,\r\n firstName: null,\r\n middleName: null,\r\n lastName: null,\r\n address1: null,\r\n address2: null,\r\n address3: null,\r\n city: null,\r\n state: null,\r\n postalCode: null,\r\n country: null,\r\n company: null,\r\n email: null,\r\n phone: null,\r\n ssn: null,\r\n username: null,\r\n passportNumber: null,\r\n licenseNumber: null,\r\n }, key);\r\n return;\r\n default:\r\n throw new Error('Unknown cipher type.');\r\n }\r\n }\r\n}\r\n","/**\r\n * Use as a Decorator on async functions, it will prevent multiple 'active' calls as the same time\r\n *\r\n * If a promise was returned from a previous call to this function, that hasn't yet resolved it will\r\n * be returned, instead of calling the original function again\r\n *\r\n * Results are not cached, once the promise has returned, the next call will result in a fresh call\r\n *\r\n * WARNING: The decorator's scope is singleton, so using it on transient objects can lead to memory leaks.\r\n * Read more at https://github.com/bitwarden/jslib/pull/7\r\n */\r\nexport function sequentialize(cacheKey: (args: any[]) => string) {\r\n return (target: any, propertyKey: string | symbol, descriptor: PropertyDescriptor) => {\r\n const originalMethod: () => Promise = descriptor.value;\r\n const caches = new Map>>();\r\n\r\n const getCache = (obj: any) => {\r\n let cache = caches.get(obj);\r\n if (cache != null) {\r\n return cache;\r\n }\r\n cache = new Map>();\r\n caches.set(obj, cache);\r\n return cache;\r\n };\r\n\r\n return {\r\n value: function(...args: any[]) {\r\n const argsCacheKey = cacheKey(args);\r\n const cache = getCache(this);\r\n let response = cache.get(argsCacheKey);\r\n if (response != null) {\r\n return response;\r\n }\r\n\r\n response = originalMethod.apply(this, args).then((val: any) => {\r\n cache.delete(argsCacheKey);\r\n return val;\r\n }).catch((err: any) => {\r\n cache.delete(argsCacheKey);\r\n throw err;\r\n });\r\n\r\n cache.set(argsCacheKey, response);\r\n return response;\r\n },\r\n };\r\n };\r\n}\r\n","import { CollectionData } from '../models/data/collectionData';\n\nimport { Collection } from '../models/domain/collection';\nimport { TreeNode } from '../models/domain/treeNode';\n\nimport { CollectionView } from '../models/view/collectionView';\n\nimport { CollectionService as CollectionServiceAbstraction } from '../abstractions/collection.service';\nimport { CryptoService } from '../abstractions/crypto.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { UserService } from '../abstractions/user.service';\n\nimport { ServiceUtils } from '../misc/serviceUtils';\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n collectionsPrefix: 'collections_',\n};\nconst NestingDelimiter = '/';\n\nexport class CollectionService implements CollectionServiceAbstraction {\n decryptedCollectionCache: CollectionView[];\n\n constructor(private cryptoService: CryptoService, private userService: UserService,\n private storageService: StorageService, private i18nService: I18nService) {\n }\n\n clearCache(): void {\n this.decryptedCollectionCache = null;\n }\n\n async encrypt(model: CollectionView): Promise {\n if (model.organizationId == null) {\n throw new Error('Collection has no organization id.');\n }\n const key = await this.cryptoService.getOrgKey(model.organizationId);\n if (key == null) {\n throw new Error('No key for this collection\\'s organization.');\n }\n const collection = new Collection();\n collection.id = model.id;\n collection.organizationId = model.organizationId;\n collection.readOnly = model.readOnly;\n collection.name = await this.cryptoService.encrypt(model.name, key);\n return collection;\n }\n\n async decryptMany(collections: Collection[]): Promise {\n if (collections == null) {\n return [];\n }\n const decCollections: CollectionView[] = [];\n const promises: Array> = [];\n collections.forEach((collection) => {\n promises.push(collection.decrypt().then((c) => decCollections.push(c)));\n });\n await Promise.all(promises);\n return decCollections.sort(Utils.getSortFunction(this.i18nService, 'name'));\n }\n\n async get(id: string): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null || !collections.hasOwnProperty(id)) {\n return null;\n }\n\n return new Collection(collections[id]);\n }\n\n async getAll(): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n const response: Collection[] = [];\n for (const id in collections) {\n if (collections.hasOwnProperty(id)) {\n response.push(new Collection(collections[id]));\n }\n }\n return response;\n }\n\n async getAllDecrypted(): Promise {\n if (this.decryptedCollectionCache != null) {\n return this.decryptedCollectionCache;\n }\n\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n throw new Error('No key.');\n }\n\n const collections = await this.getAll();\n this.decryptedCollectionCache = await this.decryptMany(collections);\n return this.decryptedCollectionCache;\n }\n\n async getAllNested(collections: CollectionView[] = null): Promise>> {\n if (collections == null) {\n collections = await this.getAllDecrypted();\n }\n const nodes: Array> = [];\n collections.forEach((c) => {\n const collectionCopy = new CollectionView();\n collectionCopy.id = c.id;\n collectionCopy.organizationId = c.organizationId;\n ServiceUtils.nestedTraverse(nodes, 0, c.name.split(NestingDelimiter), collectionCopy,\n null, NestingDelimiter);\n });\n return nodes;\n }\n\n async getNested(id: string): Promise> {\n const collections = await this.getAllNested();\n return ServiceUtils.getTreeNodeObject(collections, id) as TreeNode;\n }\n\n async upsert(collection: CollectionData | CollectionData[]): Promise {\n const userId = await this.userService.getUserId();\n let collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n collections = {};\n }\n\n if (collection instanceof CollectionData) {\n const c = collection as CollectionData;\n collections[c.id] = c;\n } else {\n (collection as CollectionData[]).forEach((c) => {\n collections[c.id] = c;\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async replace(collections: { [id: string]: CollectionData; }): Promise {\n const userId = await this.userService.getUserId();\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n\n async clear(userId: string): Promise {\n await this.storageService.remove(Keys.collectionsPrefix + userId);\n this.decryptedCollectionCache = null;\n }\n\n async delete(id: string | string[]): Promise {\n const userId = await this.userService.getUserId();\n const collections = await this.storageService.get<{ [id: string]: CollectionData; }>(\n Keys.collectionsPrefix + userId);\n if (collections == null) {\n return;\n }\n\n if (typeof id === 'string') {\n const i = id as string;\n delete collections[id];\n } else {\n (id as string[]).forEach((i) => {\n delete collections[i];\n });\n }\n\n await this.storageService.save(Keys.collectionsPrefix + userId, collections);\n this.decryptedCollectionCache = null;\n }\n}\n","import {\r\n ITreeNodeObject,\r\n TreeNode,\r\n} from '../models/domain/treeNode';\r\n\r\nexport class ServiceUtils {\r\n static nestedTraverse(nodeTree: Array>, partIndex: number, parts: string[],\r\n obj: ITreeNodeObject, parent: ITreeNodeObject, delimiter: string) {\r\n if (parts.length <= partIndex) {\r\n return;\r\n }\r\n\r\n const end = partIndex === parts.length - 1;\r\n const partName = parts[partIndex];\r\n\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.name !== parts[partIndex]) {\r\n continue;\r\n }\r\n if (end && nodeTree[i].node.id !== obj.id) {\r\n // Another node with the same name.\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n ServiceUtils.nestedTraverse(nodeTree[i].children, partIndex + 1, parts,\r\n obj, nodeTree[i].node, delimiter);\r\n return;\r\n }\r\n\r\n if (nodeTree.filter((n) => n.node.name === partName).length === 0) {\r\n if (end) {\r\n nodeTree.push(new TreeNode(obj, partName, parent));\r\n return;\r\n }\r\n const newPartName = parts[partIndex] + delimiter + parts[partIndex + 1];\r\n ServiceUtils.nestedTraverse(nodeTree, 0, [newPartName, ...parts.slice(partIndex + 2)],\r\n obj, parent, delimiter);\r\n }\r\n }\r\n\r\n static getTreeNodeObject(nodeTree: Array>, id: string): TreeNode {\r\n for (let i = 0; i < nodeTree.length; i++) {\r\n if (nodeTree[i].node.id === id) {\r\n return nodeTree[i];\r\n } else if (nodeTree[i].children != null) {\r\n const node = ServiceUtils.getTreeNodeObject(nodeTree[i].children, id);\r\n if (node !== null) {\r\n return node;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n}\r\n","import { CryptoService } from '../abstractions/crypto.service';\r\n\r\nexport class ContainerService {\r\n constructor(private cryptoService: CryptoService) {\r\n }\r\n\r\n // deprecated, use attachToGlobal instead\r\n attachToWindow(win: any) {\r\n this.attachToGlobal(win);\r\n }\r\n\r\n attachToGlobal(global: any) {\r\n if (!global.bitwardenContainerService) {\r\n global.bitwardenContainerService = this;\r\n }\r\n }\r\n\r\n getCryptoService(): CryptoService {\r\n return this.cryptoService;\r\n }\r\n}\r\n","import * as bigInt from 'big-integer';\r\n\r\nimport { EncryptionType } from '../enums/encryptionType';\r\nimport { KdfType } from '../enums/kdfType';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { EncryptedObject } from '../models/domain/encryptedObject';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\r\n\r\nimport { CryptoService as CryptoServiceAbstraction } from '../abstractions/crypto.service';\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { ConstantsService } from './constants.service';\r\n\r\nimport { sequentialize } from '../misc/sequentialize';\r\nimport { Utils } from '../misc/utils';\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst Keys = {\r\n key: 'key',\r\n encOrgKeys: 'encOrgKeys',\r\n encPrivateKey: 'encPrivateKey',\r\n encKey: 'encKey',\r\n keyHash: 'keyHash',\r\n};\r\n\r\nexport class CryptoService implements CryptoServiceAbstraction {\r\n private key: SymmetricCryptoKey;\r\n private encKey: SymmetricCryptoKey;\r\n private legacyEtmKey: SymmetricCryptoKey;\r\n private keyHash: string;\r\n private publicKey: ArrayBuffer;\r\n private privateKey: ArrayBuffer;\r\n private orgKeys: Map;\r\n\r\n constructor(private storageService: StorageService, private secureStorageService: StorageService,\r\n private cryptoFunctionService: CryptoFunctionService) { }\r\n\r\n async setKey(key: SymmetricCryptoKey): Promise {\r\n this.key = key;\r\n\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null) {\r\n // if we have a lock option set, we do not store the key\r\n return;\r\n }\r\n\r\n return this.secureStorageService.save(Keys.key, key.keyB64);\r\n }\r\n\r\n setKeyHash(keyHash: string): Promise<{}> {\r\n this.keyHash = keyHash;\r\n return this.storageService.save(Keys.keyHash, keyHash);\r\n }\r\n\r\n async setEncKey(encKey: string): Promise<{}> {\r\n if (encKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encKey, encKey);\r\n this.encKey = null;\r\n }\r\n\r\n async setEncPrivateKey(encPrivateKey: string): Promise<{}> {\r\n if (encPrivateKey == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.encPrivateKey, encPrivateKey);\r\n this.privateKey = null;\r\n }\r\n\r\n setOrgKeys(orgs: ProfileOrganizationResponse[]): Promise<{}> {\r\n const orgKeys: any = {};\r\n orgs.forEach((org) => {\r\n orgKeys[org.id] = org.key;\r\n });\r\n\r\n this.orgKeys = null;\r\n return this.storageService.save(Keys.encOrgKeys, orgKeys);\r\n }\r\n\r\n async getKey(): Promise {\r\n if (this.key != null) {\r\n return this.key;\r\n }\r\n\r\n const key = await this.secureStorageService.get(Keys.key);\r\n if (key != null) {\r\n this.key = new SymmetricCryptoKey(Utils.fromB64ToArray(key).buffer);\r\n }\r\n\r\n return key == null ? null : this.key;\r\n }\r\n\r\n getKeyHash(): Promise {\r\n if (this.keyHash != null) {\r\n return Promise.resolve(this.keyHash);\r\n }\r\n\r\n return this.storageService.get(Keys.keyHash);\r\n }\r\n\r\n @sequentialize(() => 'getEncKey')\r\n async getEncKey(): Promise {\r\n if (this.encKey != null) {\r\n return this.encKey;\r\n }\r\n\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n if (encKey == null) {\r\n return null;\r\n }\r\n\r\n const key = await this.getKey();\r\n if (key == null) {\r\n return null;\r\n }\r\n\r\n let decEncKey: ArrayBuffer;\r\n const encKeyCipher = new CipherString(encKey);\r\n if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_B64) {\r\n decEncKey = await this.decryptToBytes(encKeyCipher, key);\r\n } else if (encKeyCipher.encryptionType === EncryptionType.AesCbc256_HmacSha256_B64) {\r\n const newKey = await this.stretchKey(key);\r\n decEncKey = await this.decryptToBytes(encKeyCipher, newKey);\r\n } else {\r\n throw new Error('Unsupported encKey type.');\r\n }\r\n\r\n if (decEncKey == null) {\r\n return null;\r\n }\r\n this.encKey = new SymmetricCryptoKey(decEncKey);\r\n return this.encKey;\r\n }\r\n\r\n async getPublicKey(): Promise {\r\n if (this.publicKey != null) {\r\n return this.publicKey;\r\n }\r\n\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n return null;\r\n }\r\n\r\n this.publicKey = await this.cryptoFunctionService.rsaExtractPublicKey(privateKey);\r\n return this.publicKey;\r\n }\r\n\r\n async getPrivateKey(): Promise {\r\n if (this.privateKey != null) {\r\n return this.privateKey;\r\n }\r\n\r\n const encPrivateKey = await this.storageService.get(Keys.encPrivateKey);\r\n if (encPrivateKey == null) {\r\n return null;\r\n }\r\n\r\n this.privateKey = await this.decryptToBytes(new CipherString(encPrivateKey), null);\r\n return this.privateKey;\r\n }\r\n\r\n async getFingerprint(userId: string, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey === null) {\r\n throw new Error('No public key available.');\r\n }\r\n const keyFingerprint = await this.cryptoFunctionService.hash(publicKey, 'sha256');\r\n const userFingerprint = await this.hkdfExpand(keyFingerprint, Utils.fromUtf8ToArray(userId), 32);\r\n return this.hashPhrase(userFingerprint.buffer);\r\n }\r\n\r\n @sequentialize(() => 'getOrgKeys')\r\n async getOrgKeys(): Promise> {\r\n if (this.orgKeys != null && this.orgKeys.size > 0) {\r\n return this.orgKeys;\r\n }\r\n\r\n const encOrgKeys = await this.storageService.get(Keys.encOrgKeys);\r\n if (encOrgKeys == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys: Map = new Map();\r\n let setKey = false;\r\n\r\n for (const orgId in encOrgKeys) {\r\n if (!encOrgKeys.hasOwnProperty(orgId)) {\r\n continue;\r\n }\r\n\r\n const decValue = await this.rsaDecrypt(encOrgKeys[orgId]);\r\n orgKeys.set(orgId, new SymmetricCryptoKey(decValue));\r\n setKey = true;\r\n }\r\n\r\n if (setKey) {\r\n this.orgKeys = orgKeys;\r\n }\r\n\r\n return this.orgKeys;\r\n }\r\n\r\n async getOrgKey(orgId: string): Promise {\r\n if (orgId == null) {\r\n return null;\r\n }\r\n\r\n const orgKeys = await this.getOrgKeys();\r\n if (orgKeys == null || !orgKeys.has(orgId)) {\r\n return null;\r\n }\r\n\r\n return orgKeys.get(orgId);\r\n }\r\n\r\n async hasKey(): Promise {\r\n return (await this.getKey()) != null;\r\n }\r\n\r\n async hasEncKey(): Promise {\r\n const encKey = await this.storageService.get(Keys.encKey);\r\n return encKey != null;\r\n }\r\n\r\n clearKey(): Promise {\r\n this.key = this.legacyEtmKey = null;\r\n return this.secureStorageService.remove(Keys.key);\r\n }\r\n\r\n clearKeyHash(): Promise {\r\n this.keyHash = null;\r\n return this.storageService.remove(Keys.keyHash);\r\n }\r\n\r\n clearEncKey(memoryOnly?: boolean): Promise {\r\n this.encKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encKey);\r\n }\r\n\r\n clearKeyPair(memoryOnly?: boolean): Promise {\r\n this.privateKey = null;\r\n this.publicKey = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encPrivateKey);\r\n }\r\n\r\n clearOrgKeys(memoryOnly?: boolean): Promise {\r\n this.orgKeys = null;\r\n if (memoryOnly) {\r\n return Promise.resolve();\r\n }\r\n return this.storageService.remove(Keys.encOrgKeys);\r\n }\r\n\r\n clearKeys(): Promise {\r\n return Promise.all([\r\n this.clearKey(),\r\n this.clearKeyHash(),\r\n this.clearOrgKeys(),\r\n this.clearEncKey(),\r\n this.clearKeyPair(),\r\n ]);\r\n }\r\n\r\n async toggleKey(): Promise {\r\n const key = await this.getKey();\r\n const option = await this.storageService.get(ConstantsService.lockOptionKey);\r\n if (option != null || option === 0) {\r\n // if we have a lock option set, clear the key\r\n await this.clearKey();\r\n this.key = key;\r\n return;\r\n }\r\n\r\n await this.setKey(key);\r\n }\r\n\r\n async makeKey(password: string, salt: string, kdf: KdfType, kdfIterations: number):\r\n Promise {\r\n let key: ArrayBuffer = null;\r\n if (kdf == null || kdf === KdfType.PBKDF2_SHA256) {\r\n if (kdfIterations == null) {\r\n kdfIterations = 5000;\r\n } else if (kdfIterations < 5000) {\r\n throw new Error('PBKDF2 iteration minimum is 5000.');\r\n }\r\n key = await this.cryptoFunctionService.pbkdf2(password, salt, 'sha256', kdfIterations);\r\n } else {\r\n throw new Error('Unknown Kdf.');\r\n }\r\n return new SymmetricCryptoKey(key);\r\n }\r\n\r\n async makeShareKey(): Promise<[CipherString, SymmetricCryptoKey]> {\r\n const shareKey = await this.cryptoFunctionService.randomBytes(64);\r\n const publicKey = await this.getPublicKey();\r\n const encShareKey = await this.rsaEncrypt(shareKey, publicKey);\r\n return [encShareKey, new SymmetricCryptoKey(shareKey)];\r\n }\r\n\r\n async makeKeyPair(key?: SymmetricCryptoKey): Promise<[string, CipherString]> {\r\n const keyPair = await this.cryptoFunctionService.rsaGenerateKeyPair(2048);\r\n const publicB64 = Utils.fromBufferToB64(keyPair[0]);\r\n const privateEnc = await this.encrypt(keyPair[1], key);\r\n return [publicB64, privateEnc];\r\n }\r\n\r\n async hashPassword(password: string, key: SymmetricCryptoKey): Promise {\r\n if (key == null) {\r\n key = await this.getKey();\r\n }\r\n if (password == null || key == null) {\r\n throw new Error('Invalid parameters.');\r\n }\r\n\r\n const hash = await this.cryptoFunctionService.pbkdf2(key.key, password, 'sha256', 1);\r\n return Utils.fromBufferToB64(hash);\r\n }\r\n\r\n async makeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const theKey = await this.getKeyForEncryption(key);\r\n const encKey = await this.cryptoFunctionService.randomBytes(64);\r\n return this.buildEncKey(theKey, encKey);\r\n }\r\n\r\n async remakeEncKey(key: SymmetricCryptoKey): Promise<[SymmetricCryptoKey, CipherString]> {\r\n const encKey = await this.getEncKey();\r\n return this.buildEncKey(key, encKey.key);\r\n }\r\n\r\n async encrypt(plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n if (plainValue == null) {\r\n return Promise.resolve(null);\r\n }\r\n\r\n let plainBuf: ArrayBuffer;\r\n if (typeof (plainValue) === 'string') {\r\n plainBuf = Utils.fromUtf8ToArray(plainValue).buffer;\r\n } else {\r\n plainBuf = plainValue;\r\n }\r\n\r\n const encObj = await this.aesEncrypt(plainBuf, key);\r\n const iv = Utils.fromBufferToB64(encObj.iv);\r\n const data = Utils.fromBufferToB64(encObj.data);\r\n const mac = encObj.mac != null ? Utils.fromBufferToB64(encObj.mac) : null;\r\n return new CipherString(encObj.key.encType, iv, data, mac);\r\n }\r\n\r\n async encryptToBytes(plainValue: ArrayBuffer, key?: SymmetricCryptoKey): Promise {\r\n const encValue = await this.aesEncrypt(plainValue, key);\r\n let macLen = 0;\r\n if (encValue.mac != null) {\r\n macLen = encValue.mac.byteLength;\r\n }\r\n\r\n const encBytes = new Uint8Array(1 + encValue.iv.byteLength + macLen + encValue.data.byteLength);\r\n encBytes.set([encValue.key.encType]);\r\n encBytes.set(new Uint8Array(encValue.iv), 1);\r\n if (encValue.mac != null) {\r\n encBytes.set(new Uint8Array(encValue.mac), 1 + encValue.iv.byteLength);\r\n }\r\n\r\n encBytes.set(new Uint8Array(encValue.data), 1 + encValue.iv.byteLength + macLen);\r\n return encBytes.buffer;\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey?: ArrayBuffer): Promise {\r\n if (publicKey == null) {\r\n publicKey = await this.getPublicKey();\r\n }\r\n if (publicKey == null) {\r\n throw new Error('Public key unavailable.');\r\n }\r\n\r\n const encBytes = await this.cryptoFunctionService.rsaEncrypt(data, publicKey, 'sha1');\r\n return new CipherString(EncryptionType.Rsa2048_OaepSha1_B64, Utils.fromBufferToB64(encBytes));\r\n }\r\n\r\n async decryptToBytes(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n const iv = Utils.fromB64ToArray(cipherString.iv).buffer;\r\n const data = Utils.fromB64ToArray(cipherString.data).buffer;\r\n const mac = cipherString.mac ? Utils.fromB64ToArray(cipherString.mac).buffer : null;\r\n const decipher = await this.aesDecryptToBytes(cipherString.encryptionType, data, iv, mac, key);\r\n if (decipher == null) {\r\n return null;\r\n }\r\n\r\n return decipher;\r\n }\r\n\r\n async decryptToUtf8(cipherString: CipherString, key?: SymmetricCryptoKey): Promise {\r\n return await this.aesDecryptToUtf8(cipherString.encryptionType, cipherString.data,\r\n cipherString.iv, cipherString.mac, key);\r\n }\r\n\r\n async decryptFromBytes(encBuf: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n if (encBuf == null) {\r\n throw new Error('no encBuf.');\r\n }\r\n\r\n const encBytes = new Uint8Array(encBuf);\r\n const encType = encBytes[0];\r\n let ctBytes: Uint8Array = null;\r\n let ivBytes: Uint8Array = null;\r\n let macBytes: Uint8Array = null;\r\n\r\n switch (encType) {\r\n case EncryptionType.AesCbc128_HmacSha256_B64:\r\n case EncryptionType.AesCbc256_HmacSha256_B64:\r\n if (encBytes.length <= 49) { // 1 + 16 + 32 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n macBytes = encBytes.slice(17, 49);\r\n ctBytes = encBytes.slice(49);\r\n break;\r\n case EncryptionType.AesCbc256_B64:\r\n if (encBytes.length <= 17) { // 1 + 16 + ctLength\r\n return null;\r\n }\r\n\r\n ivBytes = encBytes.slice(1, 17);\r\n ctBytes = encBytes.slice(17);\r\n break;\r\n default:\r\n return null;\r\n }\r\n\r\n return await this.aesDecryptToBytes(encType, ctBytes.buffer, ivBytes.buffer,\r\n macBytes != null ? macBytes.buffer : null, key);\r\n }\r\n\r\n // EFForg/OpenWireless\r\n // ref https://github.com/EFForg/OpenWireless/blob/master/app/js/diceware.js\r\n async randomNumber(min: number, max: number): Promise {\r\n let rval = 0;\r\n const range = max - min + 1;\r\n const bitsNeeded = Math.ceil(Math.log2(range));\r\n if (bitsNeeded > 53) {\r\n throw new Error('We cannot generate numbers larger than 53 bits.');\r\n }\r\n\r\n const bytesNeeded = Math.ceil(bitsNeeded / 8);\r\n const mask = Math.pow(2, bitsNeeded) - 1;\r\n // 7776 -> (2^13 = 8192) -1 == 8191 or 0x00001111 11111111\r\n\r\n // Fill a byte array with N random numbers\r\n const byteArray = new Uint8Array(await this.cryptoFunctionService.randomBytes(bytesNeeded));\r\n\r\n let p = (bytesNeeded - 1) * 8;\r\n for (let i = 0; i < bytesNeeded; i++) {\r\n rval += byteArray[i] * Math.pow(2, p);\r\n p -= 8;\r\n }\r\n\r\n // Use & to apply the mask and reduce the number of recursive lookups\r\n // tslint:disable-next-line\r\n rval = rval & mask;\r\n\r\n if (rval >= range) {\r\n // Integer out of acceptable range\r\n return this.randomNumber(min, max);\r\n }\r\n\r\n // Return an integer that falls within the range\r\n return min + rval;\r\n }\r\n\r\n // Helpers\r\n\r\n private async aesEncrypt(data: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const obj = new EncryptedObject();\r\n obj.key = await this.getKeyForEncryption(key);\r\n obj.iv = await this.cryptoFunctionService.randomBytes(16);\r\n obj.data = await this.cryptoFunctionService.aesEncrypt(data, obj.iv, obj.key.encKey);\r\n\r\n if (obj.key.macKey != null) {\r\n const macData = new Uint8Array(obj.iv.byteLength + obj.data.byteLength);\r\n macData.set(new Uint8Array(obj.iv), 0);\r\n macData.set(new Uint8Array(obj.data), obj.iv.byteLength);\r\n obj.mac = await this.cryptoFunctionService.hmac(macData.buffer, obj.key.macKey, 'sha256');\r\n }\r\n\r\n return obj;\r\n }\r\n\r\n private async aesDecryptToUtf8(encType: EncryptionType, data: string, iv: string, mac: string,\r\n key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n // tslint:disable-next-line\r\n console.error('mac required.');\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n // tslint:disable-next-line\r\n console.error('encType unavailable.');\r\n return null;\r\n }\r\n\r\n const fastParams = this.cryptoFunctionService.aesDecryptFastParameters(data, iv, mac, theKey);\r\n if (fastParams.macKey != null && fastParams.mac != null) {\r\n const computedMac = await this.cryptoFunctionService.hmacFast(fastParams.macData,\r\n fastParams.macKey, 'sha256');\r\n const macsEqual = await this.cryptoFunctionService.compareFast(fastParams.mac, computedMac);\r\n if (!macsEqual) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return this.cryptoFunctionService.aesDecryptFast(fastParams);\r\n }\r\n\r\n private async aesDecryptToBytes(encType: EncryptionType, data: ArrayBuffer, iv: ArrayBuffer,\r\n mac: ArrayBuffer, key: SymmetricCryptoKey): Promise {\r\n const keyForEnc = await this.getKeyForEncryption(key);\r\n const theKey = this.resolveLegacyKey(encType, keyForEnc);\r\n\r\n if (theKey.macKey != null && mac == null) {\r\n return null;\r\n }\r\n\r\n if (theKey.encType !== encType) {\r\n return null;\r\n }\r\n\r\n if (theKey.macKey != null && mac != null) {\r\n const macData = new Uint8Array(iv.byteLength + data.byteLength);\r\n macData.set(new Uint8Array(iv), 0);\r\n macData.set(new Uint8Array(data), iv.byteLength);\r\n const computedMac = await this.cryptoFunctionService.hmac(macData.buffer, theKey.macKey, 'sha256');\r\n if (computedMac === null) {\r\n return null;\r\n }\r\n\r\n const macsMatch = await this.cryptoFunctionService.compare(mac, computedMac);\r\n if (!macsMatch) {\r\n // tslint:disable-next-line\r\n console.error('mac failed.');\r\n return null;\r\n }\r\n }\r\n\r\n return await this.cryptoFunctionService.aesDecrypt(data, iv, theKey.encKey);\r\n }\r\n\r\n private async rsaDecrypt(encValue: string): Promise {\r\n const headerPieces = encValue.split('.');\r\n let encType: EncryptionType = null;\r\n let encPieces: string[];\r\n\r\n if (headerPieces.length === 1) {\r\n encType = EncryptionType.Rsa2048_OaepSha256_B64;\r\n encPieces = [headerPieces[0]];\r\n } else if (headerPieces.length === 2) {\r\n try {\r\n encType = parseInt(headerPieces[0], null);\r\n encPieces = headerPieces[1].split('|');\r\n } catch (e) { }\r\n }\r\n\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n // HmacSha256 types are deprecated\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n if (encPieces == null || encPieces.length <= 0) {\r\n throw new Error('encPieces unavailable.');\r\n }\r\n\r\n const data = Utils.fromB64ToArray(encPieces[0]).buffer;\r\n const privateKey = await this.getPrivateKey();\r\n if (privateKey == null) {\r\n throw new Error('No private key.');\r\n }\r\n\r\n let alg: 'sha1' | 'sha256' = 'sha1';\r\n switch (encType) {\r\n case EncryptionType.Rsa2048_OaepSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n alg = 'sha256';\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha1_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n break;\r\n default:\r\n throw new Error('encType unavailable.');\r\n }\r\n\r\n return this.cryptoFunctionService.rsaDecrypt(data, privateKey, alg);\r\n }\r\n\r\n private async getKeyForEncryption(key?: SymmetricCryptoKey): Promise {\r\n if (key != null) {\r\n return key;\r\n }\r\n\r\n const encKey = await this.getEncKey();\r\n if (encKey != null) {\r\n return encKey;\r\n }\r\n\r\n return await this.getKey();\r\n }\r\n\r\n private resolveLegacyKey(encType: EncryptionType, key: SymmetricCryptoKey): SymmetricCryptoKey {\r\n if (encType === EncryptionType.AesCbc128_HmacSha256_B64 &&\r\n key.encType === EncryptionType.AesCbc256_B64) {\r\n // Old encrypt-then-mac scheme, make a new key\r\n if (this.legacyEtmKey == null) {\r\n this.legacyEtmKey = new SymmetricCryptoKey(key.key, EncryptionType.AesCbc128_HmacSha256_B64);\r\n }\r\n return this.legacyEtmKey;\r\n }\r\n\r\n return key;\r\n }\r\n\r\n private async stretchKey(key: SymmetricCryptoKey): Promise {\r\n const newKey = new Uint8Array(64);\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('enc'), 32));\r\n newKey.set(await this.hkdfExpand(key.key, Utils.fromUtf8ToArray('mac'), 32), 32);\r\n return new SymmetricCryptoKey(newKey.buffer);\r\n }\r\n\r\n // ref: https://tools.ietf.org/html/rfc5869\r\n private async hkdfExpand(prk: ArrayBuffer, info: Uint8Array, size: number) {\r\n const hashLen = 32; // sha256\r\n const okm = new Uint8Array(size);\r\n let previousT = new Uint8Array(0);\r\n const n = Math.ceil(size / hashLen);\r\n for (let i = 0; i < n; i++) {\r\n const t = new Uint8Array(previousT.length + info.length + 1);\r\n t.set(previousT);\r\n t.set(info, previousT.length);\r\n t.set([i + 1], t.length - 1);\r\n previousT = new Uint8Array(await this.cryptoFunctionService.hmac(t.buffer, prk, 'sha256'));\r\n okm.set(previousT, i * hashLen);\r\n }\r\n return okm;\r\n }\r\n\r\n private async hashPhrase(hash: ArrayBuffer, minimumEntropy: number = 64) {\r\n const entropyPerWord = Math.log(EEFLongWordList.length) / Math.log(2);\r\n let numWords = Math.ceil(minimumEntropy / entropyPerWord);\r\n\r\n const hashArr = Array.from(new Uint8Array(hash));\r\n const entropyAvailable = hashArr.length * 4;\r\n if (numWords * entropyPerWord > entropyAvailable) {\r\n throw new Error('Output entropy of hash function is too small');\r\n }\r\n\r\n const phrase: string[] = [];\r\n let hashNumber = bigInt.fromArray(hashArr, 256);\r\n while (numWords--) {\r\n const remainder = hashNumber.mod(EEFLongWordList.length);\r\n hashNumber = hashNumber.divide(EEFLongWordList.length);\r\n phrase.push(EEFLongWordList[remainder as any]);\r\n }\r\n return phrase;\r\n }\r\n\r\n private async buildEncKey(key: SymmetricCryptoKey, encKey: ArrayBuffer = null)\r\n : Promise<[SymmetricCryptoKey, CipherString]> {\r\n let encKeyEnc: CipherString = null;\r\n if (key.key.byteLength === 32) {\r\n const newKey = await this.stretchKey(key);\r\n encKeyEnc = await this.encrypt(encKey, newKey);\r\n } else if (key.key.byteLength === 64) {\r\n encKeyEnc = await this.encrypt(encKey, key);\r\n } else {\r\n throw new Error('Invalid key size.');\r\n }\r\n return [new SymmetricCryptoKey(encKey), encKeyEnc];\r\n }\r\n}\r\n","// EFF's Long Wordlist from https://www.eff.org/dice\r\nexport const EEFLongWordList = [\r\n 'abacus',\r\n 'abdomen',\r\n 'abdominal',\r\n 'abide',\r\n 'abiding',\r\n 'ability',\r\n 'ablaze',\r\n 'able',\r\n 'abnormal',\r\n 'abrasion',\r\n 'abrasive',\r\n 'abreast',\r\n 'abridge',\r\n 'abroad',\r\n 'abruptly',\r\n 'absence',\r\n 'absentee',\r\n 'absently',\r\n 'absinthe',\r\n 'absolute',\r\n 'absolve',\r\n 'abstain',\r\n 'abstract',\r\n 'absurd',\r\n 'accent',\r\n 'acclaim',\r\n 'acclimate',\r\n 'accompany',\r\n 'account',\r\n 'accuracy',\r\n 'accurate',\r\n 'accustom',\r\n 'acetone',\r\n 'achiness',\r\n 'aching',\r\n 'acid',\r\n 'acorn',\r\n 'acquaint',\r\n 'acquire',\r\n 'acre',\r\n 'acrobat',\r\n 'acronym',\r\n 'acting',\r\n 'action',\r\n 'activate',\r\n 'activator',\r\n 'active',\r\n 'activism',\r\n 'activist',\r\n 'activity',\r\n 'actress',\r\n 'acts',\r\n 'acutely',\r\n 'acuteness',\r\n 'aeration',\r\n 'aerobics',\r\n 'aerosol',\r\n 'aerospace',\r\n 'afar',\r\n 'affair',\r\n 'affected',\r\n 'affecting',\r\n 'affection',\r\n 'affidavit',\r\n 'affiliate',\r\n 'affirm',\r\n 'affix',\r\n 'afflicted',\r\n 'affluent',\r\n 'afford',\r\n 'affront',\r\n 'aflame',\r\n 'afloat',\r\n 'aflutter',\r\n 'afoot',\r\n 'afraid',\r\n 'afterglow',\r\n 'afterlife',\r\n 'aftermath',\r\n 'aftermost',\r\n 'afternoon',\r\n 'aged',\r\n 'ageless',\r\n 'agency',\r\n 'agenda',\r\n 'agent',\r\n 'aggregate',\r\n 'aghast',\r\n 'agile',\r\n 'agility',\r\n 'aging',\r\n 'agnostic',\r\n 'agonize',\r\n 'agonizing',\r\n 'agony',\r\n 'agreeable',\r\n 'agreeably',\r\n 'agreed',\r\n 'agreeing',\r\n 'agreement',\r\n 'aground',\r\n 'ahead',\r\n 'ahoy',\r\n 'aide',\r\n 'aids',\r\n 'aim',\r\n 'ajar',\r\n 'alabaster',\r\n 'alarm',\r\n 'albatross',\r\n 'album',\r\n 'alfalfa',\r\n 'algebra',\r\n 'algorithm',\r\n 'alias',\r\n 'alibi',\r\n 'alienable',\r\n 'alienate',\r\n 'aliens',\r\n 'alike',\r\n 'alive',\r\n 'alkaline',\r\n 'alkalize',\r\n 'almanac',\r\n 'almighty',\r\n 'almost',\r\n 'aloe',\r\n 'aloft',\r\n 'aloha',\r\n 'alone',\r\n 'alongside',\r\n 'aloof',\r\n 'alphabet',\r\n 'alright',\r\n 'although',\r\n 'altitude',\r\n 'alto',\r\n 'aluminum',\r\n 'alumni',\r\n 'always',\r\n 'amaretto',\r\n 'amaze',\r\n 'amazingly',\r\n 'amber',\r\n 'ambiance',\r\n 'ambiguity',\r\n 'ambiguous',\r\n 'ambition',\r\n 'ambitious',\r\n 'ambulance',\r\n 'ambush',\r\n 'amendable',\r\n 'amendment',\r\n 'amends',\r\n 'amenity',\r\n 'amiable',\r\n 'amicably',\r\n 'amid',\r\n 'amigo',\r\n 'amino',\r\n 'amiss',\r\n 'ammonia',\r\n 'ammonium',\r\n 'amnesty',\r\n 'amniotic',\r\n 'among',\r\n 'amount',\r\n 'amperage',\r\n 'ample',\r\n 'amplifier',\r\n 'amplify',\r\n 'amply',\r\n 'amuck',\r\n 'amulet',\r\n 'amusable',\r\n 'amused',\r\n 'amusement',\r\n 'amuser',\r\n 'amusing',\r\n 'anaconda',\r\n 'anaerobic',\r\n 'anagram',\r\n 'anatomist',\r\n 'anatomy',\r\n 'anchor',\r\n 'anchovy',\r\n 'ancient',\r\n 'android',\r\n 'anemia',\r\n 'anemic',\r\n 'aneurism',\r\n 'anew',\r\n 'angelfish',\r\n 'angelic',\r\n 'anger',\r\n 'angled',\r\n 'angler',\r\n 'angles',\r\n 'angling',\r\n 'angrily',\r\n 'angriness',\r\n 'anguished',\r\n 'angular',\r\n 'animal',\r\n 'animate',\r\n 'animating',\r\n 'animation',\r\n 'animator',\r\n 'anime',\r\n 'animosity',\r\n 'ankle',\r\n 'annex',\r\n 'annotate',\r\n 'announcer',\r\n 'annoying',\r\n 'annually',\r\n 'annuity',\r\n 'anointer',\r\n 'another',\r\n 'answering',\r\n 'antacid',\r\n 'antarctic',\r\n 'anteater',\r\n 'antelope',\r\n 'antennae',\r\n 'anthem',\r\n 'anthill',\r\n 'anthology',\r\n 'antibody',\r\n 'antics',\r\n 'antidote',\r\n 'antihero',\r\n 'antiquely',\r\n 'antiques',\r\n 'antiquity',\r\n 'antirust',\r\n 'antitoxic',\r\n 'antitrust',\r\n 'antiviral',\r\n 'antivirus',\r\n 'antler',\r\n 'antonym',\r\n 'antsy',\r\n 'anvil',\r\n 'anybody',\r\n 'anyhow',\r\n 'anymore',\r\n 'anyone',\r\n 'anyplace',\r\n 'anything',\r\n 'anytime',\r\n 'anyway',\r\n 'anywhere',\r\n 'aorta',\r\n 'apache',\r\n 'apostle',\r\n 'appealing',\r\n 'appear',\r\n 'appease',\r\n 'appeasing',\r\n 'appendage',\r\n 'appendix',\r\n 'appetite',\r\n 'appetizer',\r\n 'applaud',\r\n 'applause',\r\n 'apple',\r\n 'appliance',\r\n 'applicant',\r\n 'applied',\r\n 'apply',\r\n 'appointee',\r\n 'appraisal',\r\n 'appraiser',\r\n 'apprehend',\r\n 'approach',\r\n 'approval',\r\n 'approve',\r\n 'apricot',\r\n 'april',\r\n 'apron',\r\n 'aptitude',\r\n 'aptly',\r\n 'aqua',\r\n 'aqueduct',\r\n 'arbitrary',\r\n 'arbitrate',\r\n 'ardently',\r\n 'area',\r\n 'arena',\r\n 'arguable',\r\n 'arguably',\r\n 'argue',\r\n 'arise',\r\n 'armadillo',\r\n 'armband',\r\n 'armchair',\r\n 'armed',\r\n 'armful',\r\n 'armhole',\r\n 'arming',\r\n 'armless',\r\n 'armoire',\r\n 'armored',\r\n 'armory',\r\n 'armrest',\r\n 'army',\r\n 'aroma',\r\n 'arose',\r\n 'around',\r\n 'arousal',\r\n 'arrange',\r\n 'array',\r\n 'arrest',\r\n 'arrival',\r\n 'arrive',\r\n 'arrogance',\r\n 'arrogant',\r\n 'arson',\r\n 'art',\r\n 'ascend',\r\n 'ascension',\r\n 'ascent',\r\n 'ascertain',\r\n 'ashamed',\r\n 'ashen',\r\n 'ashes',\r\n 'ashy',\r\n 'aside',\r\n 'askew',\r\n 'asleep',\r\n 'asparagus',\r\n 'aspect',\r\n 'aspirate',\r\n 'aspire',\r\n 'aspirin',\r\n 'astonish',\r\n 'astound',\r\n 'astride',\r\n 'astrology',\r\n 'astronaut',\r\n 'astronomy',\r\n 'astute',\r\n 'atlantic',\r\n 'atlas',\r\n 'atom',\r\n 'atonable',\r\n 'atop',\r\n 'atrium',\r\n 'atrocious',\r\n 'atrophy',\r\n 'attach',\r\n 'attain',\r\n 'attempt',\r\n 'attendant',\r\n 'attendee',\r\n 'attention',\r\n 'attentive',\r\n 'attest',\r\n 'attic',\r\n 'attire',\r\n 'attitude',\r\n 'attractor',\r\n 'attribute',\r\n 'atypical',\r\n 'auction',\r\n 'audacious',\r\n 'audacity',\r\n 'audible',\r\n 'audibly',\r\n 'audience',\r\n 'audio',\r\n 'audition',\r\n 'augmented',\r\n 'august',\r\n 'authentic',\r\n 'author',\r\n 'autism',\r\n 'autistic',\r\n 'autograph',\r\n 'automaker',\r\n 'automated',\r\n 'automatic',\r\n 'autopilot',\r\n 'available',\r\n 'avalanche',\r\n 'avatar',\r\n 'avenge',\r\n 'avenging',\r\n 'avenue',\r\n 'average',\r\n 'aversion',\r\n 'avert',\r\n 'aviation',\r\n 'aviator',\r\n 'avid',\r\n 'avoid',\r\n 'await',\r\n 'awaken',\r\n 'award',\r\n 'aware',\r\n 'awhile',\r\n 'awkward',\r\n 'awning',\r\n 'awoke',\r\n 'awry',\r\n 'axis',\r\n 'babble',\r\n 'babbling',\r\n 'babied',\r\n 'baboon',\r\n 'backache',\r\n 'backboard',\r\n 'backboned',\r\n 'backdrop',\r\n 'backed',\r\n 'backer',\r\n 'backfield',\r\n 'backfire',\r\n 'backhand',\r\n 'backing',\r\n 'backlands',\r\n 'backlash',\r\n 'backless',\r\n 'backlight',\r\n 'backlit',\r\n 'backlog',\r\n 'backpack',\r\n 'backpedal',\r\n 'backrest',\r\n 'backroom',\r\n 'backshift',\r\n 'backside',\r\n 'backslid',\r\n 'backspace',\r\n 'backspin',\r\n 'backstab',\r\n 'backstage',\r\n 'backtalk',\r\n 'backtrack',\r\n 'backup',\r\n 'backward',\r\n 'backwash',\r\n 'backwater',\r\n 'backyard',\r\n 'bacon',\r\n 'bacteria',\r\n 'bacterium',\r\n 'badass',\r\n 'badge',\r\n 'badland',\r\n 'badly',\r\n 'badness',\r\n 'baffle',\r\n 'baffling',\r\n 'bagel',\r\n 'bagful',\r\n 'baggage',\r\n 'bagged',\r\n 'baggie',\r\n 'bagginess',\r\n 'bagging',\r\n 'baggy',\r\n 'bagpipe',\r\n 'baguette',\r\n 'baked',\r\n 'bakery',\r\n 'bakeshop',\r\n 'baking',\r\n 'balance',\r\n 'balancing',\r\n 'balcony',\r\n 'balmy',\r\n 'balsamic',\r\n 'bamboo',\r\n 'banana',\r\n 'banish',\r\n 'banister',\r\n 'banjo',\r\n 'bankable',\r\n 'bankbook',\r\n 'banked',\r\n 'banker',\r\n 'banking',\r\n 'banknote',\r\n 'bankroll',\r\n 'banner',\r\n 'bannister',\r\n 'banshee',\r\n 'banter',\r\n 'barbecue',\r\n 'barbed',\r\n 'barbell',\r\n 'barber',\r\n 'barcode',\r\n 'barge',\r\n 'bargraph',\r\n 'barista',\r\n 'baritone',\r\n 'barley',\r\n 'barmaid',\r\n 'barman',\r\n 'barn',\r\n 'barometer',\r\n 'barrack',\r\n 'barracuda',\r\n 'barrel',\r\n 'barrette',\r\n 'barricade',\r\n 'barrier',\r\n 'barstool',\r\n 'bartender',\r\n 'barterer',\r\n 'bash',\r\n 'basically',\r\n 'basics',\r\n 'basil',\r\n 'basin',\r\n 'basis',\r\n 'basket',\r\n 'batboy',\r\n 'batch',\r\n 'bath',\r\n 'baton',\r\n 'bats',\r\n 'battalion',\r\n 'battered',\r\n 'battering',\r\n 'battery',\r\n 'batting',\r\n 'battle',\r\n 'bauble',\r\n 'bazooka',\r\n 'blabber',\r\n 'bladder',\r\n 'blade',\r\n 'blah',\r\n 'blame',\r\n 'blaming',\r\n 'blanching',\r\n 'blandness',\r\n 'blank',\r\n 'blaspheme',\r\n 'blasphemy',\r\n 'blast',\r\n 'blatancy',\r\n 'blatantly',\r\n 'blazer',\r\n 'blazing',\r\n 'bleach',\r\n 'bleak',\r\n 'bleep',\r\n 'blemish',\r\n 'blend',\r\n 'bless',\r\n 'blighted',\r\n 'blimp',\r\n 'bling',\r\n 'blinked',\r\n 'blinker',\r\n 'blinking',\r\n 'blinks',\r\n 'blip',\r\n 'blissful',\r\n 'blitz',\r\n 'blizzard',\r\n 'bloated',\r\n 'bloating',\r\n 'blob',\r\n 'blog',\r\n 'bloomers',\r\n 'blooming',\r\n 'blooper',\r\n 'blot',\r\n 'blouse',\r\n 'blubber',\r\n 'bluff',\r\n 'bluish',\r\n 'blunderer',\r\n 'blunt',\r\n 'blurb',\r\n 'blurred',\r\n 'blurry',\r\n 'blurt',\r\n 'blush',\r\n 'blustery',\r\n 'boaster',\r\n 'boastful',\r\n 'boasting',\r\n 'boat',\r\n 'bobbed',\r\n 'bobbing',\r\n 'bobble',\r\n 'bobcat',\r\n 'bobsled',\r\n 'bobtail',\r\n 'bodacious',\r\n 'body',\r\n 'bogged',\r\n 'boggle',\r\n 'bogus',\r\n 'boil',\r\n 'bok',\r\n 'bolster',\r\n 'bolt',\r\n 'bonanza',\r\n 'bonded',\r\n 'bonding',\r\n 'bondless',\r\n 'boned',\r\n 'bonehead',\r\n 'boneless',\r\n 'bonelike',\r\n 'boney',\r\n 'bonfire',\r\n 'bonnet',\r\n 'bonsai',\r\n 'bonus',\r\n 'bony',\r\n 'boogeyman',\r\n 'boogieman',\r\n 'book',\r\n 'boondocks',\r\n 'booted',\r\n 'booth',\r\n 'bootie',\r\n 'booting',\r\n 'bootlace',\r\n 'bootleg',\r\n 'boots',\r\n 'boozy',\r\n 'borax',\r\n 'boring',\r\n 'borough',\r\n 'borrower',\r\n 'borrowing',\r\n 'boss',\r\n 'botanical',\r\n 'botanist',\r\n 'botany',\r\n 'botch',\r\n 'both',\r\n 'bottle',\r\n 'bottling',\r\n 'bottom',\r\n 'bounce',\r\n 'bouncing',\r\n 'bouncy',\r\n 'bounding',\r\n 'boundless',\r\n 'bountiful',\r\n 'bovine',\r\n 'boxcar',\r\n 'boxer',\r\n 'boxing',\r\n 'boxlike',\r\n 'boxy',\r\n 'breach',\r\n 'breath',\r\n 'breeches',\r\n 'breeching',\r\n 'breeder',\r\n 'breeding',\r\n 'breeze',\r\n 'breezy',\r\n 'brethren',\r\n 'brewery',\r\n 'brewing',\r\n 'briar',\r\n 'bribe',\r\n 'brick',\r\n 'bride',\r\n 'bridged',\r\n 'brigade',\r\n 'bright',\r\n 'brilliant',\r\n 'brim',\r\n 'bring',\r\n 'brink',\r\n 'brisket',\r\n 'briskly',\r\n 'briskness',\r\n 'bristle',\r\n 'brittle',\r\n 'broadband',\r\n 'broadcast',\r\n 'broaden',\r\n 'broadly',\r\n 'broadness',\r\n 'broadside',\r\n 'broadways',\r\n 'broiler',\r\n 'broiling',\r\n 'broken',\r\n 'broker',\r\n 'bronchial',\r\n 'bronco',\r\n 'bronze',\r\n 'bronzing',\r\n 'brook',\r\n 'broom',\r\n 'brought',\r\n 'browbeat',\r\n 'brownnose',\r\n 'browse',\r\n 'browsing',\r\n 'bruising',\r\n 'brunch',\r\n 'brunette',\r\n 'brunt',\r\n 'brush',\r\n 'brussels',\r\n 'brute',\r\n 'brutishly',\r\n 'bubble',\r\n 'bubbling',\r\n 'bubbly',\r\n 'buccaneer',\r\n 'bucked',\r\n 'bucket',\r\n 'buckle',\r\n 'buckshot',\r\n 'buckskin',\r\n 'bucktooth',\r\n 'buckwheat',\r\n 'buddhism',\r\n 'buddhist',\r\n 'budding',\r\n 'buddy',\r\n 'budget',\r\n 'buffalo',\r\n 'buffed',\r\n 'buffer',\r\n 'buffing',\r\n 'buffoon',\r\n 'buggy',\r\n 'bulb',\r\n 'bulge',\r\n 'bulginess',\r\n 'bulgur',\r\n 'bulk',\r\n 'bulldog',\r\n 'bulldozer',\r\n 'bullfight',\r\n 'bullfrog',\r\n 'bullhorn',\r\n 'bullion',\r\n 'bullish',\r\n 'bullpen',\r\n 'bullring',\r\n 'bullseye',\r\n 'bullwhip',\r\n 'bully',\r\n 'bunch',\r\n 'bundle',\r\n 'bungee',\r\n 'bunion',\r\n 'bunkbed',\r\n 'bunkhouse',\r\n 'bunkmate',\r\n 'bunny',\r\n 'bunt',\r\n 'busboy',\r\n 'bush',\r\n 'busily',\r\n 'busload',\r\n 'bust',\r\n 'busybody',\r\n 'buzz',\r\n 'cabana',\r\n 'cabbage',\r\n 'cabbie',\r\n 'cabdriver',\r\n 'cable',\r\n 'caboose',\r\n 'cache',\r\n 'cackle',\r\n 'cacti',\r\n 'cactus',\r\n 'caddie',\r\n 'caddy',\r\n 'cadet',\r\n 'cadillac',\r\n 'cadmium',\r\n 'cage',\r\n 'cahoots',\r\n 'cake',\r\n 'calamari',\r\n 'calamity',\r\n 'calcium',\r\n 'calculate',\r\n 'calculus',\r\n 'caliber',\r\n 'calibrate',\r\n 'calm',\r\n 'caloric',\r\n 'calorie',\r\n 'calzone',\r\n 'camcorder',\r\n 'cameo',\r\n 'camera',\r\n 'camisole',\r\n 'camper',\r\n 'campfire',\r\n 'camping',\r\n 'campsite',\r\n 'campus',\r\n 'canal',\r\n 'canary',\r\n 'cancel',\r\n 'candied',\r\n 'candle',\r\n 'candy',\r\n 'cane',\r\n 'canine',\r\n 'canister',\r\n 'cannabis',\r\n 'canned',\r\n 'canning',\r\n 'cannon',\r\n 'cannot',\r\n 'canola',\r\n 'canon',\r\n 'canopener',\r\n 'canopy',\r\n 'canteen',\r\n 'canyon',\r\n 'capable',\r\n 'capably',\r\n 'capacity',\r\n 'cape',\r\n 'capillary',\r\n 'capital',\r\n 'capitol',\r\n 'capped',\r\n 'capricorn',\r\n 'capsize',\r\n 'capsule',\r\n 'caption',\r\n 'captivate',\r\n 'captive',\r\n 'captivity',\r\n 'capture',\r\n 'caramel',\r\n 'carat',\r\n 'caravan',\r\n 'carbon',\r\n 'cardboard',\r\n 'carded',\r\n 'cardiac',\r\n 'cardigan',\r\n 'cardinal',\r\n 'cardstock',\r\n 'carefully',\r\n 'caregiver',\r\n 'careless',\r\n 'caress',\r\n 'caretaker',\r\n 'cargo',\r\n 'caring',\r\n 'carless',\r\n 'carload',\r\n 'carmaker',\r\n 'carnage',\r\n 'carnation',\r\n 'carnival',\r\n 'carnivore',\r\n 'carol',\r\n 'carpenter',\r\n 'carpentry',\r\n 'carpool',\r\n 'carport',\r\n 'carried',\r\n 'carrot',\r\n 'carrousel',\r\n 'carry',\r\n 'cartel',\r\n 'cartload',\r\n 'carton',\r\n 'cartoon',\r\n 'cartridge',\r\n 'cartwheel',\r\n 'carve',\r\n 'carving',\r\n 'carwash',\r\n 'cascade',\r\n 'case',\r\n 'cash',\r\n 'casing',\r\n 'casino',\r\n 'casket',\r\n 'cassette',\r\n 'casually',\r\n 'casualty',\r\n 'catacomb',\r\n 'catalog',\r\n 'catalyst',\r\n 'catalyze',\r\n 'catapult',\r\n 'cataract',\r\n 'catatonic',\r\n 'catcall',\r\n 'catchable',\r\n 'catcher',\r\n 'catching',\r\n 'catchy',\r\n 'caterer',\r\n 'catering',\r\n 'catfight',\r\n 'catfish',\r\n 'cathedral',\r\n 'cathouse',\r\n 'catlike',\r\n 'catnap',\r\n 'catnip',\r\n 'catsup',\r\n 'cattail',\r\n 'cattishly',\r\n 'cattle',\r\n 'catty',\r\n 'catwalk',\r\n 'caucasian',\r\n 'caucus',\r\n 'causal',\r\n 'causation',\r\n 'cause',\r\n 'causing',\r\n 'cauterize',\r\n 'caution',\r\n 'cautious',\r\n 'cavalier',\r\n 'cavalry',\r\n 'caviar',\r\n 'cavity',\r\n 'cedar',\r\n 'celery',\r\n 'celestial',\r\n 'celibacy',\r\n 'celibate',\r\n 'celtic',\r\n 'cement',\r\n 'census',\r\n 'ceramics',\r\n 'ceremony',\r\n 'certainly',\r\n 'certainty',\r\n 'certified',\r\n 'certify',\r\n 'cesarean',\r\n 'cesspool',\r\n 'chafe',\r\n 'chaffing',\r\n 'chain',\r\n 'chair',\r\n 'chalice',\r\n 'challenge',\r\n 'chamber',\r\n 'chamomile',\r\n 'champion',\r\n 'chance',\r\n 'change',\r\n 'channel',\r\n 'chant',\r\n 'chaos',\r\n 'chaperone',\r\n 'chaplain',\r\n 'chapped',\r\n 'chaps',\r\n 'chapter',\r\n 'character',\r\n 'charbroil',\r\n 'charcoal',\r\n 'charger',\r\n 'charging',\r\n 'chariot',\r\n 'charity',\r\n 'charm',\r\n 'charred',\r\n 'charter',\r\n 'charting',\r\n 'chase',\r\n 'chasing',\r\n 'chaste',\r\n 'chastise',\r\n 'chastity',\r\n 'chatroom',\r\n 'chatter',\r\n 'chatting',\r\n 'chatty',\r\n 'cheating',\r\n 'cheddar',\r\n 'cheek',\r\n 'cheer',\r\n 'cheese',\r\n 'cheesy',\r\n 'chef',\r\n 'chemicals',\r\n 'chemist',\r\n 'chemo',\r\n 'cherisher',\r\n 'cherub',\r\n 'chess',\r\n 'chest',\r\n 'chevron',\r\n 'chevy',\r\n 'chewable',\r\n 'chewer',\r\n 'chewing',\r\n 'chewy',\r\n 'chief',\r\n 'chihuahua',\r\n 'childcare',\r\n 'childhood',\r\n 'childish',\r\n 'childless',\r\n 'childlike',\r\n 'chili',\r\n 'chill',\r\n 'chimp',\r\n 'chip',\r\n 'chirping',\r\n 'chirpy',\r\n 'chitchat',\r\n 'chivalry',\r\n 'chive',\r\n 'chloride',\r\n 'chlorine',\r\n 'choice',\r\n 'chokehold',\r\n 'choking',\r\n 'chomp',\r\n 'chooser',\r\n 'choosing',\r\n 'choosy',\r\n 'chop',\r\n 'chosen',\r\n 'chowder',\r\n 'chowtime',\r\n 'chrome',\r\n 'chubby',\r\n 'chuck',\r\n 'chug',\r\n 'chummy',\r\n 'chump',\r\n 'chunk',\r\n 'churn',\r\n 'chute',\r\n 'cider',\r\n 'cilantro',\r\n 'cinch',\r\n 'cinema',\r\n 'cinnamon',\r\n 'circle',\r\n 'circling',\r\n 'circular',\r\n 'circulate',\r\n 'circus',\r\n 'citable',\r\n 'citadel',\r\n 'citation',\r\n 'citizen',\r\n 'citric',\r\n 'citrus',\r\n 'city',\r\n 'civic',\r\n 'civil',\r\n 'clad',\r\n 'claim',\r\n 'clambake',\r\n 'clammy',\r\n 'clamor',\r\n 'clamp',\r\n 'clamshell',\r\n 'clang',\r\n 'clanking',\r\n 'clapped',\r\n 'clapper',\r\n 'clapping',\r\n 'clarify',\r\n 'clarinet',\r\n 'clarity',\r\n 'clash',\r\n 'clasp',\r\n 'class',\r\n 'clatter',\r\n 'clause',\r\n 'clavicle',\r\n 'claw',\r\n 'clay',\r\n 'clean',\r\n 'clear',\r\n 'cleat',\r\n 'cleaver',\r\n 'cleft',\r\n 'clench',\r\n 'clergyman',\r\n 'clerical',\r\n 'clerk',\r\n 'clever',\r\n 'clicker',\r\n 'client',\r\n 'climate',\r\n 'climatic',\r\n 'cling',\r\n 'clinic',\r\n 'clinking',\r\n 'clip',\r\n 'clique',\r\n 'cloak',\r\n 'clobber',\r\n 'clock',\r\n 'clone',\r\n 'cloning',\r\n 'closable',\r\n 'closure',\r\n 'clothes',\r\n 'clothing',\r\n 'cloud',\r\n 'clover',\r\n 'clubbed',\r\n 'clubbing',\r\n 'clubhouse',\r\n 'clump',\r\n 'clumsily',\r\n 'clumsy',\r\n 'clunky',\r\n 'clustered',\r\n 'clutch',\r\n 'clutter',\r\n 'coach',\r\n 'coagulant',\r\n 'coastal',\r\n 'coaster',\r\n 'coasting',\r\n 'coastland',\r\n 'coastline',\r\n 'coat',\r\n 'coauthor',\r\n 'cobalt',\r\n 'cobbler',\r\n 'cobweb',\r\n 'cocoa',\r\n 'coconut',\r\n 'cod',\r\n 'coeditor',\r\n 'coerce',\r\n 'coexist',\r\n 'coffee',\r\n 'cofounder',\r\n 'cognition',\r\n 'cognitive',\r\n 'cogwheel',\r\n 'coherence',\r\n 'coherent',\r\n 'cohesive',\r\n 'coil',\r\n 'coke',\r\n 'cola',\r\n 'cold',\r\n 'coleslaw',\r\n 'coliseum',\r\n 'collage',\r\n 'collapse',\r\n 'collar',\r\n 'collected',\r\n 'collector',\r\n 'collide',\r\n 'collie',\r\n 'collision',\r\n 'colonial',\r\n 'colonist',\r\n 'colonize',\r\n 'colony',\r\n 'colossal',\r\n 'colt',\r\n 'coma',\r\n 'come',\r\n 'comfort',\r\n 'comfy',\r\n 'comic',\r\n 'coming',\r\n 'comma',\r\n 'commence',\r\n 'commend',\r\n 'comment',\r\n 'commerce',\r\n 'commode',\r\n 'commodity',\r\n 'commodore',\r\n 'common',\r\n 'commotion',\r\n 'commute',\r\n 'commuting',\r\n 'compacted',\r\n 'compacter',\r\n 'compactly',\r\n 'compactor',\r\n 'companion',\r\n 'company',\r\n 'compare',\r\n 'compel',\r\n 'compile',\r\n 'comply',\r\n 'component',\r\n 'composed',\r\n 'composer',\r\n 'composite',\r\n 'compost',\r\n 'composure',\r\n 'compound',\r\n 'compress',\r\n 'comprised',\r\n 'computer',\r\n 'computing',\r\n 'comrade',\r\n 'concave',\r\n 'conceal',\r\n 'conceded',\r\n 'concept',\r\n 'concerned',\r\n 'concert',\r\n 'conch',\r\n 'concierge',\r\n 'concise',\r\n 'conclude',\r\n 'concrete',\r\n 'concur',\r\n 'condense',\r\n 'condiment',\r\n 'condition',\r\n 'condone',\r\n 'conducive',\r\n 'conductor',\r\n 'conduit',\r\n 'cone',\r\n 'confess',\r\n 'confetti',\r\n 'confidant',\r\n 'confident',\r\n 'confider',\r\n 'confiding',\r\n 'configure',\r\n 'confined',\r\n 'confining',\r\n 'confirm',\r\n 'conflict',\r\n 'conform',\r\n 'confound',\r\n 'confront',\r\n 'confused',\r\n 'confusing',\r\n 'confusion',\r\n 'congenial',\r\n 'congested',\r\n 'congrats',\r\n 'congress',\r\n 'conical',\r\n 'conjoined',\r\n 'conjure',\r\n 'conjuror',\r\n 'connected',\r\n 'connector',\r\n 'consensus',\r\n 'consent',\r\n 'console',\r\n 'consoling',\r\n 'consonant',\r\n 'constable',\r\n 'constant',\r\n 'constrain',\r\n 'constrict',\r\n 'construct',\r\n 'consult',\r\n 'consumer',\r\n 'consuming',\r\n 'contact',\r\n 'container',\r\n 'contempt',\r\n 'contend',\r\n 'contented',\r\n 'contently',\r\n 'contents',\r\n 'contest',\r\n 'context',\r\n 'contort',\r\n 'contour',\r\n 'contrite',\r\n 'control',\r\n 'contusion',\r\n 'convene',\r\n 'convent',\r\n 'copartner',\r\n 'cope',\r\n 'copied',\r\n 'copier',\r\n 'copilot',\r\n 'coping',\r\n 'copious',\r\n 'copper',\r\n 'copy',\r\n 'coral',\r\n 'cork',\r\n 'cornball',\r\n 'cornbread',\r\n 'corncob',\r\n 'cornea',\r\n 'corned',\r\n 'corner',\r\n 'cornfield',\r\n 'cornflake',\r\n 'cornhusk',\r\n 'cornmeal',\r\n 'cornstalk',\r\n 'corny',\r\n 'coronary',\r\n 'coroner',\r\n 'corporal',\r\n 'corporate',\r\n 'corral',\r\n 'correct',\r\n 'corridor',\r\n 'corrode',\r\n 'corroding',\r\n 'corrosive',\r\n 'corsage',\r\n 'corset',\r\n 'cortex',\r\n 'cosigner',\r\n 'cosmetics',\r\n 'cosmic',\r\n 'cosmos',\r\n 'cosponsor',\r\n 'cost',\r\n 'cottage',\r\n 'cotton',\r\n 'couch',\r\n 'cough',\r\n 'could',\r\n 'countable',\r\n 'countdown',\r\n 'counting',\r\n 'countless',\r\n 'country',\r\n 'county',\r\n 'courier',\r\n 'covenant',\r\n 'cover',\r\n 'coveted',\r\n 'coveting',\r\n 'coyness',\r\n 'cozily',\r\n 'coziness',\r\n 'cozy',\r\n 'crabbing',\r\n 'crabgrass',\r\n 'crablike',\r\n 'crabmeat',\r\n 'cradle',\r\n 'cradling',\r\n 'crafter',\r\n 'craftily',\r\n 'craftsman',\r\n 'craftwork',\r\n 'crafty',\r\n 'cramp',\r\n 'cranberry',\r\n 'crane',\r\n 'cranial',\r\n 'cranium',\r\n 'crank',\r\n 'crate',\r\n 'crave',\r\n 'craving',\r\n 'crawfish',\r\n 'crawlers',\r\n 'crawling',\r\n 'crayfish',\r\n 'crayon',\r\n 'crazed',\r\n 'crazily',\r\n 'craziness',\r\n 'crazy',\r\n 'creamed',\r\n 'creamer',\r\n 'creamlike',\r\n 'crease',\r\n 'creasing',\r\n 'creatable',\r\n 'create',\r\n 'creation',\r\n 'creative',\r\n 'creature',\r\n 'credible',\r\n 'credibly',\r\n 'credit',\r\n 'creed',\r\n 'creme',\r\n 'creole',\r\n 'crepe',\r\n 'crept',\r\n 'crescent',\r\n 'crested',\r\n 'cresting',\r\n 'crestless',\r\n 'crevice',\r\n 'crewless',\r\n 'crewman',\r\n 'crewmate',\r\n 'crib',\r\n 'cricket',\r\n 'cried',\r\n 'crier',\r\n 'crimp',\r\n 'crimson',\r\n 'cringe',\r\n 'cringing',\r\n 'crinkle',\r\n 'crinkly',\r\n 'crisped',\r\n 'crisping',\r\n 'crisply',\r\n 'crispness',\r\n 'crispy',\r\n 'criteria',\r\n 'critter',\r\n 'croak',\r\n 'crock',\r\n 'crook',\r\n 'croon',\r\n 'crop',\r\n 'cross',\r\n 'crouch',\r\n 'crouton',\r\n 'crowbar',\r\n 'crowd',\r\n 'crown',\r\n 'crucial',\r\n 'crudely',\r\n 'crudeness',\r\n 'cruelly',\r\n 'cruelness',\r\n 'cruelty',\r\n 'crumb',\r\n 'crummiest',\r\n 'crummy',\r\n 'crumpet',\r\n 'crumpled',\r\n 'cruncher',\r\n 'crunching',\r\n 'crunchy',\r\n 'crusader',\r\n 'crushable',\r\n 'crushed',\r\n 'crusher',\r\n 'crushing',\r\n 'crust',\r\n 'crux',\r\n 'crying',\r\n 'cryptic',\r\n 'crystal',\r\n 'cubbyhole',\r\n 'cube',\r\n 'cubical',\r\n 'cubicle',\r\n 'cucumber',\r\n 'cuddle',\r\n 'cuddly',\r\n 'cufflink',\r\n 'culinary',\r\n 'culminate',\r\n 'culpable',\r\n 'culprit',\r\n 'cultivate',\r\n 'cultural',\r\n 'culture',\r\n 'cupbearer',\r\n 'cupcake',\r\n 'cupid',\r\n 'cupped',\r\n 'cupping',\r\n 'curable',\r\n 'curator',\r\n 'curdle',\r\n 'cure',\r\n 'curfew',\r\n 'curing',\r\n 'curled',\r\n 'curler',\r\n 'curliness',\r\n 'curling',\r\n 'curly',\r\n 'curry',\r\n 'curse',\r\n 'cursive',\r\n 'cursor',\r\n 'curtain',\r\n 'curtly',\r\n 'curtsy',\r\n 'curvature',\r\n 'curve',\r\n 'curvy',\r\n 'cushy',\r\n 'cusp',\r\n 'cussed',\r\n 'custard',\r\n 'custodian',\r\n 'custody',\r\n 'customary',\r\n 'customer',\r\n 'customize',\r\n 'customs',\r\n 'cut',\r\n 'cycle',\r\n 'cyclic',\r\n 'cycling',\r\n 'cyclist',\r\n 'cylinder',\r\n 'cymbal',\r\n 'cytoplasm',\r\n 'cytoplast',\r\n 'dab',\r\n 'dad',\r\n 'daffodil',\r\n 'dagger',\r\n 'daily',\r\n 'daintily',\r\n 'dainty',\r\n 'dairy',\r\n 'daisy',\r\n 'dallying',\r\n 'dance',\r\n 'dancing',\r\n 'dandelion',\r\n 'dander',\r\n 'dandruff',\r\n 'dandy',\r\n 'danger',\r\n 'dangle',\r\n 'dangling',\r\n 'daredevil',\r\n 'dares',\r\n 'daringly',\r\n 'darkened',\r\n 'darkening',\r\n 'darkish',\r\n 'darkness',\r\n 'darkroom',\r\n 'darling',\r\n 'darn',\r\n 'dart',\r\n 'darwinism',\r\n 'dash',\r\n 'dastardly',\r\n 'data',\r\n 'datebook',\r\n 'dating',\r\n 'daughter',\r\n 'daunting',\r\n 'dawdler',\r\n 'dawn',\r\n 'daybed',\r\n 'daybreak',\r\n 'daycare',\r\n 'daydream',\r\n 'daylight',\r\n 'daylong',\r\n 'dayroom',\r\n 'daytime',\r\n 'dazzler',\r\n 'dazzling',\r\n 'deacon',\r\n 'deafening',\r\n 'deafness',\r\n 'dealer',\r\n 'dealing',\r\n 'dealmaker',\r\n 'dealt',\r\n 'dean',\r\n 'debatable',\r\n 'debate',\r\n 'debating',\r\n 'debit',\r\n 'debrief',\r\n 'debtless',\r\n 'debtor',\r\n 'debug',\r\n 'debunk',\r\n 'decade',\r\n 'decaf',\r\n 'decal',\r\n 'decathlon',\r\n 'decay',\r\n 'deceased',\r\n 'deceit',\r\n 'deceiver',\r\n 'deceiving',\r\n 'december',\r\n 'decency',\r\n 'decent',\r\n 'deception',\r\n 'deceptive',\r\n 'decibel',\r\n 'decidable',\r\n 'decimal',\r\n 'decimeter',\r\n 'decipher',\r\n 'deck',\r\n 'declared',\r\n 'decline',\r\n 'decode',\r\n 'decompose',\r\n 'decorated',\r\n 'decorator',\r\n 'decoy',\r\n 'decrease',\r\n 'decree',\r\n 'dedicate',\r\n 'dedicator',\r\n 'deduce',\r\n 'deduct',\r\n 'deed',\r\n 'deem',\r\n 'deepen',\r\n 'deeply',\r\n 'deepness',\r\n 'deface',\r\n 'defacing',\r\n 'defame',\r\n 'default',\r\n 'defeat',\r\n 'defection',\r\n 'defective',\r\n 'defendant',\r\n 'defender',\r\n 'defense',\r\n 'defensive',\r\n 'deferral',\r\n 'deferred',\r\n 'defiance',\r\n 'defiant',\r\n 'defile',\r\n 'defiling',\r\n 'define',\r\n 'definite',\r\n 'deflate',\r\n 'deflation',\r\n 'deflator',\r\n 'deflected',\r\n 'deflector',\r\n 'defog',\r\n 'deforest',\r\n 'defraud',\r\n 'defrost',\r\n 'deftly',\r\n 'defuse',\r\n 'defy',\r\n 'degraded',\r\n 'degrading',\r\n 'degrease',\r\n 'degree',\r\n 'dehydrate',\r\n 'deity',\r\n 'dejected',\r\n 'delay',\r\n 'delegate',\r\n 'delegator',\r\n 'delete',\r\n 'deletion',\r\n 'delicacy',\r\n 'delicate',\r\n 'delicious',\r\n 'delighted',\r\n 'delirious',\r\n 'delirium',\r\n 'deliverer',\r\n 'delivery',\r\n 'delouse',\r\n 'delta',\r\n 'deluge',\r\n 'delusion',\r\n 'deluxe',\r\n 'demanding',\r\n 'demeaning',\r\n 'demeanor',\r\n 'demise',\r\n 'democracy',\r\n 'democrat',\r\n 'demote',\r\n 'demotion',\r\n 'demystify',\r\n 'denatured',\r\n 'deniable',\r\n 'denial',\r\n 'denim',\r\n 'denote',\r\n 'dense',\r\n 'density',\r\n 'dental',\r\n 'dentist',\r\n 'denture',\r\n 'deny',\r\n 'deodorant',\r\n 'deodorize',\r\n 'departed',\r\n 'departure',\r\n 'depict',\r\n 'deplete',\r\n 'depletion',\r\n 'deplored',\r\n 'deploy',\r\n 'deport',\r\n 'depose',\r\n 'depraved',\r\n 'depravity',\r\n 'deprecate',\r\n 'depress',\r\n 'deprive',\r\n 'depth',\r\n 'deputize',\r\n 'deputy',\r\n 'derail',\r\n 'deranged',\r\n 'derby',\r\n 'derived',\r\n 'desecrate',\r\n 'deserve',\r\n 'deserving',\r\n 'designate',\r\n 'designed',\r\n 'designer',\r\n 'designing',\r\n 'deskbound',\r\n 'desktop',\r\n 'deskwork',\r\n 'desolate',\r\n 'despair',\r\n 'despise',\r\n 'despite',\r\n 'destiny',\r\n 'destitute',\r\n 'destruct',\r\n 'detached',\r\n 'detail',\r\n 'detection',\r\n 'detective',\r\n 'detector',\r\n 'detention',\r\n 'detergent',\r\n 'detest',\r\n 'detonate',\r\n 'detonator',\r\n 'detoxify',\r\n 'detract',\r\n 'deuce',\r\n 'devalue',\r\n 'deviancy',\r\n 'deviant',\r\n 'deviate',\r\n 'deviation',\r\n 'deviator',\r\n 'device',\r\n 'devious',\r\n 'devotedly',\r\n 'devotee',\r\n 'devotion',\r\n 'devourer',\r\n 'devouring',\r\n 'devoutly',\r\n 'dexterity',\r\n 'dexterous',\r\n 'diabetes',\r\n 'diabetic',\r\n 'diabolic',\r\n 'diagnoses',\r\n 'diagnosis',\r\n 'diagram',\r\n 'dial',\r\n 'diameter',\r\n 'diaper',\r\n 'diaphragm',\r\n 'diary',\r\n 'dice',\r\n 'dicing',\r\n 'dictate',\r\n 'dictation',\r\n 'dictator',\r\n 'difficult',\r\n 'diffused',\r\n 'diffuser',\r\n 'diffusion',\r\n 'diffusive',\r\n 'dig',\r\n 'dilation',\r\n 'diligence',\r\n 'diligent',\r\n 'dill',\r\n 'dilute',\r\n 'dime',\r\n 'diminish',\r\n 'dimly',\r\n 'dimmed',\r\n 'dimmer',\r\n 'dimness',\r\n 'dimple',\r\n 'diner',\r\n 'dingbat',\r\n 'dinghy',\r\n 'dinginess',\r\n 'dingo',\r\n 'dingy',\r\n 'dining',\r\n 'dinner',\r\n 'diocese',\r\n 'dioxide',\r\n 'diploma',\r\n 'dipped',\r\n 'dipper',\r\n 'dipping',\r\n 'directed',\r\n 'direction',\r\n 'directive',\r\n 'directly',\r\n 'directory',\r\n 'direness',\r\n 'dirtiness',\r\n 'disabled',\r\n 'disagree',\r\n 'disallow',\r\n 'disarm',\r\n 'disarray',\r\n 'disaster',\r\n 'disband',\r\n 'disbelief',\r\n 'disburse',\r\n 'discard',\r\n 'discern',\r\n 'discharge',\r\n 'disclose',\r\n 'discolor',\r\n 'discount',\r\n 'discourse',\r\n 'discover',\r\n 'discuss',\r\n 'disdain',\r\n 'disengage',\r\n 'disfigure',\r\n 'disgrace',\r\n 'dish',\r\n 'disinfect',\r\n 'disjoin',\r\n 'disk',\r\n 'dislike',\r\n 'disliking',\r\n 'dislocate',\r\n 'dislodge',\r\n 'disloyal',\r\n 'dismantle',\r\n 'dismay',\r\n 'dismiss',\r\n 'dismount',\r\n 'disobey',\r\n 'disorder',\r\n 'disown',\r\n 'disparate',\r\n 'disparity',\r\n 'dispatch',\r\n 'dispense',\r\n 'dispersal',\r\n 'dispersed',\r\n 'disperser',\r\n 'displace',\r\n 'display',\r\n 'displease',\r\n 'disposal',\r\n 'dispose',\r\n 'disprove',\r\n 'dispute',\r\n 'disregard',\r\n 'disrupt',\r\n 'dissuade',\r\n 'distance',\r\n 'distant',\r\n 'distaste',\r\n 'distill',\r\n 'distinct',\r\n 'distort',\r\n 'distract',\r\n 'distress',\r\n 'district',\r\n 'distrust',\r\n 'ditch',\r\n 'ditto',\r\n 'ditzy',\r\n 'dividable',\r\n 'divided',\r\n 'dividend',\r\n 'dividers',\r\n 'dividing',\r\n 'divinely',\r\n 'diving',\r\n 'divinity',\r\n 'divisible',\r\n 'divisibly',\r\n 'division',\r\n 'divisive',\r\n 'divorcee',\r\n 'dizziness',\r\n 'dizzy',\r\n 'doable',\r\n 'docile',\r\n 'dock',\r\n 'doctrine',\r\n 'document',\r\n 'dodge',\r\n 'dodgy',\r\n 'doily',\r\n 'doing',\r\n 'dole',\r\n 'dollar',\r\n 'dollhouse',\r\n 'dollop',\r\n 'dolly',\r\n 'dolphin',\r\n 'domain',\r\n 'domelike',\r\n 'domestic',\r\n 'dominion',\r\n 'dominoes',\r\n 'donated',\r\n 'donation',\r\n 'donator',\r\n 'donor',\r\n 'donut',\r\n 'doodle',\r\n 'doorbell',\r\n 'doorframe',\r\n 'doorknob',\r\n 'doorman',\r\n 'doormat',\r\n 'doornail',\r\n 'doorpost',\r\n 'doorstep',\r\n 'doorstop',\r\n 'doorway',\r\n 'doozy',\r\n 'dork',\r\n 'dormitory',\r\n 'dorsal',\r\n 'dosage',\r\n 'dose',\r\n 'dotted',\r\n 'doubling',\r\n 'douche',\r\n 'dove',\r\n 'down',\r\n 'dowry',\r\n 'doze',\r\n 'drab',\r\n 'dragging',\r\n 'dragonfly',\r\n 'dragonish',\r\n 'dragster',\r\n 'drainable',\r\n 'drainage',\r\n 'drained',\r\n 'drainer',\r\n 'drainpipe',\r\n 'dramatic',\r\n 'dramatize',\r\n 'drank',\r\n 'drapery',\r\n 'drastic',\r\n 'draw',\r\n 'dreaded',\r\n 'dreadful',\r\n 'dreadlock',\r\n 'dreamboat',\r\n 'dreamily',\r\n 'dreamland',\r\n 'dreamless',\r\n 'dreamlike',\r\n 'dreamt',\r\n 'dreamy',\r\n 'drearily',\r\n 'dreary',\r\n 'drench',\r\n 'dress',\r\n 'drew',\r\n 'dribble',\r\n 'dried',\r\n 'drier',\r\n 'drift',\r\n 'driller',\r\n 'drilling',\r\n 'drinkable',\r\n 'drinking',\r\n 'dripping',\r\n 'drippy',\r\n 'drivable',\r\n 'driven',\r\n 'driver',\r\n 'driveway',\r\n 'driving',\r\n 'drizzle',\r\n 'drizzly',\r\n 'drone',\r\n 'drool',\r\n 'droop',\r\n 'drop-down',\r\n 'dropbox',\r\n 'dropkick',\r\n 'droplet',\r\n 'dropout',\r\n 'dropper',\r\n 'drove',\r\n 'drown',\r\n 'drowsily',\r\n 'drudge',\r\n 'drum',\r\n 'dry',\r\n 'dubbed',\r\n 'dubiously',\r\n 'duchess',\r\n 'duckbill',\r\n 'ducking',\r\n 'duckling',\r\n 'ducktail',\r\n 'ducky',\r\n 'duct',\r\n 'dude',\r\n 'duffel',\r\n 'dugout',\r\n 'duh',\r\n 'duke',\r\n 'duller',\r\n 'dullness',\r\n 'duly',\r\n 'dumping',\r\n 'dumpling',\r\n 'dumpster',\r\n 'duo',\r\n 'dupe',\r\n 'duplex',\r\n 'duplicate',\r\n 'duplicity',\r\n 'durable',\r\n 'durably',\r\n 'duration',\r\n 'duress',\r\n 'during',\r\n 'dusk',\r\n 'dust',\r\n 'dutiful',\r\n 'duty',\r\n 'duvet',\r\n 'dwarf',\r\n 'dweeb',\r\n 'dwelled',\r\n 'dweller',\r\n 'dwelling',\r\n 'dwindle',\r\n 'dwindling',\r\n 'dynamic',\r\n 'dynamite',\r\n 'dynasty',\r\n 'dyslexia',\r\n 'dyslexic',\r\n 'each',\r\n 'eagle',\r\n 'earache',\r\n 'eardrum',\r\n 'earflap',\r\n 'earful',\r\n 'earlobe',\r\n 'early',\r\n 'earmark',\r\n 'earmuff',\r\n 'earphone',\r\n 'earpiece',\r\n 'earplugs',\r\n 'earring',\r\n 'earshot',\r\n 'earthen',\r\n 'earthlike',\r\n 'earthling',\r\n 'earthly',\r\n 'earthworm',\r\n 'earthy',\r\n 'earwig',\r\n 'easeful',\r\n 'easel',\r\n 'easiest',\r\n 'easily',\r\n 'easiness',\r\n 'easing',\r\n 'eastbound',\r\n 'eastcoast',\r\n 'easter',\r\n 'eastward',\r\n 'eatable',\r\n 'eaten',\r\n 'eatery',\r\n 'eating',\r\n 'eats',\r\n 'ebay',\r\n 'ebony',\r\n 'ebook',\r\n 'ecard',\r\n 'eccentric',\r\n 'echo',\r\n 'eclair',\r\n 'eclipse',\r\n 'ecologist',\r\n 'ecology',\r\n 'economic',\r\n 'economist',\r\n 'economy',\r\n 'ecosphere',\r\n 'ecosystem',\r\n 'edge',\r\n 'edginess',\r\n 'edging',\r\n 'edgy',\r\n 'edition',\r\n 'editor',\r\n 'educated',\r\n 'education',\r\n 'educator',\r\n 'eel',\r\n 'effective',\r\n 'effects',\r\n 'efficient',\r\n 'effort',\r\n 'eggbeater',\r\n 'egging',\r\n 'eggnog',\r\n 'eggplant',\r\n 'eggshell',\r\n 'egomaniac',\r\n 'egotism',\r\n 'egotistic',\r\n 'either',\r\n 'eject',\r\n 'elaborate',\r\n 'elastic',\r\n 'elated',\r\n 'elbow',\r\n 'eldercare',\r\n 'elderly',\r\n 'eldest',\r\n 'electable',\r\n 'election',\r\n 'elective',\r\n 'elephant',\r\n 'elevate',\r\n 'elevating',\r\n 'elevation',\r\n 'elevator',\r\n 'eleven',\r\n 'elf',\r\n 'eligible',\r\n 'eligibly',\r\n 'eliminate',\r\n 'elite',\r\n 'elitism',\r\n 'elixir',\r\n 'elk',\r\n 'ellipse',\r\n 'elliptic',\r\n 'elm',\r\n 'elongated',\r\n 'elope',\r\n 'eloquence',\r\n 'eloquent',\r\n 'elsewhere',\r\n 'elude',\r\n 'elusive',\r\n 'elves',\r\n 'email',\r\n 'embargo',\r\n 'embark',\r\n 'embassy',\r\n 'embattled',\r\n 'embellish',\r\n 'ember',\r\n 'embezzle',\r\n 'emblaze',\r\n 'emblem',\r\n 'embody',\r\n 'embolism',\r\n 'emboss',\r\n 'embroider',\r\n 'emcee',\r\n 'emerald',\r\n 'emergency',\r\n 'emission',\r\n 'emit',\r\n 'emote',\r\n 'emoticon',\r\n 'emotion',\r\n 'empathic',\r\n 'empathy',\r\n 'emperor',\r\n 'emphases',\r\n 'emphasis',\r\n 'emphasize',\r\n 'emphatic',\r\n 'empirical',\r\n 'employed',\r\n 'employee',\r\n 'employer',\r\n 'emporium',\r\n 'empower',\r\n 'emptier',\r\n 'emptiness',\r\n 'empty',\r\n 'emu',\r\n 'enable',\r\n 'enactment',\r\n 'enamel',\r\n 'enchanted',\r\n 'enchilada',\r\n 'encircle',\r\n 'enclose',\r\n 'enclosure',\r\n 'encode',\r\n 'encore',\r\n 'encounter',\r\n 'encourage',\r\n 'encroach',\r\n 'encrust',\r\n 'encrypt',\r\n 'endanger',\r\n 'endeared',\r\n 'endearing',\r\n 'ended',\r\n 'ending',\r\n 'endless',\r\n 'endnote',\r\n 'endocrine',\r\n 'endorphin',\r\n 'endorse',\r\n 'endowment',\r\n 'endpoint',\r\n 'endurable',\r\n 'endurance',\r\n 'enduring',\r\n 'energetic',\r\n 'energize',\r\n 'energy',\r\n 'enforced',\r\n 'enforcer',\r\n 'engaged',\r\n 'engaging',\r\n 'engine',\r\n 'engorge',\r\n 'engraved',\r\n 'engraver',\r\n 'engraving',\r\n 'engross',\r\n 'engulf',\r\n 'enhance',\r\n 'enigmatic',\r\n 'enjoyable',\r\n 'enjoyably',\r\n 'enjoyer',\r\n 'enjoying',\r\n 'enjoyment',\r\n 'enlarged',\r\n 'enlarging',\r\n 'enlighten',\r\n 'enlisted',\r\n 'enquirer',\r\n 'enrage',\r\n 'enrich',\r\n 'enroll',\r\n 'enslave',\r\n 'ensnare',\r\n 'ensure',\r\n 'entail',\r\n 'entangled',\r\n 'entering',\r\n 'entertain',\r\n 'enticing',\r\n 'entire',\r\n 'entitle',\r\n 'entity',\r\n 'entomb',\r\n 'entourage',\r\n 'entrap',\r\n 'entree',\r\n 'entrench',\r\n 'entrust',\r\n 'entryway',\r\n 'entwine',\r\n 'enunciate',\r\n 'envelope',\r\n 'enviable',\r\n 'enviably',\r\n 'envious',\r\n 'envision',\r\n 'envoy',\r\n 'envy',\r\n 'enzyme',\r\n 'epic',\r\n 'epidemic',\r\n 'epidermal',\r\n 'epidermis',\r\n 'epidural',\r\n 'epilepsy',\r\n 'epileptic',\r\n 'epilogue',\r\n 'epiphany',\r\n 'episode',\r\n 'equal',\r\n 'equate',\r\n 'equation',\r\n 'equator',\r\n 'equinox',\r\n 'equipment',\r\n 'equity',\r\n 'equivocal',\r\n 'eradicate',\r\n 'erasable',\r\n 'erased',\r\n 'eraser',\r\n 'erasure',\r\n 'ergonomic',\r\n 'errand',\r\n 'errant',\r\n 'erratic',\r\n 'error',\r\n 'erupt',\r\n 'escalate',\r\n 'escalator',\r\n 'escapable',\r\n 'escapade',\r\n 'escapist',\r\n 'escargot',\r\n 'eskimo',\r\n 'esophagus',\r\n 'espionage',\r\n 'espresso',\r\n 'esquire',\r\n 'essay',\r\n 'essence',\r\n 'essential',\r\n 'establish',\r\n 'estate',\r\n 'esteemed',\r\n 'estimate',\r\n 'estimator',\r\n 'estranged',\r\n 'estrogen',\r\n 'etching',\r\n 'eternal',\r\n 'eternity',\r\n 'ethanol',\r\n 'ether',\r\n 'ethically',\r\n 'ethics',\r\n 'euphemism',\r\n 'evacuate',\r\n 'evacuee',\r\n 'evade',\r\n 'evaluate',\r\n 'evaluator',\r\n 'evaporate',\r\n 'evasion',\r\n 'evasive',\r\n 'even',\r\n 'everglade',\r\n 'evergreen',\r\n 'everybody',\r\n 'everyday',\r\n 'everyone',\r\n 'evict',\r\n 'evidence',\r\n 'evident',\r\n 'evil',\r\n 'evoke',\r\n 'evolution',\r\n 'evolve',\r\n 'exact',\r\n 'exalted',\r\n 'example',\r\n 'excavate',\r\n 'excavator',\r\n 'exceeding',\r\n 'exception',\r\n 'excess',\r\n 'exchange',\r\n 'excitable',\r\n 'exciting',\r\n 'exclaim',\r\n 'exclude',\r\n 'excluding',\r\n 'exclusion',\r\n 'exclusive',\r\n 'excretion',\r\n 'excretory',\r\n 'excursion',\r\n 'excusable',\r\n 'excusably',\r\n 'excuse',\r\n 'exemplary',\r\n 'exemplify',\r\n 'exemption',\r\n 'exerciser',\r\n 'exert',\r\n 'exes',\r\n 'exfoliate',\r\n 'exhale',\r\n 'exhaust',\r\n 'exhume',\r\n 'exile',\r\n 'existing',\r\n 'exit',\r\n 'exodus',\r\n 'exonerate',\r\n 'exorcism',\r\n 'exorcist',\r\n 'expand',\r\n 'expanse',\r\n 'expansion',\r\n 'expansive',\r\n 'expectant',\r\n 'expedited',\r\n 'expediter',\r\n 'expel',\r\n 'expend',\r\n 'expenses',\r\n 'expensive',\r\n 'expert',\r\n 'expire',\r\n 'expiring',\r\n 'explain',\r\n 'expletive',\r\n 'explicit',\r\n 'explode',\r\n 'exploit',\r\n 'explore',\r\n 'exploring',\r\n 'exponent',\r\n 'exporter',\r\n 'exposable',\r\n 'expose',\r\n 'exposure',\r\n 'express',\r\n 'expulsion',\r\n 'exquisite',\r\n 'extended',\r\n 'extending',\r\n 'extent',\r\n 'extenuate',\r\n 'exterior',\r\n 'external',\r\n 'extinct',\r\n 'extortion',\r\n 'extradite',\r\n 'extras',\r\n 'extrovert',\r\n 'extrude',\r\n 'extruding',\r\n 'exuberant',\r\n 'fable',\r\n 'fabric',\r\n 'fabulous',\r\n 'facebook',\r\n 'facecloth',\r\n 'facedown',\r\n 'faceless',\r\n 'facelift',\r\n 'faceplate',\r\n 'faceted',\r\n 'facial',\r\n 'facility',\r\n 'facing',\r\n 'facsimile',\r\n 'faction',\r\n 'factoid',\r\n 'factor',\r\n 'factsheet',\r\n 'factual',\r\n 'faculty',\r\n 'fade',\r\n 'fading',\r\n 'failing',\r\n 'falcon',\r\n 'fall',\r\n 'false',\r\n 'falsify',\r\n 'fame',\r\n 'familiar',\r\n 'family',\r\n 'famine',\r\n 'famished',\r\n 'fanatic',\r\n 'fancied',\r\n 'fanciness',\r\n 'fancy',\r\n 'fanfare',\r\n 'fang',\r\n 'fanning',\r\n 'fantasize',\r\n 'fantastic',\r\n 'fantasy',\r\n 'fascism',\r\n 'fastball',\r\n 'faster',\r\n 'fasting',\r\n 'fastness',\r\n 'faucet',\r\n 'favorable',\r\n 'favorably',\r\n 'favored',\r\n 'favoring',\r\n 'favorite',\r\n 'fax',\r\n 'feast',\r\n 'federal',\r\n 'fedora',\r\n 'feeble',\r\n 'feed',\r\n 'feel',\r\n 'feisty',\r\n 'feline',\r\n 'felt-tip',\r\n 'feminine',\r\n 'feminism',\r\n 'feminist',\r\n 'feminize',\r\n 'femur',\r\n 'fence',\r\n 'fencing',\r\n 'fender',\r\n 'ferment',\r\n 'fernlike',\r\n 'ferocious',\r\n 'ferocity',\r\n 'ferret',\r\n 'ferris',\r\n 'ferry',\r\n 'fervor',\r\n 'fester',\r\n 'festival',\r\n 'festive',\r\n 'festivity',\r\n 'fetal',\r\n 'fetch',\r\n 'fever',\r\n 'fiber',\r\n 'fiction',\r\n 'fiddle',\r\n 'fiddling',\r\n 'fidelity',\r\n 'fidgeting',\r\n 'fidgety',\r\n 'fifteen',\r\n 'fifth',\r\n 'fiftieth',\r\n 'fifty',\r\n 'figment',\r\n 'figure',\r\n 'figurine',\r\n 'filing',\r\n 'filled',\r\n 'filler',\r\n 'filling',\r\n 'film',\r\n 'filter',\r\n 'filth',\r\n 'filtrate',\r\n 'finale',\r\n 'finalist',\r\n 'finalize',\r\n 'finally',\r\n 'finance',\r\n 'financial',\r\n 'finch',\r\n 'fineness',\r\n 'finer',\r\n 'finicky',\r\n 'finished',\r\n 'finisher',\r\n 'finishing',\r\n 'finite',\r\n 'finless',\r\n 'finlike',\r\n 'fiscally',\r\n 'fit',\r\n 'five',\r\n 'flaccid',\r\n 'flagman',\r\n 'flagpole',\r\n 'flagship',\r\n 'flagstick',\r\n 'flagstone',\r\n 'flail',\r\n 'flakily',\r\n 'flaky',\r\n 'flame',\r\n 'flammable',\r\n 'flanked',\r\n 'flanking',\r\n 'flannels',\r\n 'flap',\r\n 'flaring',\r\n 'flashback',\r\n 'flashbulb',\r\n 'flashcard',\r\n 'flashily',\r\n 'flashing',\r\n 'flashy',\r\n 'flask',\r\n 'flatbed',\r\n 'flatfoot',\r\n 'flatly',\r\n 'flatness',\r\n 'flatten',\r\n 'flattered',\r\n 'flatterer',\r\n 'flattery',\r\n 'flattop',\r\n 'flatware',\r\n 'flatworm',\r\n 'flavored',\r\n 'flavorful',\r\n 'flavoring',\r\n 'flaxseed',\r\n 'fled',\r\n 'fleshed',\r\n 'fleshy',\r\n 'flick',\r\n 'flier',\r\n 'flight',\r\n 'flinch',\r\n 'fling',\r\n 'flint',\r\n 'flip',\r\n 'flirt',\r\n 'float',\r\n 'flock',\r\n 'flogging',\r\n 'flop',\r\n 'floral',\r\n 'florist',\r\n 'floss',\r\n 'flounder',\r\n 'flyable',\r\n 'flyaway',\r\n 'flyer',\r\n 'flying',\r\n 'flyover',\r\n 'flypaper',\r\n 'foam',\r\n 'foe',\r\n 'fog',\r\n 'foil',\r\n 'folic',\r\n 'folk',\r\n 'follicle',\r\n 'follow',\r\n 'fondling',\r\n 'fondly',\r\n 'fondness',\r\n 'fondue',\r\n 'font',\r\n 'food',\r\n 'fool',\r\n 'footage',\r\n 'football',\r\n 'footbath',\r\n 'footboard',\r\n 'footer',\r\n 'footgear',\r\n 'foothill',\r\n 'foothold',\r\n 'footing',\r\n 'footless',\r\n 'footman',\r\n 'footnote',\r\n 'footpad',\r\n 'footpath',\r\n 'footprint',\r\n 'footrest',\r\n 'footsie',\r\n 'footsore',\r\n 'footwear',\r\n 'footwork',\r\n 'fossil',\r\n 'foster',\r\n 'founder',\r\n 'founding',\r\n 'fountain',\r\n 'fox',\r\n 'foyer',\r\n 'fraction',\r\n 'fracture',\r\n 'fragile',\r\n 'fragility',\r\n 'fragment',\r\n 'fragrance',\r\n 'fragrant',\r\n 'frail',\r\n 'frame',\r\n 'framing',\r\n 'frantic',\r\n 'fraternal',\r\n 'frayed',\r\n 'fraying',\r\n 'frays',\r\n 'freckled',\r\n 'freckles',\r\n 'freebase',\r\n 'freebee',\r\n 'freebie',\r\n 'freedom',\r\n 'freefall',\r\n 'freehand',\r\n 'freeing',\r\n 'freeload',\r\n 'freely',\r\n 'freemason',\r\n 'freeness',\r\n 'freestyle',\r\n 'freeware',\r\n 'freeway',\r\n 'freewill',\r\n 'freezable',\r\n 'freezing',\r\n 'freight',\r\n 'french',\r\n 'frenzied',\r\n 'frenzy',\r\n 'frequency',\r\n 'frequent',\r\n 'fresh',\r\n 'fretful',\r\n 'fretted',\r\n 'friction',\r\n 'friday',\r\n 'fridge',\r\n 'fried',\r\n 'friend',\r\n 'frighten',\r\n 'frightful',\r\n 'frigidity',\r\n 'frigidly',\r\n 'frill',\r\n 'fringe',\r\n 'frisbee',\r\n 'frisk',\r\n 'fritter',\r\n 'frivolous',\r\n 'frolic',\r\n 'from',\r\n 'front',\r\n 'frostbite',\r\n 'frosted',\r\n 'frostily',\r\n 'frosting',\r\n 'frostlike',\r\n 'frosty',\r\n 'froth',\r\n 'frown',\r\n 'frozen',\r\n 'fructose',\r\n 'frugality',\r\n 'frugally',\r\n 'fruit',\r\n 'frustrate',\r\n 'frying',\r\n 'gab',\r\n 'gaffe',\r\n 'gag',\r\n 'gainfully',\r\n 'gaining',\r\n 'gains',\r\n 'gala',\r\n 'gallantly',\r\n 'galleria',\r\n 'gallery',\r\n 'galley',\r\n 'gallon',\r\n 'gallows',\r\n 'gallstone',\r\n 'galore',\r\n 'galvanize',\r\n 'gambling',\r\n 'game',\r\n 'gaming',\r\n 'gamma',\r\n 'gander',\r\n 'gangly',\r\n 'gangrene',\r\n 'gangway',\r\n 'gap',\r\n 'garage',\r\n 'garbage',\r\n 'garden',\r\n 'gargle',\r\n 'garland',\r\n 'garlic',\r\n 'garment',\r\n 'garnet',\r\n 'garnish',\r\n 'garter',\r\n 'gas',\r\n 'gatherer',\r\n 'gathering',\r\n 'gating',\r\n 'gauging',\r\n 'gauntlet',\r\n 'gauze',\r\n 'gave',\r\n 'gawk',\r\n 'gazing',\r\n 'gear',\r\n 'gecko',\r\n 'geek',\r\n 'geiger',\r\n 'gem',\r\n 'gender',\r\n 'generic',\r\n 'generous',\r\n 'genetics',\r\n 'genre',\r\n 'gentile',\r\n 'gentleman',\r\n 'gently',\r\n 'gents',\r\n 'geography',\r\n 'geologic',\r\n 'geologist',\r\n 'geology',\r\n 'geometric',\r\n 'geometry',\r\n 'geranium',\r\n 'gerbil',\r\n 'geriatric',\r\n 'germicide',\r\n 'germinate',\r\n 'germless',\r\n 'germproof',\r\n 'gestate',\r\n 'gestation',\r\n 'gesture',\r\n 'getaway',\r\n 'getting',\r\n 'getup',\r\n 'giant',\r\n 'gibberish',\r\n 'giblet',\r\n 'giddily',\r\n 'giddiness',\r\n 'giddy',\r\n 'gift',\r\n 'gigabyte',\r\n 'gigahertz',\r\n 'gigantic',\r\n 'giggle',\r\n 'giggling',\r\n 'giggly',\r\n 'gigolo',\r\n 'gilled',\r\n 'gills',\r\n 'gimmick',\r\n 'girdle',\r\n 'giveaway',\r\n 'given',\r\n 'giver',\r\n 'giving',\r\n 'gizmo',\r\n 'gizzard',\r\n 'glacial',\r\n 'glacier',\r\n 'glade',\r\n 'gladiator',\r\n 'gladly',\r\n 'glamorous',\r\n 'glamour',\r\n 'glance',\r\n 'glancing',\r\n 'glandular',\r\n 'glare',\r\n 'glaring',\r\n 'glass',\r\n 'glaucoma',\r\n 'glazing',\r\n 'gleaming',\r\n 'gleeful',\r\n 'glider',\r\n 'gliding',\r\n 'glimmer',\r\n 'glimpse',\r\n 'glisten',\r\n 'glitch',\r\n 'glitter',\r\n 'glitzy',\r\n 'gloater',\r\n 'gloating',\r\n 'gloomily',\r\n 'gloomy',\r\n 'glorified',\r\n 'glorifier',\r\n 'glorify',\r\n 'glorious',\r\n 'glory',\r\n 'gloss',\r\n 'glove',\r\n 'glowing',\r\n 'glowworm',\r\n 'glucose',\r\n 'glue',\r\n 'gluten',\r\n 'glutinous',\r\n 'glutton',\r\n 'gnarly',\r\n 'gnat',\r\n 'goal',\r\n 'goatskin',\r\n 'goes',\r\n 'goggles',\r\n 'going',\r\n 'goldfish',\r\n 'goldmine',\r\n 'goldsmith',\r\n 'golf',\r\n 'goliath',\r\n 'gonad',\r\n 'gondola',\r\n 'gone',\r\n 'gong',\r\n 'good',\r\n 'gooey',\r\n 'goofball',\r\n 'goofiness',\r\n 'goofy',\r\n 'google',\r\n 'goon',\r\n 'gopher',\r\n 'gore',\r\n 'gorged',\r\n 'gorgeous',\r\n 'gory',\r\n 'gosling',\r\n 'gossip',\r\n 'gothic',\r\n 'gotten',\r\n 'gout',\r\n 'gown',\r\n 'grab',\r\n 'graceful',\r\n 'graceless',\r\n 'gracious',\r\n 'gradation',\r\n 'graded',\r\n 'grader',\r\n 'gradient',\r\n 'grading',\r\n 'gradually',\r\n 'graduate',\r\n 'graffiti',\r\n 'grafted',\r\n 'grafting',\r\n 'grain',\r\n 'granddad',\r\n 'grandkid',\r\n 'grandly',\r\n 'grandma',\r\n 'grandpa',\r\n 'grandson',\r\n 'granite',\r\n 'granny',\r\n 'granola',\r\n 'grant',\r\n 'granular',\r\n 'grape',\r\n 'graph',\r\n 'grapple',\r\n 'grappling',\r\n 'grasp',\r\n 'grass',\r\n 'gratified',\r\n 'gratify',\r\n 'grating',\r\n 'gratitude',\r\n 'gratuity',\r\n 'gravel',\r\n 'graveness',\r\n 'graves',\r\n 'graveyard',\r\n 'gravitate',\r\n 'gravity',\r\n 'gravy',\r\n 'gray',\r\n 'grazing',\r\n 'greasily',\r\n 'greedily',\r\n 'greedless',\r\n 'greedy',\r\n 'green',\r\n 'greeter',\r\n 'greeting',\r\n 'grew',\r\n 'greyhound',\r\n 'grid',\r\n 'grief',\r\n 'grievance',\r\n 'grieving',\r\n 'grievous',\r\n 'grill',\r\n 'grimace',\r\n 'grimacing',\r\n 'grime',\r\n 'griminess',\r\n 'grimy',\r\n 'grinch',\r\n 'grinning',\r\n 'grip',\r\n 'gristle',\r\n 'grit',\r\n 'groggily',\r\n 'groggy',\r\n 'groin',\r\n 'groom',\r\n 'groove',\r\n 'grooving',\r\n 'groovy',\r\n 'grope',\r\n 'ground',\r\n 'grouped',\r\n 'grout',\r\n 'grove',\r\n 'grower',\r\n 'growing',\r\n 'growl',\r\n 'grub',\r\n 'grudge',\r\n 'grudging',\r\n 'grueling',\r\n 'gruffly',\r\n 'grumble',\r\n 'grumbling',\r\n 'grumbly',\r\n 'grumpily',\r\n 'grunge',\r\n 'grunt',\r\n 'guacamole',\r\n 'guidable',\r\n 'guidance',\r\n 'guide',\r\n 'guiding',\r\n 'guileless',\r\n 'guise',\r\n 'gulf',\r\n 'gullible',\r\n 'gully',\r\n 'gulp',\r\n 'gumball',\r\n 'gumdrop',\r\n 'gumminess',\r\n 'gumming',\r\n 'gummy',\r\n 'gurgle',\r\n 'gurgling',\r\n 'guru',\r\n 'gush',\r\n 'gusto',\r\n 'gusty',\r\n 'gutless',\r\n 'guts',\r\n 'gutter',\r\n 'guy',\r\n 'guzzler',\r\n 'gyration',\r\n 'habitable',\r\n 'habitant',\r\n 'habitat',\r\n 'habitual',\r\n 'hacked',\r\n 'hacker',\r\n 'hacking',\r\n 'hacksaw',\r\n 'had',\r\n 'haggler',\r\n 'haiku',\r\n 'half',\r\n 'halogen',\r\n 'halt',\r\n 'halved',\r\n 'halves',\r\n 'hamburger',\r\n 'hamlet',\r\n 'hammock',\r\n 'hamper',\r\n 'hamster',\r\n 'hamstring',\r\n 'handbag',\r\n 'handball',\r\n 'handbook',\r\n 'handbrake',\r\n 'handcart',\r\n 'handclap',\r\n 'handclasp',\r\n 'handcraft',\r\n 'handcuff',\r\n 'handed',\r\n 'handful',\r\n 'handgrip',\r\n 'handgun',\r\n 'handheld',\r\n 'handiness',\r\n 'handiwork',\r\n 'handlebar',\r\n 'handled',\r\n 'handler',\r\n 'handling',\r\n 'handmade',\r\n 'handoff',\r\n 'handpick',\r\n 'handprint',\r\n 'handrail',\r\n 'handsaw',\r\n 'handset',\r\n 'handsfree',\r\n 'handshake',\r\n 'handstand',\r\n 'handwash',\r\n 'handwork',\r\n 'handwoven',\r\n 'handwrite',\r\n 'handyman',\r\n 'hangnail',\r\n 'hangout',\r\n 'hangover',\r\n 'hangup',\r\n 'hankering',\r\n 'hankie',\r\n 'hanky',\r\n 'haphazard',\r\n 'happening',\r\n 'happier',\r\n 'happiest',\r\n 'happily',\r\n 'happiness',\r\n 'happy',\r\n 'harbor',\r\n 'hardcopy',\r\n 'hardcore',\r\n 'hardcover',\r\n 'harddisk',\r\n 'hardened',\r\n 'hardener',\r\n 'hardening',\r\n 'hardhat',\r\n 'hardhead',\r\n 'hardiness',\r\n 'hardly',\r\n 'hardness',\r\n 'hardship',\r\n 'hardware',\r\n 'hardwired',\r\n 'hardwood',\r\n 'hardy',\r\n 'harmful',\r\n 'harmless',\r\n 'harmonica',\r\n 'harmonics',\r\n 'harmonize',\r\n 'harmony',\r\n 'harness',\r\n 'harpist',\r\n 'harsh',\r\n 'harvest',\r\n 'hash',\r\n 'hassle',\r\n 'haste',\r\n 'hastily',\r\n 'hastiness',\r\n 'hasty',\r\n 'hatbox',\r\n 'hatchback',\r\n 'hatchery',\r\n 'hatchet',\r\n 'hatching',\r\n 'hatchling',\r\n 'hate',\r\n 'hatless',\r\n 'hatred',\r\n 'haunt',\r\n 'haven',\r\n 'hazard',\r\n 'hazelnut',\r\n 'hazily',\r\n 'haziness',\r\n 'hazing',\r\n 'hazy',\r\n 'headache',\r\n 'headband',\r\n 'headboard',\r\n 'headcount',\r\n 'headdress',\r\n 'headed',\r\n 'header',\r\n 'headfirst',\r\n 'headgear',\r\n 'heading',\r\n 'headlamp',\r\n 'headless',\r\n 'headlock',\r\n 'headphone',\r\n 'headpiece',\r\n 'headrest',\r\n 'headroom',\r\n 'headscarf',\r\n 'headset',\r\n 'headsman',\r\n 'headstand',\r\n 'headstone',\r\n 'headway',\r\n 'headwear',\r\n 'heap',\r\n 'heat',\r\n 'heave',\r\n 'heavily',\r\n 'heaviness',\r\n 'heaving',\r\n 'hedge',\r\n 'hedging',\r\n 'heftiness',\r\n 'hefty',\r\n 'helium',\r\n 'helmet',\r\n 'helper',\r\n 'helpful',\r\n 'helping',\r\n 'helpless',\r\n 'helpline',\r\n 'hemlock',\r\n 'hemstitch',\r\n 'hence',\r\n 'henchman',\r\n 'henna',\r\n 'herald',\r\n 'herbal',\r\n 'herbicide',\r\n 'herbs',\r\n 'heritage',\r\n 'hermit',\r\n 'heroics',\r\n 'heroism',\r\n 'herring',\r\n 'herself',\r\n 'hertz',\r\n 'hesitancy',\r\n 'hesitant',\r\n 'hesitate',\r\n 'hexagon',\r\n 'hexagram',\r\n 'hubcap',\r\n 'huddle',\r\n 'huddling',\r\n 'huff',\r\n 'hug',\r\n 'hula',\r\n 'hulk',\r\n 'hull',\r\n 'human',\r\n 'humble',\r\n 'humbling',\r\n 'humbly',\r\n 'humid',\r\n 'humiliate',\r\n 'humility',\r\n 'humming',\r\n 'hummus',\r\n 'humongous',\r\n 'humorist',\r\n 'humorless',\r\n 'humorous',\r\n 'humpback',\r\n 'humped',\r\n 'humvee',\r\n 'hunchback',\r\n 'hundredth',\r\n 'hunger',\r\n 'hungrily',\r\n 'hungry',\r\n 'hunk',\r\n 'hunter',\r\n 'hunting',\r\n 'huntress',\r\n 'huntsman',\r\n 'hurdle',\r\n 'hurled',\r\n 'hurler',\r\n 'hurling',\r\n 'hurray',\r\n 'hurricane',\r\n 'hurried',\r\n 'hurry',\r\n 'hurt',\r\n 'husband',\r\n 'hush',\r\n 'husked',\r\n 'huskiness',\r\n 'hut',\r\n 'hybrid',\r\n 'hydrant',\r\n 'hydrated',\r\n 'hydration',\r\n 'hydrogen',\r\n 'hydroxide',\r\n 'hyperlink',\r\n 'hypertext',\r\n 'hyphen',\r\n 'hypnoses',\r\n 'hypnosis',\r\n 'hypnotic',\r\n 'hypnotism',\r\n 'hypnotist',\r\n 'hypnotize',\r\n 'hypocrisy',\r\n 'hypocrite',\r\n 'ibuprofen',\r\n 'ice',\r\n 'iciness',\r\n 'icing',\r\n 'icky',\r\n 'icon',\r\n 'icy',\r\n 'idealism',\r\n 'idealist',\r\n 'idealize',\r\n 'ideally',\r\n 'idealness',\r\n 'identical',\r\n 'identify',\r\n 'identity',\r\n 'ideology',\r\n 'idiocy',\r\n 'idiom',\r\n 'idly',\r\n 'igloo',\r\n 'ignition',\r\n 'ignore',\r\n 'iguana',\r\n 'illicitly',\r\n 'illusion',\r\n 'illusive',\r\n 'image',\r\n 'imaginary',\r\n 'imagines',\r\n 'imaging',\r\n 'imbecile',\r\n 'imitate',\r\n 'imitation',\r\n 'immature',\r\n 'immerse',\r\n 'immersion',\r\n 'imminent',\r\n 'immobile',\r\n 'immodest',\r\n 'immorally',\r\n 'immortal',\r\n 'immovable',\r\n 'immovably',\r\n 'immunity',\r\n 'immunize',\r\n 'impaired',\r\n 'impale',\r\n 'impart',\r\n 'impatient',\r\n 'impeach',\r\n 'impeding',\r\n 'impending',\r\n 'imperfect',\r\n 'imperial',\r\n 'impish',\r\n 'implant',\r\n 'implement',\r\n 'implicate',\r\n 'implicit',\r\n 'implode',\r\n 'implosion',\r\n 'implosive',\r\n 'imply',\r\n 'impolite',\r\n 'important',\r\n 'importer',\r\n 'impose',\r\n 'imposing',\r\n 'impotence',\r\n 'impotency',\r\n 'impotent',\r\n 'impound',\r\n 'imprecise',\r\n 'imprint',\r\n 'imprison',\r\n 'impromptu',\r\n 'improper',\r\n 'improve',\r\n 'improving',\r\n 'improvise',\r\n 'imprudent',\r\n 'impulse',\r\n 'impulsive',\r\n 'impure',\r\n 'impurity',\r\n 'iodine',\r\n 'iodize',\r\n 'ion',\r\n 'ipad',\r\n 'iphone',\r\n 'ipod',\r\n 'irate',\r\n 'irk',\r\n 'iron',\r\n 'irregular',\r\n 'irrigate',\r\n 'irritable',\r\n 'irritably',\r\n 'irritant',\r\n 'irritate',\r\n 'islamic',\r\n 'islamist',\r\n 'isolated',\r\n 'isolating',\r\n 'isolation',\r\n 'isotope',\r\n 'issue',\r\n 'issuing',\r\n 'italicize',\r\n 'italics',\r\n 'item',\r\n 'itinerary',\r\n 'itunes',\r\n 'ivory',\r\n 'ivy',\r\n 'jab',\r\n 'jackal',\r\n 'jacket',\r\n 'jackknife',\r\n 'jackpot',\r\n 'jailbird',\r\n 'jailbreak',\r\n 'jailer',\r\n 'jailhouse',\r\n 'jalapeno',\r\n 'jam',\r\n 'janitor',\r\n 'january',\r\n 'jargon',\r\n 'jarring',\r\n 'jasmine',\r\n 'jaundice',\r\n 'jaunt',\r\n 'java',\r\n 'jawed',\r\n 'jawless',\r\n 'jawline',\r\n 'jaws',\r\n 'jaybird',\r\n 'jaywalker',\r\n 'jazz',\r\n 'jeep',\r\n 'jeeringly',\r\n 'jellied',\r\n 'jelly',\r\n 'jersey',\r\n 'jester',\r\n 'jet',\r\n 'jiffy',\r\n 'jigsaw',\r\n 'jimmy',\r\n 'jingle',\r\n 'jingling',\r\n 'jinx',\r\n 'jitters',\r\n 'jittery',\r\n 'job',\r\n 'jockey',\r\n 'jockstrap',\r\n 'jogger',\r\n 'jogging',\r\n 'john',\r\n 'joining',\r\n 'jokester',\r\n 'jokingly',\r\n 'jolliness',\r\n 'jolly',\r\n 'jolt',\r\n 'jot',\r\n 'jovial',\r\n 'joyfully',\r\n 'joylessly',\r\n 'joyous',\r\n 'joyride',\r\n 'joystick',\r\n 'jubilance',\r\n 'jubilant',\r\n 'judge',\r\n 'judgingly',\r\n 'judicial',\r\n 'judiciary',\r\n 'judo',\r\n 'juggle',\r\n 'juggling',\r\n 'jugular',\r\n 'juice',\r\n 'juiciness',\r\n 'juicy',\r\n 'jujitsu',\r\n 'jukebox',\r\n 'july',\r\n 'jumble',\r\n 'jumbo',\r\n 'jump',\r\n 'junction',\r\n 'juncture',\r\n 'june',\r\n 'junior',\r\n 'juniper',\r\n 'junkie',\r\n 'junkman',\r\n 'junkyard',\r\n 'jurist',\r\n 'juror',\r\n 'jury',\r\n 'justice',\r\n 'justifier',\r\n 'justify',\r\n 'justly',\r\n 'justness',\r\n 'juvenile',\r\n 'kabob',\r\n 'kangaroo',\r\n 'karaoke',\r\n 'karate',\r\n 'karma',\r\n 'kebab',\r\n 'keenly',\r\n 'keenness',\r\n 'keep',\r\n 'keg',\r\n 'kelp',\r\n 'kennel',\r\n 'kept',\r\n 'kerchief',\r\n 'kerosene',\r\n 'kettle',\r\n 'kick',\r\n 'kiln',\r\n 'kilobyte',\r\n 'kilogram',\r\n 'kilometer',\r\n 'kilowatt',\r\n 'kilt',\r\n 'kimono',\r\n 'kindle',\r\n 'kindling',\r\n 'kindly',\r\n 'kindness',\r\n 'kindred',\r\n 'kinetic',\r\n 'kinfolk',\r\n 'king',\r\n 'kinship',\r\n 'kinsman',\r\n 'kinswoman',\r\n 'kissable',\r\n 'kisser',\r\n 'kissing',\r\n 'kitchen',\r\n 'kite',\r\n 'kitten',\r\n 'kitty',\r\n 'kiwi',\r\n 'kleenex',\r\n 'knapsack',\r\n 'knee',\r\n 'knelt',\r\n 'knickers',\r\n 'knoll',\r\n 'koala',\r\n 'kooky',\r\n 'kosher',\r\n 'krypton',\r\n 'kudos',\r\n 'kung',\r\n 'labored',\r\n 'laborer',\r\n 'laboring',\r\n 'laborious',\r\n 'labrador',\r\n 'ladder',\r\n 'ladies',\r\n 'ladle',\r\n 'ladybug',\r\n 'ladylike',\r\n 'lagged',\r\n 'lagging',\r\n 'lagoon',\r\n 'lair',\r\n 'lake',\r\n 'lance',\r\n 'landed',\r\n 'landfall',\r\n 'landfill',\r\n 'landing',\r\n 'landlady',\r\n 'landless',\r\n 'landline',\r\n 'landlord',\r\n 'landmark',\r\n 'landmass',\r\n 'landmine',\r\n 'landowner',\r\n 'landscape',\r\n 'landside',\r\n 'landslide',\r\n 'language',\r\n 'lankiness',\r\n 'lanky',\r\n 'lantern',\r\n 'lapdog',\r\n 'lapel',\r\n 'lapped',\r\n 'lapping',\r\n 'laptop',\r\n 'lard',\r\n 'large',\r\n 'lark',\r\n 'lash',\r\n 'lasso',\r\n 'last',\r\n 'latch',\r\n 'late',\r\n 'lather',\r\n 'latitude',\r\n 'latrine',\r\n 'latter',\r\n 'latticed',\r\n 'launch',\r\n 'launder',\r\n 'laundry',\r\n 'laurel',\r\n 'lavender',\r\n 'lavish',\r\n 'laxative',\r\n 'lazily',\r\n 'laziness',\r\n 'lazy',\r\n 'lecturer',\r\n 'left',\r\n 'legacy',\r\n 'legal',\r\n 'legend',\r\n 'legged',\r\n 'leggings',\r\n 'legible',\r\n 'legibly',\r\n 'legislate',\r\n 'lego',\r\n 'legroom',\r\n 'legume',\r\n 'legwarmer',\r\n 'legwork',\r\n 'lemon',\r\n 'lend',\r\n 'length',\r\n 'lens',\r\n 'lent',\r\n 'leotard',\r\n 'lesser',\r\n 'letdown',\r\n 'lethargic',\r\n 'lethargy',\r\n 'letter',\r\n 'lettuce',\r\n 'level',\r\n 'leverage',\r\n 'levers',\r\n 'levitate',\r\n 'levitator',\r\n 'liability',\r\n 'liable',\r\n 'liberty',\r\n 'librarian',\r\n 'library',\r\n 'licking',\r\n 'licorice',\r\n 'lid',\r\n 'life',\r\n 'lifter',\r\n 'lifting',\r\n 'liftoff',\r\n 'ligament',\r\n 'likely',\r\n 'likeness',\r\n 'likewise',\r\n 'liking',\r\n 'lilac',\r\n 'lilly',\r\n 'lily',\r\n 'limb',\r\n 'limeade',\r\n 'limelight',\r\n 'limes',\r\n 'limit',\r\n 'limping',\r\n 'limpness',\r\n 'line',\r\n 'lingo',\r\n 'linguini',\r\n 'linguist',\r\n 'lining',\r\n 'linked',\r\n 'linoleum',\r\n 'linseed',\r\n 'lint',\r\n 'lion',\r\n 'lip',\r\n 'liquefy',\r\n 'liqueur',\r\n 'liquid',\r\n 'lisp',\r\n 'list',\r\n 'litigate',\r\n 'litigator',\r\n 'litmus',\r\n 'litter',\r\n 'little',\r\n 'livable',\r\n 'lived',\r\n 'lively',\r\n 'liver',\r\n 'livestock',\r\n 'lividly',\r\n 'living',\r\n 'lizard',\r\n 'lubricant',\r\n 'lubricate',\r\n 'lucid',\r\n 'luckily',\r\n 'luckiness',\r\n 'luckless',\r\n 'lucrative',\r\n 'ludicrous',\r\n 'lugged',\r\n 'lukewarm',\r\n 'lullaby',\r\n 'lumber',\r\n 'luminance',\r\n 'luminous',\r\n 'lumpiness',\r\n 'lumping',\r\n 'lumpish',\r\n 'lunacy',\r\n 'lunar',\r\n 'lunchbox',\r\n 'luncheon',\r\n 'lunchroom',\r\n 'lunchtime',\r\n 'lung',\r\n 'lurch',\r\n 'lure',\r\n 'luridness',\r\n 'lurk',\r\n 'lushly',\r\n 'lushness',\r\n 'luster',\r\n 'lustfully',\r\n 'lustily',\r\n 'lustiness',\r\n 'lustrous',\r\n 'lusty',\r\n 'luxurious',\r\n 'luxury',\r\n 'lying',\r\n 'lyrically',\r\n 'lyricism',\r\n 'lyricist',\r\n 'lyrics',\r\n 'macarena',\r\n 'macaroni',\r\n 'macaw',\r\n 'mace',\r\n 'machine',\r\n 'machinist',\r\n 'magazine',\r\n 'magenta',\r\n 'maggot',\r\n 'magical',\r\n 'magician',\r\n 'magma',\r\n 'magnesium',\r\n 'magnetic',\r\n 'magnetism',\r\n 'magnetize',\r\n 'magnifier',\r\n 'magnify',\r\n 'magnitude',\r\n 'magnolia',\r\n 'mahogany',\r\n 'maimed',\r\n 'majestic',\r\n 'majesty',\r\n 'majorette',\r\n 'majority',\r\n 'makeover',\r\n 'maker',\r\n 'makeshift',\r\n 'making',\r\n 'malformed',\r\n 'malt',\r\n 'mama',\r\n 'mammal',\r\n 'mammary',\r\n 'mammogram',\r\n 'manager',\r\n 'managing',\r\n 'manatee',\r\n 'mandarin',\r\n 'mandate',\r\n 'mandatory',\r\n 'mandolin',\r\n 'manger',\r\n 'mangle',\r\n 'mango',\r\n 'mangy',\r\n 'manhandle',\r\n 'manhole',\r\n 'manhood',\r\n 'manhunt',\r\n 'manicotti',\r\n 'manicure',\r\n 'manifesto',\r\n 'manila',\r\n 'mankind',\r\n 'manlike',\r\n 'manliness',\r\n 'manly',\r\n 'manmade',\r\n 'manned',\r\n 'mannish',\r\n 'manor',\r\n 'manpower',\r\n 'mantis',\r\n 'mantra',\r\n 'manual',\r\n 'many',\r\n 'map',\r\n 'marathon',\r\n 'marauding',\r\n 'marbled',\r\n 'marbles',\r\n 'marbling',\r\n 'march',\r\n 'mardi',\r\n 'margarine',\r\n 'margarita',\r\n 'margin',\r\n 'marigold',\r\n 'marina',\r\n 'marine',\r\n 'marital',\r\n 'maritime',\r\n 'marlin',\r\n 'marmalade',\r\n 'maroon',\r\n 'married',\r\n 'marrow',\r\n 'marry',\r\n 'marshland',\r\n 'marshy',\r\n 'marsupial',\r\n 'marvelous',\r\n 'marxism',\r\n 'mascot',\r\n 'masculine',\r\n 'mashed',\r\n 'mashing',\r\n 'massager',\r\n 'masses',\r\n 'massive',\r\n 'mastiff',\r\n 'matador',\r\n 'matchbook',\r\n 'matchbox',\r\n 'matcher',\r\n 'matching',\r\n 'matchless',\r\n 'material',\r\n 'maternal',\r\n 'maternity',\r\n 'math',\r\n 'mating',\r\n 'matriarch',\r\n 'matrimony',\r\n 'matrix',\r\n 'matron',\r\n 'matted',\r\n 'matter',\r\n 'maturely',\r\n 'maturing',\r\n 'maturity',\r\n 'mauve',\r\n 'maverick',\r\n 'maximize',\r\n 'maximum',\r\n 'maybe',\r\n 'mayday',\r\n 'mayflower',\r\n 'moaner',\r\n 'moaning',\r\n 'mobile',\r\n 'mobility',\r\n 'mobilize',\r\n 'mobster',\r\n 'mocha',\r\n 'mocker',\r\n 'mockup',\r\n 'modified',\r\n 'modify',\r\n 'modular',\r\n 'modulator',\r\n 'module',\r\n 'moisten',\r\n 'moistness',\r\n 'moisture',\r\n 'molar',\r\n 'molasses',\r\n 'mold',\r\n 'molecular',\r\n 'molecule',\r\n 'molehill',\r\n 'mollusk',\r\n 'mom',\r\n 'monastery',\r\n 'monday',\r\n 'monetary',\r\n 'monetize',\r\n 'moneybags',\r\n 'moneyless',\r\n 'moneywise',\r\n 'mongoose',\r\n 'mongrel',\r\n 'monitor',\r\n 'monkhood',\r\n 'monogamy',\r\n 'monogram',\r\n 'monologue',\r\n 'monopoly',\r\n 'monorail',\r\n 'monotone',\r\n 'monotype',\r\n 'monoxide',\r\n 'monsieur',\r\n 'monsoon',\r\n 'monstrous',\r\n 'monthly',\r\n 'monument',\r\n 'moocher',\r\n 'moodiness',\r\n 'moody',\r\n 'mooing',\r\n 'moonbeam',\r\n 'mooned',\r\n 'moonlight',\r\n 'moonlike',\r\n 'moonlit',\r\n 'moonrise',\r\n 'moonscape',\r\n 'moonshine',\r\n 'moonstone',\r\n 'moonwalk',\r\n 'mop',\r\n 'morale',\r\n 'morality',\r\n 'morally',\r\n 'morbidity',\r\n 'morbidly',\r\n 'morphine',\r\n 'morphing',\r\n 'morse',\r\n 'mortality',\r\n 'mortally',\r\n 'mortician',\r\n 'mortified',\r\n 'mortify',\r\n 'mortuary',\r\n 'mosaic',\r\n 'mossy',\r\n 'most',\r\n 'mothball',\r\n 'mothproof',\r\n 'motion',\r\n 'motivate',\r\n 'motivator',\r\n 'motive',\r\n 'motocross',\r\n 'motor',\r\n 'motto',\r\n 'mountable',\r\n 'mountain',\r\n 'mounted',\r\n 'mounting',\r\n 'mourner',\r\n 'mournful',\r\n 'mouse',\r\n 'mousiness',\r\n 'moustache',\r\n 'mousy',\r\n 'mouth',\r\n 'movable',\r\n 'move',\r\n 'movie',\r\n 'moving',\r\n 'mower',\r\n 'mowing',\r\n 'much',\r\n 'muck',\r\n 'mud',\r\n 'mug',\r\n 'mulberry',\r\n 'mulch',\r\n 'mule',\r\n 'mulled',\r\n 'mullets',\r\n 'multiple',\r\n 'multiply',\r\n 'multitask',\r\n 'multitude',\r\n 'mumble',\r\n 'mumbling',\r\n 'mumbo',\r\n 'mummified',\r\n 'mummify',\r\n 'mummy',\r\n 'mumps',\r\n 'munchkin',\r\n 'mundane',\r\n 'municipal',\r\n 'muppet',\r\n 'mural',\r\n 'murkiness',\r\n 'murky',\r\n 'murmuring',\r\n 'muscular',\r\n 'museum',\r\n 'mushily',\r\n 'mushiness',\r\n 'mushroom',\r\n 'mushy',\r\n 'music',\r\n 'musket',\r\n 'muskiness',\r\n 'musky',\r\n 'mustang',\r\n 'mustard',\r\n 'muster',\r\n 'mustiness',\r\n 'musty',\r\n 'mutable',\r\n 'mutate',\r\n 'mutation',\r\n 'mute',\r\n 'mutilated',\r\n 'mutilator',\r\n 'mutiny',\r\n 'mutt',\r\n 'mutual',\r\n 'muzzle',\r\n 'myself',\r\n 'myspace',\r\n 'mystified',\r\n 'mystify',\r\n 'myth',\r\n 'nacho',\r\n 'nag',\r\n 'nail',\r\n 'name',\r\n 'naming',\r\n 'nanny',\r\n 'nanometer',\r\n 'nape',\r\n 'napkin',\r\n 'napped',\r\n 'napping',\r\n 'nappy',\r\n 'narrow',\r\n 'nastily',\r\n 'nastiness',\r\n 'national',\r\n 'native',\r\n 'nativity',\r\n 'natural',\r\n 'nature',\r\n 'naturist',\r\n 'nautical',\r\n 'navigate',\r\n 'navigator',\r\n 'navy',\r\n 'nearby',\r\n 'nearest',\r\n 'nearly',\r\n 'nearness',\r\n 'neatly',\r\n 'neatness',\r\n 'nebula',\r\n 'nebulizer',\r\n 'nectar',\r\n 'negate',\r\n 'negation',\r\n 'negative',\r\n 'neglector',\r\n 'negligee',\r\n 'negligent',\r\n 'negotiate',\r\n 'nemeses',\r\n 'nemesis',\r\n 'neon',\r\n 'nephew',\r\n 'nerd',\r\n 'nervous',\r\n 'nervy',\r\n 'nest',\r\n 'net',\r\n 'neurology',\r\n 'neuron',\r\n 'neurosis',\r\n 'neurotic',\r\n 'neuter',\r\n 'neutron',\r\n 'never',\r\n 'next',\r\n 'nibble',\r\n 'nickname',\r\n 'nicotine',\r\n 'niece',\r\n 'nifty',\r\n 'nimble',\r\n 'nimbly',\r\n 'nineteen',\r\n 'ninetieth',\r\n 'ninja',\r\n 'nintendo',\r\n 'ninth',\r\n 'nuclear',\r\n 'nuclei',\r\n 'nucleus',\r\n 'nugget',\r\n 'nullify',\r\n 'number',\r\n 'numbing',\r\n 'numbly',\r\n 'numbness',\r\n 'numeral',\r\n 'numerate',\r\n 'numerator',\r\n 'numeric',\r\n 'numerous',\r\n 'nuptials',\r\n 'nursery',\r\n 'nursing',\r\n 'nurture',\r\n 'nutcase',\r\n 'nutlike',\r\n 'nutmeg',\r\n 'nutrient',\r\n 'nutshell',\r\n 'nuttiness',\r\n 'nutty',\r\n 'nuzzle',\r\n 'nylon',\r\n 'oaf',\r\n 'oak',\r\n 'oasis',\r\n 'oat',\r\n 'obedience',\r\n 'obedient',\r\n 'obituary',\r\n 'object',\r\n 'obligate',\r\n 'obliged',\r\n 'oblivion',\r\n 'oblivious',\r\n 'oblong',\r\n 'obnoxious',\r\n 'oboe',\r\n 'obscure',\r\n 'obscurity',\r\n 'observant',\r\n 'observer',\r\n 'observing',\r\n 'obsessed',\r\n 'obsession',\r\n 'obsessive',\r\n 'obsolete',\r\n 'obstacle',\r\n 'obstinate',\r\n 'obstruct',\r\n 'obtain',\r\n 'obtrusive',\r\n 'obtuse',\r\n 'obvious',\r\n 'occultist',\r\n 'occupancy',\r\n 'occupant',\r\n 'occupier',\r\n 'occupy',\r\n 'ocean',\r\n 'ocelot',\r\n 'octagon',\r\n 'octane',\r\n 'october',\r\n 'octopus',\r\n 'ogle',\r\n 'oil',\r\n 'oink',\r\n 'ointment',\r\n 'okay',\r\n 'old',\r\n 'olive',\r\n 'olympics',\r\n 'omega',\r\n 'omen',\r\n 'ominous',\r\n 'omission',\r\n 'omit',\r\n 'omnivore',\r\n 'onboard',\r\n 'oncoming',\r\n 'ongoing',\r\n 'onion',\r\n 'online',\r\n 'onlooker',\r\n 'only',\r\n 'onscreen',\r\n 'onset',\r\n 'onshore',\r\n 'onslaught',\r\n 'onstage',\r\n 'onto',\r\n 'onward',\r\n 'onyx',\r\n 'oops',\r\n 'ooze',\r\n 'oozy',\r\n 'opacity',\r\n 'opal',\r\n 'open',\r\n 'operable',\r\n 'operate',\r\n 'operating',\r\n 'operation',\r\n 'operative',\r\n 'operator',\r\n 'opium',\r\n 'opossum',\r\n 'opponent',\r\n 'oppose',\r\n 'opposing',\r\n 'opposite',\r\n 'oppressed',\r\n 'oppressor',\r\n 'opt',\r\n 'opulently',\r\n 'osmosis',\r\n 'other',\r\n 'otter',\r\n 'ouch',\r\n 'ought',\r\n 'ounce',\r\n 'outage',\r\n 'outback',\r\n 'outbid',\r\n 'outboard',\r\n 'outbound',\r\n 'outbreak',\r\n 'outburst',\r\n 'outcast',\r\n 'outclass',\r\n 'outcome',\r\n 'outdated',\r\n 'outdoors',\r\n 'outer',\r\n 'outfield',\r\n 'outfit',\r\n 'outflank',\r\n 'outgoing',\r\n 'outgrow',\r\n 'outhouse',\r\n 'outing',\r\n 'outlast',\r\n 'outlet',\r\n 'outline',\r\n 'outlook',\r\n 'outlying',\r\n 'outmatch',\r\n 'outmost',\r\n 'outnumber',\r\n 'outplayed',\r\n 'outpost',\r\n 'outpour',\r\n 'output',\r\n 'outrage',\r\n 'outrank',\r\n 'outreach',\r\n 'outright',\r\n 'outscore',\r\n 'outsell',\r\n 'outshine',\r\n 'outshoot',\r\n 'outsider',\r\n 'outskirts',\r\n 'outsmart',\r\n 'outsource',\r\n 'outspoken',\r\n 'outtakes',\r\n 'outthink',\r\n 'outward',\r\n 'outweigh',\r\n 'outwit',\r\n 'oval',\r\n 'ovary',\r\n 'oven',\r\n 'overact',\r\n 'overall',\r\n 'overarch',\r\n 'overbid',\r\n 'overbill',\r\n 'overbite',\r\n 'overblown',\r\n 'overboard',\r\n 'overbook',\r\n 'overbuilt',\r\n 'overcast',\r\n 'overcoat',\r\n 'overcome',\r\n 'overcook',\r\n 'overcrowd',\r\n 'overdraft',\r\n 'overdrawn',\r\n 'overdress',\r\n 'overdrive',\r\n 'overdue',\r\n 'overeager',\r\n 'overeater',\r\n 'overexert',\r\n 'overfed',\r\n 'overfeed',\r\n 'overfill',\r\n 'overflow',\r\n 'overfull',\r\n 'overgrown',\r\n 'overhand',\r\n 'overhang',\r\n 'overhaul',\r\n 'overhead',\r\n 'overhear',\r\n 'overheat',\r\n 'overhung',\r\n 'overjoyed',\r\n 'overkill',\r\n 'overlabor',\r\n 'overlaid',\r\n 'overlap',\r\n 'overlay',\r\n 'overload',\r\n 'overlook',\r\n 'overlord',\r\n 'overlying',\r\n 'overnight',\r\n 'overpass',\r\n 'overpay',\r\n 'overplant',\r\n 'overplay',\r\n 'overpower',\r\n 'overprice',\r\n 'overrate',\r\n 'overreach',\r\n 'overreact',\r\n 'override',\r\n 'overripe',\r\n 'overrule',\r\n 'overrun',\r\n 'overshoot',\r\n 'overshot',\r\n 'oversight',\r\n 'oversized',\r\n 'oversleep',\r\n 'oversold',\r\n 'overspend',\r\n 'overstate',\r\n 'overstay',\r\n 'overstep',\r\n 'overstock',\r\n 'overstuff',\r\n 'oversweet',\r\n 'overtake',\r\n 'overthrow',\r\n 'overtime',\r\n 'overtly',\r\n 'overtone',\r\n 'overture',\r\n 'overturn',\r\n 'overuse',\r\n 'overvalue',\r\n 'overview',\r\n 'overwrite',\r\n 'owl',\r\n 'oxford',\r\n 'oxidant',\r\n 'oxidation',\r\n 'oxidize',\r\n 'oxidizing',\r\n 'oxygen',\r\n 'oxymoron',\r\n 'oyster',\r\n 'ozone',\r\n 'paced',\r\n 'pacemaker',\r\n 'pacific',\r\n 'pacifier',\r\n 'pacifism',\r\n 'pacifist',\r\n 'pacify',\r\n 'padded',\r\n 'padding',\r\n 'paddle',\r\n 'paddling',\r\n 'padlock',\r\n 'pagan',\r\n 'pager',\r\n 'paging',\r\n 'pajamas',\r\n 'palace',\r\n 'palatable',\r\n 'palm',\r\n 'palpable',\r\n 'palpitate',\r\n 'paltry',\r\n 'pampered',\r\n 'pamperer',\r\n 'pampers',\r\n 'pamphlet',\r\n 'panama',\r\n 'pancake',\r\n 'pancreas',\r\n 'panda',\r\n 'pandemic',\r\n 'pang',\r\n 'panhandle',\r\n 'panic',\r\n 'panning',\r\n 'panorama',\r\n 'panoramic',\r\n 'panther',\r\n 'pantomime',\r\n 'pantry',\r\n 'pants',\r\n 'pantyhose',\r\n 'paparazzi',\r\n 'papaya',\r\n 'paper',\r\n 'paprika',\r\n 'papyrus',\r\n 'parabola',\r\n 'parachute',\r\n 'parade',\r\n 'paradox',\r\n 'paragraph',\r\n 'parakeet',\r\n 'paralegal',\r\n 'paralyses',\r\n 'paralysis',\r\n 'paralyze',\r\n 'paramedic',\r\n 'parameter',\r\n 'paramount',\r\n 'parasail',\r\n 'parasite',\r\n 'parasitic',\r\n 'parcel',\r\n 'parched',\r\n 'parchment',\r\n 'pardon',\r\n 'parish',\r\n 'parka',\r\n 'parking',\r\n 'parkway',\r\n 'parlor',\r\n 'parmesan',\r\n 'parole',\r\n 'parrot',\r\n 'parsley',\r\n 'parsnip',\r\n 'partake',\r\n 'parted',\r\n 'parting',\r\n 'partition',\r\n 'partly',\r\n 'partner',\r\n 'partridge',\r\n 'party',\r\n 'passable',\r\n 'passably',\r\n 'passage',\r\n 'passcode',\r\n 'passenger',\r\n 'passerby',\r\n 'passing',\r\n 'passion',\r\n 'passive',\r\n 'passivism',\r\n 'passover',\r\n 'passport',\r\n 'password',\r\n 'pasta',\r\n 'pasted',\r\n 'pastel',\r\n 'pastime',\r\n 'pastor',\r\n 'pastrami',\r\n 'pasture',\r\n 'pasty',\r\n 'patchwork',\r\n 'patchy',\r\n 'paternal',\r\n 'paternity',\r\n 'path',\r\n 'patience',\r\n 'patient',\r\n 'patio',\r\n 'patriarch',\r\n 'patriot',\r\n 'patrol',\r\n 'patronage',\r\n 'patronize',\r\n 'pauper',\r\n 'pavement',\r\n 'paver',\r\n 'pavestone',\r\n 'pavilion',\r\n 'paving',\r\n 'pawing',\r\n 'payable',\r\n 'payback',\r\n 'paycheck',\r\n 'payday',\r\n 'payee',\r\n 'payer',\r\n 'paying',\r\n 'payment',\r\n 'payphone',\r\n 'payroll',\r\n 'pebble',\r\n 'pebbly',\r\n 'pecan',\r\n 'pectin',\r\n 'peculiar',\r\n 'peddling',\r\n 'pediatric',\r\n 'pedicure',\r\n 'pedigree',\r\n 'pedometer',\r\n 'pegboard',\r\n 'pelican',\r\n 'pellet',\r\n 'pelt',\r\n 'pelvis',\r\n 'penalize',\r\n 'penalty',\r\n 'pencil',\r\n 'pendant',\r\n 'pending',\r\n 'penholder',\r\n 'penknife',\r\n 'pennant',\r\n 'penniless',\r\n 'penny',\r\n 'penpal',\r\n 'pension',\r\n 'pentagon',\r\n 'pentagram',\r\n 'pep',\r\n 'perceive',\r\n 'percent',\r\n 'perch',\r\n 'percolate',\r\n 'perennial',\r\n 'perfected',\r\n 'perfectly',\r\n 'perfume',\r\n 'periscope',\r\n 'perish',\r\n 'perjurer',\r\n 'perjury',\r\n 'perkiness',\r\n 'perky',\r\n 'perm',\r\n 'peroxide',\r\n 'perpetual',\r\n 'perplexed',\r\n 'persecute',\r\n 'persevere',\r\n 'persuaded',\r\n 'persuader',\r\n 'pesky',\r\n 'peso',\r\n 'pessimism',\r\n 'pessimist',\r\n 'pester',\r\n 'pesticide',\r\n 'petal',\r\n 'petite',\r\n 'petition',\r\n 'petri',\r\n 'petroleum',\r\n 'petted',\r\n 'petticoat',\r\n 'pettiness',\r\n 'petty',\r\n 'petunia',\r\n 'phantom',\r\n 'phobia',\r\n 'phoenix',\r\n 'phonebook',\r\n 'phoney',\r\n 'phonics',\r\n 'phoniness',\r\n 'phony',\r\n 'phosphate',\r\n 'photo',\r\n 'phrase',\r\n 'phrasing',\r\n 'placard',\r\n 'placate',\r\n 'placidly',\r\n 'plank',\r\n 'planner',\r\n 'plant',\r\n 'plasma',\r\n 'plaster',\r\n 'plastic',\r\n 'plated',\r\n 'platform',\r\n 'plating',\r\n 'platinum',\r\n 'platonic',\r\n 'platter',\r\n 'platypus',\r\n 'plausible',\r\n 'plausibly',\r\n 'playable',\r\n 'playback',\r\n 'player',\r\n 'playful',\r\n 'playgroup',\r\n 'playhouse',\r\n 'playing',\r\n 'playlist',\r\n 'playmaker',\r\n 'playmate',\r\n 'playoff',\r\n 'playpen',\r\n 'playroom',\r\n 'playset',\r\n 'plaything',\r\n 'playtime',\r\n 'plaza',\r\n 'pleading',\r\n 'pleat',\r\n 'pledge',\r\n 'plentiful',\r\n 'plenty',\r\n 'plethora',\r\n 'plexiglas',\r\n 'pliable',\r\n 'plod',\r\n 'plop',\r\n 'plot',\r\n 'plow',\r\n 'ploy',\r\n 'pluck',\r\n 'plug',\r\n 'plunder',\r\n 'plunging',\r\n 'plural',\r\n 'plus',\r\n 'plutonium',\r\n 'plywood',\r\n 'poach',\r\n 'pod',\r\n 'poem',\r\n 'poet',\r\n 'pogo',\r\n 'pointed',\r\n 'pointer',\r\n 'pointing',\r\n 'pointless',\r\n 'pointy',\r\n 'poise',\r\n 'poison',\r\n 'poker',\r\n 'poking',\r\n 'polar',\r\n 'police',\r\n 'policy',\r\n 'polio',\r\n 'polish',\r\n 'politely',\r\n 'polka',\r\n 'polo',\r\n 'polyester',\r\n 'polygon',\r\n 'polygraph',\r\n 'polymer',\r\n 'poncho',\r\n 'pond',\r\n 'pony',\r\n 'popcorn',\r\n 'pope',\r\n 'poplar',\r\n 'popper',\r\n 'poppy',\r\n 'popsicle',\r\n 'populace',\r\n 'popular',\r\n 'populate',\r\n 'porcupine',\r\n 'pork',\r\n 'porous',\r\n 'porridge',\r\n 'portable',\r\n 'portal',\r\n 'portfolio',\r\n 'porthole',\r\n 'portion',\r\n 'portly',\r\n 'portside',\r\n 'poser',\r\n 'posh',\r\n 'posing',\r\n 'possible',\r\n 'possibly',\r\n 'possum',\r\n 'postage',\r\n 'postal',\r\n 'postbox',\r\n 'postcard',\r\n 'posted',\r\n 'poster',\r\n 'posting',\r\n 'postnasal',\r\n 'posture',\r\n 'postwar',\r\n 'pouch',\r\n 'pounce',\r\n 'pouncing',\r\n 'pound',\r\n 'pouring',\r\n 'pout',\r\n 'powdered',\r\n 'powdering',\r\n 'powdery',\r\n 'power',\r\n 'powwow',\r\n 'pox',\r\n 'praising',\r\n 'prance',\r\n 'prancing',\r\n 'pranker',\r\n 'prankish',\r\n 'prankster',\r\n 'prayer',\r\n 'praying',\r\n 'preacher',\r\n 'preaching',\r\n 'preachy',\r\n 'preamble',\r\n 'precinct',\r\n 'precise',\r\n 'precision',\r\n 'precook',\r\n 'precut',\r\n 'predator',\r\n 'predefine',\r\n 'predict',\r\n 'preface',\r\n 'prefix',\r\n 'preflight',\r\n 'preformed',\r\n 'pregame',\r\n 'pregnancy',\r\n 'pregnant',\r\n 'preheated',\r\n 'prelaunch',\r\n 'prelaw',\r\n 'prelude',\r\n 'premiere',\r\n 'premises',\r\n 'premium',\r\n 'prenatal',\r\n 'preoccupy',\r\n 'preorder',\r\n 'prepaid',\r\n 'prepay',\r\n 'preplan',\r\n 'preppy',\r\n 'preschool',\r\n 'prescribe',\r\n 'preseason',\r\n 'preset',\r\n 'preshow',\r\n 'president',\r\n 'presoak',\r\n 'press',\r\n 'presume',\r\n 'presuming',\r\n 'preteen',\r\n 'pretended',\r\n 'pretender',\r\n 'pretense',\r\n 'pretext',\r\n 'pretty',\r\n 'pretzel',\r\n 'prevail',\r\n 'prevalent',\r\n 'prevent',\r\n 'preview',\r\n 'previous',\r\n 'prewar',\r\n 'prewashed',\r\n 'prideful',\r\n 'pried',\r\n 'primal',\r\n 'primarily',\r\n 'primary',\r\n 'primate',\r\n 'primer',\r\n 'primp',\r\n 'princess',\r\n 'print',\r\n 'prior',\r\n 'prism',\r\n 'prison',\r\n 'prissy',\r\n 'pristine',\r\n 'privacy',\r\n 'private',\r\n 'privatize',\r\n 'prize',\r\n 'proactive',\r\n 'probable',\r\n 'probably',\r\n 'probation',\r\n 'probe',\r\n 'probing',\r\n 'probiotic',\r\n 'problem',\r\n 'procedure',\r\n 'process',\r\n 'proclaim',\r\n 'procreate',\r\n 'procurer',\r\n 'prodigal',\r\n 'prodigy',\r\n 'produce',\r\n 'product',\r\n 'profane',\r\n 'profanity',\r\n 'professed',\r\n 'professor',\r\n 'profile',\r\n 'profound',\r\n 'profusely',\r\n 'progeny',\r\n 'prognosis',\r\n 'program',\r\n 'progress',\r\n 'projector',\r\n 'prologue',\r\n 'prolonged',\r\n 'promenade',\r\n 'prominent',\r\n 'promoter',\r\n 'promotion',\r\n 'prompter',\r\n 'promptly',\r\n 'prone',\r\n 'prong',\r\n 'pronounce',\r\n 'pronto',\r\n 'proofing',\r\n 'proofread',\r\n 'proofs',\r\n 'propeller',\r\n 'properly',\r\n 'property',\r\n 'proponent',\r\n 'proposal',\r\n 'propose',\r\n 'props',\r\n 'prorate',\r\n 'protector',\r\n 'protegee',\r\n 'proton',\r\n 'prototype',\r\n 'protozoan',\r\n 'protract',\r\n 'protrude',\r\n 'proud',\r\n 'provable',\r\n 'proved',\r\n 'proven',\r\n 'provided',\r\n 'provider',\r\n 'providing',\r\n 'province',\r\n 'proving',\r\n 'provoke',\r\n 'provoking',\r\n 'provolone',\r\n 'prowess',\r\n 'prowler',\r\n 'prowling',\r\n 'proximity',\r\n 'proxy',\r\n 'prozac',\r\n 'prude',\r\n 'prudishly',\r\n 'prune',\r\n 'pruning',\r\n 'pry',\r\n 'psychic',\r\n 'public',\r\n 'publisher',\r\n 'pucker',\r\n 'pueblo',\r\n 'pug',\r\n 'pull',\r\n 'pulmonary',\r\n 'pulp',\r\n 'pulsate',\r\n 'pulse',\r\n 'pulverize',\r\n 'puma',\r\n 'pumice',\r\n 'pummel',\r\n 'punch',\r\n 'punctual',\r\n 'punctuate',\r\n 'punctured',\r\n 'pungent',\r\n 'punisher',\r\n 'punk',\r\n 'pupil',\r\n 'puppet',\r\n 'puppy',\r\n 'purchase',\r\n 'pureblood',\r\n 'purebred',\r\n 'purely',\r\n 'pureness',\r\n 'purgatory',\r\n 'purge',\r\n 'purging',\r\n 'purifier',\r\n 'purify',\r\n 'purist',\r\n 'puritan',\r\n 'purity',\r\n 'purple',\r\n 'purplish',\r\n 'purposely',\r\n 'purr',\r\n 'purse',\r\n 'pursuable',\r\n 'pursuant',\r\n 'pursuit',\r\n 'purveyor',\r\n 'pushcart',\r\n 'pushchair',\r\n 'pusher',\r\n 'pushiness',\r\n 'pushing',\r\n 'pushover',\r\n 'pushpin',\r\n 'pushup',\r\n 'pushy',\r\n 'putdown',\r\n 'putt',\r\n 'puzzle',\r\n 'puzzling',\r\n 'pyramid',\r\n 'pyromania',\r\n 'python',\r\n 'quack',\r\n 'quadrant',\r\n 'quail',\r\n 'quaintly',\r\n 'quake',\r\n 'quaking',\r\n 'qualified',\r\n 'qualifier',\r\n 'qualify',\r\n 'quality',\r\n 'qualm',\r\n 'quantum',\r\n 'quarrel',\r\n 'quarry',\r\n 'quartered',\r\n 'quarterly',\r\n 'quarters',\r\n 'quartet',\r\n 'quench',\r\n 'query',\r\n 'quicken',\r\n 'quickly',\r\n 'quickness',\r\n 'quicksand',\r\n 'quickstep',\r\n 'quiet',\r\n 'quill',\r\n 'quilt',\r\n 'quintet',\r\n 'quintuple',\r\n 'quirk',\r\n 'quit',\r\n 'quiver',\r\n 'quizzical',\r\n 'quotable',\r\n 'quotation',\r\n 'quote',\r\n 'rabid',\r\n 'race',\r\n 'racing',\r\n 'racism',\r\n 'rack',\r\n 'racoon',\r\n 'radar',\r\n 'radial',\r\n 'radiance',\r\n 'radiantly',\r\n 'radiated',\r\n 'radiation',\r\n 'radiator',\r\n 'radio',\r\n 'radish',\r\n 'raffle',\r\n 'raft',\r\n 'rage',\r\n 'ragged',\r\n 'raging',\r\n 'ragweed',\r\n 'raider',\r\n 'railcar',\r\n 'railing',\r\n 'railroad',\r\n 'railway',\r\n 'raisin',\r\n 'rake',\r\n 'raking',\r\n 'rally',\r\n 'ramble',\r\n 'rambling',\r\n 'ramp',\r\n 'ramrod',\r\n 'ranch',\r\n 'rancidity',\r\n 'random',\r\n 'ranged',\r\n 'ranger',\r\n 'ranging',\r\n 'ranked',\r\n 'ranking',\r\n 'ransack',\r\n 'ranting',\r\n 'rants',\r\n 'rare',\r\n 'rarity',\r\n 'rascal',\r\n 'rash',\r\n 'rasping',\r\n 'ravage',\r\n 'raven',\r\n 'ravine',\r\n 'raving',\r\n 'ravioli',\r\n 'ravishing',\r\n 'reabsorb',\r\n 'reach',\r\n 'reacquire',\r\n 'reaction',\r\n 'reactive',\r\n 'reactor',\r\n 'reaffirm',\r\n 'ream',\r\n 'reanalyze',\r\n 'reappear',\r\n 'reapply',\r\n 'reappoint',\r\n 'reapprove',\r\n 'rearrange',\r\n 'rearview',\r\n 'reason',\r\n 'reassign',\r\n 'reassure',\r\n 'reattach',\r\n 'reawake',\r\n 'rebalance',\r\n 'rebate',\r\n 'rebel',\r\n 'rebirth',\r\n 'reboot',\r\n 'reborn',\r\n 'rebound',\r\n 'rebuff',\r\n 'rebuild',\r\n 'rebuilt',\r\n 'reburial',\r\n 'rebuttal',\r\n 'recall',\r\n 'recant',\r\n 'recapture',\r\n 'recast',\r\n 'recede',\r\n 'recent',\r\n 'recess',\r\n 'recharger',\r\n 'recipient',\r\n 'recital',\r\n 'recite',\r\n 'reckless',\r\n 'reclaim',\r\n 'recliner',\r\n 'reclining',\r\n 'recluse',\r\n 'reclusive',\r\n 'recognize',\r\n 'recoil',\r\n 'recollect',\r\n 'recolor',\r\n 'reconcile',\r\n 'reconfirm',\r\n 'reconvene',\r\n 'recopy',\r\n 'record',\r\n 'recount',\r\n 'recoup',\r\n 'recovery',\r\n 'recreate',\r\n 'rectal',\r\n 'rectangle',\r\n 'rectified',\r\n 'rectify',\r\n 'recycled',\r\n 'recycler',\r\n 'recycling',\r\n 'reemerge',\r\n 'reenact',\r\n 'reenter',\r\n 'reentry',\r\n 'reexamine',\r\n 'referable',\r\n 'referee',\r\n 'reference',\r\n 'refill',\r\n 'refinance',\r\n 'refined',\r\n 'refinery',\r\n 'refining',\r\n 'refinish',\r\n 'reflected',\r\n 'reflector',\r\n 'reflex',\r\n 'reflux',\r\n 'refocus',\r\n 'refold',\r\n 'reforest',\r\n 'reformat',\r\n 'reformed',\r\n 'reformer',\r\n 'reformist',\r\n 'refract',\r\n 'refrain',\r\n 'refreeze',\r\n 'refresh',\r\n 'refried',\r\n 'refueling',\r\n 'refund',\r\n 'refurbish',\r\n 'refurnish',\r\n 'refusal',\r\n 'refuse',\r\n 'refusing',\r\n 'refutable',\r\n 'refute',\r\n 'regain',\r\n 'regalia',\r\n 'regally',\r\n 'reggae',\r\n 'regime',\r\n 'region',\r\n 'register',\r\n 'registrar',\r\n 'registry',\r\n 'regress',\r\n 'regretful',\r\n 'regroup',\r\n 'regular',\r\n 'regulate',\r\n 'regulator',\r\n 'rehab',\r\n 'reheat',\r\n 'rehire',\r\n 'rehydrate',\r\n 'reimburse',\r\n 'reissue',\r\n 'reiterate',\r\n 'rejoice',\r\n 'rejoicing',\r\n 'rejoin',\r\n 'rekindle',\r\n 'relapse',\r\n 'relapsing',\r\n 'relatable',\r\n 'related',\r\n 'relation',\r\n 'relative',\r\n 'relax',\r\n 'relay',\r\n 'relearn',\r\n 'release',\r\n 'relenting',\r\n 'reliable',\r\n 'reliably',\r\n 'reliance',\r\n 'reliant',\r\n 'relic',\r\n 'relieve',\r\n 'relieving',\r\n 'relight',\r\n 'relish',\r\n 'relive',\r\n 'reload',\r\n 'relocate',\r\n 'relock',\r\n 'reluctant',\r\n 'rely',\r\n 'remake',\r\n 'remark',\r\n 'remarry',\r\n 'rematch',\r\n 'remedial',\r\n 'remedy',\r\n 'remember',\r\n 'reminder',\r\n 'remindful',\r\n 'remission',\r\n 'remix',\r\n 'remnant',\r\n 'remodeler',\r\n 'remold',\r\n 'remorse',\r\n 'remote',\r\n 'removable',\r\n 'removal',\r\n 'removed',\r\n 'remover',\r\n 'removing',\r\n 'rename',\r\n 'renderer',\r\n 'rendering',\r\n 'rendition',\r\n 'renegade',\r\n 'renewable',\r\n 'renewably',\r\n 'renewal',\r\n 'renewed',\r\n 'renounce',\r\n 'renovate',\r\n 'renovator',\r\n 'rentable',\r\n 'rental',\r\n 'rented',\r\n 'renter',\r\n 'reoccupy',\r\n 'reoccur',\r\n 'reopen',\r\n 'reorder',\r\n 'repackage',\r\n 'repacking',\r\n 'repaint',\r\n 'repair',\r\n 'repave',\r\n 'repaying',\r\n 'repayment',\r\n 'repeal',\r\n 'repeated',\r\n 'repeater',\r\n 'repent',\r\n 'rephrase',\r\n 'replace',\r\n 'replay',\r\n 'replica',\r\n 'reply',\r\n 'reporter',\r\n 'repose',\r\n 'repossess',\r\n 'repost',\r\n 'repressed',\r\n 'reprimand',\r\n 'reprint',\r\n 'reprise',\r\n 'reproach',\r\n 'reprocess',\r\n 'reproduce',\r\n 'reprogram',\r\n 'reps',\r\n 'reptile',\r\n 'reptilian',\r\n 'repugnant',\r\n 'repulsion',\r\n 'repulsive',\r\n 'repurpose',\r\n 'reputable',\r\n 'reputably',\r\n 'request',\r\n 'require',\r\n 'requisite',\r\n 'reroute',\r\n 'rerun',\r\n 'resale',\r\n 'resample',\r\n 'rescuer',\r\n 'reseal',\r\n 'research',\r\n 'reselect',\r\n 'reseller',\r\n 'resemble',\r\n 'resend',\r\n 'resent',\r\n 'reset',\r\n 'reshape',\r\n 'reshoot',\r\n 'reshuffle',\r\n 'residence',\r\n 'residency',\r\n 'resident',\r\n 'residual',\r\n 'residue',\r\n 'resigned',\r\n 'resilient',\r\n 'resistant',\r\n 'resisting',\r\n 'resize',\r\n 'resolute',\r\n 'resolved',\r\n 'resonant',\r\n 'resonate',\r\n 'resort',\r\n 'resource',\r\n 'respect',\r\n 'resubmit',\r\n 'result',\r\n 'resume',\r\n 'resupply',\r\n 'resurface',\r\n 'resurrect',\r\n 'retail',\r\n 'retainer',\r\n 'retaining',\r\n 'retake',\r\n 'retaliate',\r\n 'retention',\r\n 'rethink',\r\n 'retinal',\r\n 'retired',\r\n 'retiree',\r\n 'retiring',\r\n 'retold',\r\n 'retool',\r\n 'retorted',\r\n 'retouch',\r\n 'retrace',\r\n 'retract',\r\n 'retrain',\r\n 'retread',\r\n 'retreat',\r\n 'retrial',\r\n 'retrieval',\r\n 'retriever',\r\n 'retry',\r\n 'return',\r\n 'retying',\r\n 'retype',\r\n 'reunion',\r\n 'reunite',\r\n 'reusable',\r\n 'reuse',\r\n 'reveal',\r\n 'reveler',\r\n 'revenge',\r\n 'revenue',\r\n 'reverb',\r\n 'revered',\r\n 'reverence',\r\n 'reverend',\r\n 'reversal',\r\n 'reverse',\r\n 'reversing',\r\n 'reversion',\r\n 'revert',\r\n 'revisable',\r\n 'revise',\r\n 'revision',\r\n 'revisit',\r\n 'revivable',\r\n 'revival',\r\n 'reviver',\r\n 'reviving',\r\n 'revocable',\r\n 'revoke',\r\n 'revolt',\r\n 'revolver',\r\n 'revolving',\r\n 'reward',\r\n 'rewash',\r\n 'rewind',\r\n 'rewire',\r\n 'reword',\r\n 'rework',\r\n 'rewrap',\r\n 'rewrite',\r\n 'rhyme',\r\n 'ribbon',\r\n 'ribcage',\r\n 'rice',\r\n 'riches',\r\n 'richly',\r\n 'richness',\r\n 'rickety',\r\n 'ricotta',\r\n 'riddance',\r\n 'ridden',\r\n 'ride',\r\n 'riding',\r\n 'rifling',\r\n 'rift',\r\n 'rigging',\r\n 'rigid',\r\n 'rigor',\r\n 'rimless',\r\n 'rimmed',\r\n 'rind',\r\n 'rink',\r\n 'rinse',\r\n 'rinsing',\r\n 'riot',\r\n 'ripcord',\r\n 'ripeness',\r\n 'ripening',\r\n 'ripping',\r\n 'ripple',\r\n 'rippling',\r\n 'riptide',\r\n 'rise',\r\n 'rising',\r\n 'risk',\r\n 'risotto',\r\n 'ritalin',\r\n 'ritzy',\r\n 'rival',\r\n 'riverbank',\r\n 'riverbed',\r\n 'riverboat',\r\n 'riverside',\r\n 'riveter',\r\n 'riveting',\r\n 'roamer',\r\n 'roaming',\r\n 'roast',\r\n 'robbing',\r\n 'robe',\r\n 'robin',\r\n 'robotics',\r\n 'robust',\r\n 'rockband',\r\n 'rocker',\r\n 'rocket',\r\n 'rockfish',\r\n 'rockiness',\r\n 'rocking',\r\n 'rocklike',\r\n 'rockslide',\r\n 'rockstar',\r\n 'rocky',\r\n 'rogue',\r\n 'roman',\r\n 'romp',\r\n 'rope',\r\n 'roping',\r\n 'roster',\r\n 'rosy',\r\n 'rotten',\r\n 'rotting',\r\n 'rotunda',\r\n 'roulette',\r\n 'rounding',\r\n 'roundish',\r\n 'roundness',\r\n 'roundup',\r\n 'roundworm',\r\n 'routine',\r\n 'routing',\r\n 'rover',\r\n 'roving',\r\n 'royal',\r\n 'rubbed',\r\n 'rubber',\r\n 'rubbing',\r\n 'rubble',\r\n 'rubdown',\r\n 'ruby',\r\n 'ruckus',\r\n 'rudder',\r\n 'rug',\r\n 'ruined',\r\n 'rule',\r\n 'rumble',\r\n 'rumbling',\r\n 'rummage',\r\n 'rumor',\r\n 'runaround',\r\n 'rundown',\r\n 'runner',\r\n 'running',\r\n 'runny',\r\n 'runt',\r\n 'runway',\r\n 'rupture',\r\n 'rural',\r\n 'ruse',\r\n 'rush',\r\n 'rust',\r\n 'rut',\r\n 'sabbath',\r\n 'sabotage',\r\n 'sacrament',\r\n 'sacred',\r\n 'sacrifice',\r\n 'sadden',\r\n 'saddlebag',\r\n 'saddled',\r\n 'saddling',\r\n 'sadly',\r\n 'sadness',\r\n 'safari',\r\n 'safeguard',\r\n 'safehouse',\r\n 'safely',\r\n 'safeness',\r\n 'saffron',\r\n 'saga',\r\n 'sage',\r\n 'sagging',\r\n 'saggy',\r\n 'said',\r\n 'saint',\r\n 'sake',\r\n 'salad',\r\n 'salami',\r\n 'salaried',\r\n 'salary',\r\n 'saline',\r\n 'salon',\r\n 'saloon',\r\n 'salsa',\r\n 'salt',\r\n 'salutary',\r\n 'salute',\r\n 'salvage',\r\n 'salvaging',\r\n 'salvation',\r\n 'same',\r\n 'sample',\r\n 'sampling',\r\n 'sanction',\r\n 'sanctity',\r\n 'sanctuary',\r\n 'sandal',\r\n 'sandbag',\r\n 'sandbank',\r\n 'sandbar',\r\n 'sandblast',\r\n 'sandbox',\r\n 'sanded',\r\n 'sandfish',\r\n 'sanding',\r\n 'sandlot',\r\n 'sandpaper',\r\n 'sandpit',\r\n 'sandstone',\r\n 'sandstorm',\r\n 'sandworm',\r\n 'sandy',\r\n 'sanitary',\r\n 'sanitizer',\r\n 'sank',\r\n 'santa',\r\n 'sapling',\r\n 'sappiness',\r\n 'sappy',\r\n 'sarcasm',\r\n 'sarcastic',\r\n 'sardine',\r\n 'sash',\r\n 'sasquatch',\r\n 'sassy',\r\n 'satchel',\r\n 'satiable',\r\n 'satin',\r\n 'satirical',\r\n 'satisfied',\r\n 'satisfy',\r\n 'saturate',\r\n 'saturday',\r\n 'sauciness',\r\n 'saucy',\r\n 'sauna',\r\n 'savage',\r\n 'savanna',\r\n 'saved',\r\n 'savings',\r\n 'savior',\r\n 'savor',\r\n 'saxophone',\r\n 'say',\r\n 'scabbed',\r\n 'scabby',\r\n 'scalded',\r\n 'scalding',\r\n 'scale',\r\n 'scaling',\r\n 'scallion',\r\n 'scallop',\r\n 'scalping',\r\n 'scam',\r\n 'scandal',\r\n 'scanner',\r\n 'scanning',\r\n 'scant',\r\n 'scapegoat',\r\n 'scarce',\r\n 'scarcity',\r\n 'scarecrow',\r\n 'scared',\r\n 'scarf',\r\n 'scarily',\r\n 'scariness',\r\n 'scarring',\r\n 'scary',\r\n 'scavenger',\r\n 'scenic',\r\n 'schedule',\r\n 'schematic',\r\n 'scheme',\r\n 'scheming',\r\n 'schilling',\r\n 'schnapps',\r\n 'scholar',\r\n 'science',\r\n 'scientist',\r\n 'scion',\r\n 'scoff',\r\n 'scolding',\r\n 'scone',\r\n 'scoop',\r\n 'scooter',\r\n 'scope',\r\n 'scorch',\r\n 'scorebook',\r\n 'scorecard',\r\n 'scored',\r\n 'scoreless',\r\n 'scorer',\r\n 'scoring',\r\n 'scorn',\r\n 'scorpion',\r\n 'scotch',\r\n 'scoundrel',\r\n 'scoured',\r\n 'scouring',\r\n 'scouting',\r\n 'scouts',\r\n 'scowling',\r\n 'scrabble',\r\n 'scraggly',\r\n 'scrambled',\r\n 'scrambler',\r\n 'scrap',\r\n 'scratch',\r\n 'scrawny',\r\n 'screen',\r\n 'scribble',\r\n 'scribe',\r\n 'scribing',\r\n 'scrimmage',\r\n 'script',\r\n 'scroll',\r\n 'scrooge',\r\n 'scrounger',\r\n 'scrubbed',\r\n 'scrubber',\r\n 'scruffy',\r\n 'scrunch',\r\n 'scrutiny',\r\n 'scuba',\r\n 'scuff',\r\n 'sculptor',\r\n 'sculpture',\r\n 'scurvy',\r\n 'scuttle',\r\n 'secluded',\r\n 'secluding',\r\n 'seclusion',\r\n 'second',\r\n 'secrecy',\r\n 'secret',\r\n 'sectional',\r\n 'sector',\r\n 'secular',\r\n 'securely',\r\n 'security',\r\n 'sedan',\r\n 'sedate',\r\n 'sedation',\r\n 'sedative',\r\n 'sediment',\r\n 'seduce',\r\n 'seducing',\r\n 'segment',\r\n 'seismic',\r\n 'seizing',\r\n 'seldom',\r\n 'selected',\r\n 'selection',\r\n 'selective',\r\n 'selector',\r\n 'self',\r\n 'seltzer',\r\n 'semantic',\r\n 'semester',\r\n 'semicolon',\r\n 'semifinal',\r\n 'seminar',\r\n 'semisoft',\r\n 'semisweet',\r\n 'senate',\r\n 'senator',\r\n 'send',\r\n 'senior',\r\n 'senorita',\r\n 'sensation',\r\n 'sensitive',\r\n 'sensitize',\r\n 'sensually',\r\n 'sensuous',\r\n 'sepia',\r\n 'september',\r\n 'septic',\r\n 'septum',\r\n 'sequel',\r\n 'sequence',\r\n 'sequester',\r\n 'series',\r\n 'sermon',\r\n 'serotonin',\r\n 'serpent',\r\n 'serrated',\r\n 'serve',\r\n 'service',\r\n 'serving',\r\n 'sesame',\r\n 'sessions',\r\n 'setback',\r\n 'setting',\r\n 'settle',\r\n 'settling',\r\n 'setup',\r\n 'sevenfold',\r\n 'seventeen',\r\n 'seventh',\r\n 'seventy',\r\n 'severity',\r\n 'shabby',\r\n 'shack',\r\n 'shaded',\r\n 'shadily',\r\n 'shadiness',\r\n 'shading',\r\n 'shadow',\r\n 'shady',\r\n 'shaft',\r\n 'shakable',\r\n 'shakily',\r\n 'shakiness',\r\n 'shaking',\r\n 'shaky',\r\n 'shale',\r\n 'shallot',\r\n 'shallow',\r\n 'shame',\r\n 'shampoo',\r\n 'shamrock',\r\n 'shank',\r\n 'shanty',\r\n 'shape',\r\n 'shaping',\r\n 'share',\r\n 'sharpener',\r\n 'sharper',\r\n 'sharpie',\r\n 'sharply',\r\n 'sharpness',\r\n 'shawl',\r\n 'sheath',\r\n 'shed',\r\n 'sheep',\r\n 'sheet',\r\n 'shelf',\r\n 'shell',\r\n 'shelter',\r\n 'shelve',\r\n 'shelving',\r\n 'sherry',\r\n 'shield',\r\n 'shifter',\r\n 'shifting',\r\n 'shiftless',\r\n 'shifty',\r\n 'shimmer',\r\n 'shimmy',\r\n 'shindig',\r\n 'shine',\r\n 'shingle',\r\n 'shininess',\r\n 'shining',\r\n 'shiny',\r\n 'ship',\r\n 'shirt',\r\n 'shivering',\r\n 'shock',\r\n 'shone',\r\n 'shoplift',\r\n 'shopper',\r\n 'shopping',\r\n 'shoptalk',\r\n 'shore',\r\n 'shortage',\r\n 'shortcake',\r\n 'shortcut',\r\n 'shorten',\r\n 'shorter',\r\n 'shorthand',\r\n 'shortlist',\r\n 'shortly',\r\n 'shortness',\r\n 'shorts',\r\n 'shortwave',\r\n 'shorty',\r\n 'shout',\r\n 'shove',\r\n 'showbiz',\r\n 'showcase',\r\n 'showdown',\r\n 'shower',\r\n 'showgirl',\r\n 'showing',\r\n 'showman',\r\n 'shown',\r\n 'showoff',\r\n 'showpiece',\r\n 'showplace',\r\n 'showroom',\r\n 'showy',\r\n 'shrank',\r\n 'shrapnel',\r\n 'shredder',\r\n 'shredding',\r\n 'shrewdly',\r\n 'shriek',\r\n 'shrill',\r\n 'shrimp',\r\n 'shrine',\r\n 'shrink',\r\n 'shrivel',\r\n 'shrouded',\r\n 'shrubbery',\r\n 'shrubs',\r\n 'shrug',\r\n 'shrunk',\r\n 'shucking',\r\n 'shudder',\r\n 'shuffle',\r\n 'shuffling',\r\n 'shun',\r\n 'shush',\r\n 'shut',\r\n 'shy',\r\n 'siamese',\r\n 'siberian',\r\n 'sibling',\r\n 'siding',\r\n 'sierra',\r\n 'siesta',\r\n 'sift',\r\n 'sighing',\r\n 'silenced',\r\n 'silencer',\r\n 'silent',\r\n 'silica',\r\n 'silicon',\r\n 'silk',\r\n 'silliness',\r\n 'silly',\r\n 'silo',\r\n 'silt',\r\n 'silver',\r\n 'similarly',\r\n 'simile',\r\n 'simmering',\r\n 'simple',\r\n 'simplify',\r\n 'simply',\r\n 'sincere',\r\n 'sincerity',\r\n 'singer',\r\n 'singing',\r\n 'single',\r\n 'singular',\r\n 'sinister',\r\n 'sinless',\r\n 'sinner',\r\n 'sinuous',\r\n 'sip',\r\n 'siren',\r\n 'sister',\r\n 'sitcom',\r\n 'sitter',\r\n 'sitting',\r\n 'situated',\r\n 'situation',\r\n 'sixfold',\r\n 'sixteen',\r\n 'sixth',\r\n 'sixties',\r\n 'sixtieth',\r\n 'sixtyfold',\r\n 'sizable',\r\n 'sizably',\r\n 'size',\r\n 'sizing',\r\n 'sizzle',\r\n 'sizzling',\r\n 'skater',\r\n 'skating',\r\n 'skedaddle',\r\n 'skeletal',\r\n 'skeleton',\r\n 'skeptic',\r\n 'sketch',\r\n 'skewed',\r\n 'skewer',\r\n 'skid',\r\n 'skied',\r\n 'skier',\r\n 'skies',\r\n 'skiing',\r\n 'skilled',\r\n 'skillet',\r\n 'skillful',\r\n 'skimmed',\r\n 'skimmer',\r\n 'skimming',\r\n 'skimpily',\r\n 'skincare',\r\n 'skinhead',\r\n 'skinless',\r\n 'skinning',\r\n 'skinny',\r\n 'skintight',\r\n 'skipper',\r\n 'skipping',\r\n 'skirmish',\r\n 'skirt',\r\n 'skittle',\r\n 'skydiver',\r\n 'skylight',\r\n 'skyline',\r\n 'skype',\r\n 'skyrocket',\r\n 'skyward',\r\n 'slab',\r\n 'slacked',\r\n 'slacker',\r\n 'slacking',\r\n 'slackness',\r\n 'slacks',\r\n 'slain',\r\n 'slam',\r\n 'slander',\r\n 'slang',\r\n 'slapping',\r\n 'slapstick',\r\n 'slashed',\r\n 'slashing',\r\n 'slate',\r\n 'slather',\r\n 'slaw',\r\n 'sled',\r\n 'sleek',\r\n 'sleep',\r\n 'sleet',\r\n 'sleeve',\r\n 'slept',\r\n 'sliceable',\r\n 'sliced',\r\n 'slicer',\r\n 'slicing',\r\n 'slick',\r\n 'slider',\r\n 'slideshow',\r\n 'sliding',\r\n 'slighted',\r\n 'slighting',\r\n 'slightly',\r\n 'slimness',\r\n 'slimy',\r\n 'slinging',\r\n 'slingshot',\r\n 'slinky',\r\n 'slip',\r\n 'slit',\r\n 'sliver',\r\n 'slobbery',\r\n 'slogan',\r\n 'sloped',\r\n 'sloping',\r\n 'sloppily',\r\n 'sloppy',\r\n 'slot',\r\n 'slouching',\r\n 'slouchy',\r\n 'sludge',\r\n 'slug',\r\n 'slum',\r\n 'slurp',\r\n 'slush',\r\n 'sly',\r\n 'small',\r\n 'smartly',\r\n 'smartness',\r\n 'smasher',\r\n 'smashing',\r\n 'smashup',\r\n 'smell',\r\n 'smelting',\r\n 'smile',\r\n 'smilingly',\r\n 'smirk',\r\n 'smite',\r\n 'smith',\r\n 'smitten',\r\n 'smock',\r\n 'smog',\r\n 'smoked',\r\n 'smokeless',\r\n 'smokiness',\r\n 'smoking',\r\n 'smoky',\r\n 'smolder',\r\n 'smooth',\r\n 'smother',\r\n 'smudge',\r\n 'smudgy',\r\n 'smuggler',\r\n 'smuggling',\r\n 'smugly',\r\n 'smugness',\r\n 'snack',\r\n 'snagged',\r\n 'snaking',\r\n 'snap',\r\n 'snare',\r\n 'snarl',\r\n 'snazzy',\r\n 'sneak',\r\n 'sneer',\r\n 'sneeze',\r\n 'sneezing',\r\n 'snide',\r\n 'sniff',\r\n 'snippet',\r\n 'snipping',\r\n 'snitch',\r\n 'snooper',\r\n 'snooze',\r\n 'snore',\r\n 'snoring',\r\n 'snorkel',\r\n 'snort',\r\n 'snout',\r\n 'snowbird',\r\n 'snowboard',\r\n 'snowbound',\r\n 'snowcap',\r\n 'snowdrift',\r\n 'snowdrop',\r\n 'snowfall',\r\n 'snowfield',\r\n 'snowflake',\r\n 'snowiness',\r\n 'snowless',\r\n 'snowman',\r\n 'snowplow',\r\n 'snowshoe',\r\n 'snowstorm',\r\n 'snowsuit',\r\n 'snowy',\r\n 'snub',\r\n 'snuff',\r\n 'snuggle',\r\n 'snugly',\r\n 'snugness',\r\n 'speak',\r\n 'spearfish',\r\n 'spearhead',\r\n 'spearman',\r\n 'spearmint',\r\n 'species',\r\n 'specimen',\r\n 'specked',\r\n 'speckled',\r\n 'specks',\r\n 'spectacle',\r\n 'spectator',\r\n 'spectrum',\r\n 'speculate',\r\n 'speech',\r\n 'speed',\r\n 'spellbind',\r\n 'speller',\r\n 'spelling',\r\n 'spendable',\r\n 'spender',\r\n 'spending',\r\n 'spent',\r\n 'spew',\r\n 'sphere',\r\n 'spherical',\r\n 'sphinx',\r\n 'spider',\r\n 'spied',\r\n 'spiffy',\r\n 'spill',\r\n 'spilt',\r\n 'spinach',\r\n 'spinal',\r\n 'spindle',\r\n 'spinner',\r\n 'spinning',\r\n 'spinout',\r\n 'spinster',\r\n 'spiny',\r\n 'spiral',\r\n 'spirited',\r\n 'spiritism',\r\n 'spirits',\r\n 'spiritual',\r\n 'splashed',\r\n 'splashing',\r\n 'splashy',\r\n 'splatter',\r\n 'spleen',\r\n 'splendid',\r\n 'splendor',\r\n 'splice',\r\n 'splicing',\r\n 'splinter',\r\n 'splotchy',\r\n 'splurge',\r\n 'spoilage',\r\n 'spoiled',\r\n 'spoiler',\r\n 'spoiling',\r\n 'spoils',\r\n 'spoken',\r\n 'spokesman',\r\n 'sponge',\r\n 'spongy',\r\n 'sponsor',\r\n 'spoof',\r\n 'spookily',\r\n 'spooky',\r\n 'spool',\r\n 'spoon',\r\n 'spore',\r\n 'sporting',\r\n 'sports',\r\n 'sporty',\r\n 'spotless',\r\n 'spotlight',\r\n 'spotted',\r\n 'spotter',\r\n 'spotting',\r\n 'spotty',\r\n 'spousal',\r\n 'spouse',\r\n 'spout',\r\n 'sprain',\r\n 'sprang',\r\n 'sprawl',\r\n 'spray',\r\n 'spree',\r\n 'sprig',\r\n 'spring',\r\n 'sprinkled',\r\n 'sprinkler',\r\n 'sprint',\r\n 'sprite',\r\n 'sprout',\r\n 'spruce',\r\n 'sprung',\r\n 'spry',\r\n 'spud',\r\n 'spur',\r\n 'sputter',\r\n 'spyglass',\r\n 'squabble',\r\n 'squad',\r\n 'squall',\r\n 'squander',\r\n 'squash',\r\n 'squatted',\r\n 'squatter',\r\n 'squatting',\r\n 'squeak',\r\n 'squealer',\r\n 'squealing',\r\n 'squeamish',\r\n 'squeegee',\r\n 'squeeze',\r\n 'squeezing',\r\n 'squid',\r\n 'squiggle',\r\n 'squiggly',\r\n 'squint',\r\n 'squire',\r\n 'squirt',\r\n 'squishier',\r\n 'squishy',\r\n 'stability',\r\n 'stabilize',\r\n 'stable',\r\n 'stack',\r\n 'stadium',\r\n 'staff',\r\n 'stage',\r\n 'staging',\r\n 'stagnant',\r\n 'stagnate',\r\n 'stainable',\r\n 'stained',\r\n 'staining',\r\n 'stainless',\r\n 'stalemate',\r\n 'staleness',\r\n 'stalling',\r\n 'stallion',\r\n 'stamina',\r\n 'stammer',\r\n 'stamp',\r\n 'stand',\r\n 'stank',\r\n 'staple',\r\n 'stapling',\r\n 'starboard',\r\n 'starch',\r\n 'stardom',\r\n 'stardust',\r\n 'starfish',\r\n 'stargazer',\r\n 'staring',\r\n 'stark',\r\n 'starless',\r\n 'starlet',\r\n 'starlight',\r\n 'starlit',\r\n 'starring',\r\n 'starry',\r\n 'starship',\r\n 'starter',\r\n 'starting',\r\n 'startle',\r\n 'startling',\r\n 'startup',\r\n 'starved',\r\n 'starving',\r\n 'stash',\r\n 'state',\r\n 'static',\r\n 'statistic',\r\n 'statue',\r\n 'stature',\r\n 'status',\r\n 'statute',\r\n 'statutory',\r\n 'staunch',\r\n 'stays',\r\n 'steadfast',\r\n 'steadier',\r\n 'steadily',\r\n 'steadying',\r\n 'steam',\r\n 'steed',\r\n 'steep',\r\n 'steerable',\r\n 'steering',\r\n 'steersman',\r\n 'stegosaur',\r\n 'stellar',\r\n 'stem',\r\n 'stench',\r\n 'stencil',\r\n 'step',\r\n 'stereo',\r\n 'sterile',\r\n 'sterility',\r\n 'sterilize',\r\n 'sterling',\r\n 'sternness',\r\n 'sternum',\r\n 'stew',\r\n 'stick',\r\n 'stiffen',\r\n 'stiffly',\r\n 'stiffness',\r\n 'stifle',\r\n 'stifling',\r\n 'stillness',\r\n 'stilt',\r\n 'stimulant',\r\n 'stimulate',\r\n 'stimuli',\r\n 'stimulus',\r\n 'stinger',\r\n 'stingily',\r\n 'stinging',\r\n 'stingray',\r\n 'stingy',\r\n 'stinking',\r\n 'stinky',\r\n 'stipend',\r\n 'stipulate',\r\n 'stir',\r\n 'stitch',\r\n 'stock',\r\n 'stoic',\r\n 'stoke',\r\n 'stole',\r\n 'stomp',\r\n 'stonewall',\r\n 'stoneware',\r\n 'stonework',\r\n 'stoning',\r\n 'stony',\r\n 'stood',\r\n 'stooge',\r\n 'stool',\r\n 'stoop',\r\n 'stoplight',\r\n 'stoppable',\r\n 'stoppage',\r\n 'stopped',\r\n 'stopper',\r\n 'stopping',\r\n 'stopwatch',\r\n 'storable',\r\n 'storage',\r\n 'storeroom',\r\n 'storewide',\r\n 'storm',\r\n 'stout',\r\n 'stove',\r\n 'stowaway',\r\n 'stowing',\r\n 'straddle',\r\n 'straggler',\r\n 'strained',\r\n 'strainer',\r\n 'straining',\r\n 'strangely',\r\n 'stranger',\r\n 'strangle',\r\n 'strategic',\r\n 'strategy',\r\n 'stratus',\r\n 'straw',\r\n 'stray',\r\n 'streak',\r\n 'stream',\r\n 'street',\r\n 'strength',\r\n 'strenuous',\r\n 'strep',\r\n 'stress',\r\n 'stretch',\r\n 'strewn',\r\n 'stricken',\r\n 'strict',\r\n 'stride',\r\n 'strife',\r\n 'strike',\r\n 'striking',\r\n 'strive',\r\n 'striving',\r\n 'strobe',\r\n 'strode',\r\n 'stroller',\r\n 'strongbox',\r\n 'strongly',\r\n 'strongman',\r\n 'struck',\r\n 'structure',\r\n 'strudel',\r\n 'struggle',\r\n 'strum',\r\n 'strung',\r\n 'strut',\r\n 'stubbed',\r\n 'stubble',\r\n 'stubbly',\r\n 'stubborn',\r\n 'stucco',\r\n 'stuck',\r\n 'student',\r\n 'studied',\r\n 'studio',\r\n 'study',\r\n 'stuffed',\r\n 'stuffing',\r\n 'stuffy',\r\n 'stumble',\r\n 'stumbling',\r\n 'stump',\r\n 'stung',\r\n 'stunned',\r\n 'stunner',\r\n 'stunning',\r\n 'stunt',\r\n 'stupor',\r\n 'sturdily',\r\n 'sturdy',\r\n 'styling',\r\n 'stylishly',\r\n 'stylist',\r\n 'stylized',\r\n 'stylus',\r\n 'suave',\r\n 'subarctic',\r\n 'subatomic',\r\n 'subdivide',\r\n 'subdued',\r\n 'subduing',\r\n 'subfloor',\r\n 'subgroup',\r\n 'subheader',\r\n 'subject',\r\n 'sublease',\r\n 'sublet',\r\n 'sublevel',\r\n 'sublime',\r\n 'submarine',\r\n 'submerge',\r\n 'submersed',\r\n 'submitter',\r\n 'subpanel',\r\n 'subpar',\r\n 'subplot',\r\n 'subprime',\r\n 'subscribe',\r\n 'subscript',\r\n 'subsector',\r\n 'subside',\r\n 'subsiding',\r\n 'subsidize',\r\n 'subsidy',\r\n 'subsoil',\r\n 'subsonic',\r\n 'substance',\r\n 'subsystem',\r\n 'subtext',\r\n 'subtitle',\r\n 'subtly',\r\n 'subtotal',\r\n 'subtract',\r\n 'subtype',\r\n 'suburb',\r\n 'subway',\r\n 'subwoofer',\r\n 'subzero',\r\n 'succulent',\r\n 'such',\r\n 'suction',\r\n 'sudden',\r\n 'sudoku',\r\n 'suds',\r\n 'sufferer',\r\n 'suffering',\r\n 'suffice',\r\n 'suffix',\r\n 'suffocate',\r\n 'suffrage',\r\n 'sugar',\r\n 'suggest',\r\n 'suing',\r\n 'suitable',\r\n 'suitably',\r\n 'suitcase',\r\n 'suitor',\r\n 'sulfate',\r\n 'sulfide',\r\n 'sulfite',\r\n 'sulfur',\r\n 'sulk',\r\n 'sullen',\r\n 'sulphate',\r\n 'sulphuric',\r\n 'sultry',\r\n 'superbowl',\r\n 'superglue',\r\n 'superhero',\r\n 'superior',\r\n 'superjet',\r\n 'superman',\r\n 'supermom',\r\n 'supernova',\r\n 'supervise',\r\n 'supper',\r\n 'supplier',\r\n 'supply',\r\n 'support',\r\n 'supremacy',\r\n 'supreme',\r\n 'surcharge',\r\n 'surely',\r\n 'sureness',\r\n 'surface',\r\n 'surfacing',\r\n 'surfboard',\r\n 'surfer',\r\n 'surgery',\r\n 'surgical',\r\n 'surging',\r\n 'surname',\r\n 'surpass',\r\n 'surplus',\r\n 'surprise',\r\n 'surreal',\r\n 'surrender',\r\n 'surrogate',\r\n 'surround',\r\n 'survey',\r\n 'survival',\r\n 'survive',\r\n 'surviving',\r\n 'survivor',\r\n 'sushi',\r\n 'suspect',\r\n 'suspend',\r\n 'suspense',\r\n 'sustained',\r\n 'sustainer',\r\n 'swab',\r\n 'swaddling',\r\n 'swagger',\r\n 'swampland',\r\n 'swan',\r\n 'swapping',\r\n 'swarm',\r\n 'sway',\r\n 'swear',\r\n 'sweat',\r\n 'sweep',\r\n 'swell',\r\n 'swept',\r\n 'swerve',\r\n 'swifter',\r\n 'swiftly',\r\n 'swiftness',\r\n 'swimmable',\r\n 'swimmer',\r\n 'swimming',\r\n 'swimsuit',\r\n 'swimwear',\r\n 'swinger',\r\n 'swinging',\r\n 'swipe',\r\n 'swirl',\r\n 'switch',\r\n 'swivel',\r\n 'swizzle',\r\n 'swooned',\r\n 'swoop',\r\n 'swoosh',\r\n 'swore',\r\n 'sworn',\r\n 'swung',\r\n 'sycamore',\r\n 'sympathy',\r\n 'symphonic',\r\n 'symphony',\r\n 'symptom',\r\n 'synapse',\r\n 'syndrome',\r\n 'synergy',\r\n 'synopses',\r\n 'synopsis',\r\n 'synthesis',\r\n 'synthetic',\r\n 'syrup',\r\n 'system',\r\n 't-shirt',\r\n 'tabasco',\r\n 'tabby',\r\n 'tableful',\r\n 'tables',\r\n 'tablet',\r\n 'tableware',\r\n 'tabloid',\r\n 'tackiness',\r\n 'tacking',\r\n 'tackle',\r\n 'tackling',\r\n 'tacky',\r\n 'taco',\r\n 'tactful',\r\n 'tactical',\r\n 'tactics',\r\n 'tactile',\r\n 'tactless',\r\n 'tadpole',\r\n 'taekwondo',\r\n 'tag',\r\n 'tainted',\r\n 'take',\r\n 'taking',\r\n 'talcum',\r\n 'talisman',\r\n 'tall',\r\n 'talon',\r\n 'tamale',\r\n 'tameness',\r\n 'tamer',\r\n 'tamper',\r\n 'tank',\r\n 'tanned',\r\n 'tannery',\r\n 'tanning',\r\n 'tantrum',\r\n 'tapeless',\r\n 'tapered',\r\n 'tapering',\r\n 'tapestry',\r\n 'tapioca',\r\n 'tapping',\r\n 'taps',\r\n 'tarantula',\r\n 'target',\r\n 'tarmac',\r\n 'tarnish',\r\n 'tarot',\r\n 'tartar',\r\n 'tartly',\r\n 'tartness',\r\n 'task',\r\n 'tassel',\r\n 'taste',\r\n 'tastiness',\r\n 'tasting',\r\n 'tasty',\r\n 'tattered',\r\n 'tattle',\r\n 'tattling',\r\n 'tattoo',\r\n 'taunt',\r\n 'tavern',\r\n 'thank',\r\n 'that',\r\n 'thaw',\r\n 'theater',\r\n 'theatrics',\r\n 'thee',\r\n 'theft',\r\n 'theme',\r\n 'theology',\r\n 'theorize',\r\n 'thermal',\r\n 'thermos',\r\n 'thesaurus',\r\n 'these',\r\n 'thesis',\r\n 'thespian',\r\n 'thicken',\r\n 'thicket',\r\n 'thickness',\r\n 'thieving',\r\n 'thievish',\r\n 'thigh',\r\n 'thimble',\r\n 'thing',\r\n 'think',\r\n 'thinly',\r\n 'thinner',\r\n 'thinness',\r\n 'thinning',\r\n 'thirstily',\r\n 'thirsting',\r\n 'thirsty',\r\n 'thirteen',\r\n 'thirty',\r\n 'thong',\r\n 'thorn',\r\n 'those',\r\n 'thousand',\r\n 'thrash',\r\n 'thread',\r\n 'threaten',\r\n 'threefold',\r\n 'thrift',\r\n 'thrill',\r\n 'thrive',\r\n 'thriving',\r\n 'throat',\r\n 'throbbing',\r\n 'throng',\r\n 'throttle',\r\n 'throwaway',\r\n 'throwback',\r\n 'thrower',\r\n 'throwing',\r\n 'thud',\r\n 'thumb',\r\n 'thumping',\r\n 'thursday',\r\n 'thus',\r\n 'thwarting',\r\n 'thyself',\r\n 'tiara',\r\n 'tibia',\r\n 'tidal',\r\n 'tidbit',\r\n 'tidiness',\r\n 'tidings',\r\n 'tidy',\r\n 'tiger',\r\n 'tighten',\r\n 'tightly',\r\n 'tightness',\r\n 'tightrope',\r\n 'tightwad',\r\n 'tigress',\r\n 'tile',\r\n 'tiling',\r\n 'till',\r\n 'tilt',\r\n 'timid',\r\n 'timing',\r\n 'timothy',\r\n 'tinderbox',\r\n 'tinfoil',\r\n 'tingle',\r\n 'tingling',\r\n 'tingly',\r\n 'tinker',\r\n 'tinkling',\r\n 'tinsel',\r\n 'tinsmith',\r\n 'tint',\r\n 'tinwork',\r\n 'tiny',\r\n 'tipoff',\r\n 'tipped',\r\n 'tipper',\r\n 'tipping',\r\n 'tiptoeing',\r\n 'tiptop',\r\n 'tiring',\r\n 'tissue',\r\n 'trace',\r\n 'tracing',\r\n 'track',\r\n 'traction',\r\n 'tractor',\r\n 'trade',\r\n 'trading',\r\n 'tradition',\r\n 'traffic',\r\n 'tragedy',\r\n 'trailing',\r\n 'trailside',\r\n 'train',\r\n 'traitor',\r\n 'trance',\r\n 'tranquil',\r\n 'transfer',\r\n 'transform',\r\n 'translate',\r\n 'transpire',\r\n 'transport',\r\n 'transpose',\r\n 'trapdoor',\r\n 'trapeze',\r\n 'trapezoid',\r\n 'trapped',\r\n 'trapper',\r\n 'trapping',\r\n 'traps',\r\n 'trash',\r\n 'travel',\r\n 'traverse',\r\n 'travesty',\r\n 'tray',\r\n 'treachery',\r\n 'treading',\r\n 'treadmill',\r\n 'treason',\r\n 'treat',\r\n 'treble',\r\n 'tree',\r\n 'trekker',\r\n 'tremble',\r\n 'trembling',\r\n 'tremor',\r\n 'trench',\r\n 'trend',\r\n 'trespass',\r\n 'triage',\r\n 'trial',\r\n 'triangle',\r\n 'tribesman',\r\n 'tribunal',\r\n 'tribune',\r\n 'tributary',\r\n 'tribute',\r\n 'triceps',\r\n 'trickery',\r\n 'trickily',\r\n 'tricking',\r\n 'trickle',\r\n 'trickster',\r\n 'tricky',\r\n 'tricolor',\r\n 'tricycle',\r\n 'trident',\r\n 'tried',\r\n 'trifle',\r\n 'trifocals',\r\n 'trillion',\r\n 'trilogy',\r\n 'trimester',\r\n 'trimmer',\r\n 'trimming',\r\n 'trimness',\r\n 'trinity',\r\n 'trio',\r\n 'tripod',\r\n 'tripping',\r\n 'triumph',\r\n 'trivial',\r\n 'trodden',\r\n 'trolling',\r\n 'trombone',\r\n 'trophy',\r\n 'tropical',\r\n 'tropics',\r\n 'trouble',\r\n 'troubling',\r\n 'trough',\r\n 'trousers',\r\n 'trout',\r\n 'trowel',\r\n 'truce',\r\n 'truck',\r\n 'truffle',\r\n 'trump',\r\n 'trunks',\r\n 'trustable',\r\n 'trustee',\r\n 'trustful',\r\n 'trusting',\r\n 'trustless',\r\n 'truth',\r\n 'try',\r\n 'tubby',\r\n 'tubeless',\r\n 'tubular',\r\n 'tucking',\r\n 'tuesday',\r\n 'tug',\r\n 'tuition',\r\n 'tulip',\r\n 'tumble',\r\n 'tumbling',\r\n 'tummy',\r\n 'turban',\r\n 'turbine',\r\n 'turbofan',\r\n 'turbojet',\r\n 'turbulent',\r\n 'turf',\r\n 'turkey',\r\n 'turmoil',\r\n 'turret',\r\n 'turtle',\r\n 'tusk',\r\n 'tutor',\r\n 'tutu',\r\n 'tux',\r\n 'tweak',\r\n 'tweed',\r\n 'tweet',\r\n 'tweezers',\r\n 'twelve',\r\n 'twentieth',\r\n 'twenty',\r\n 'twerp',\r\n 'twice',\r\n 'twiddle',\r\n 'twiddling',\r\n 'twig',\r\n 'twilight',\r\n 'twine',\r\n 'twins',\r\n 'twirl',\r\n 'twistable',\r\n 'twisted',\r\n 'twister',\r\n 'twisting',\r\n 'twisty',\r\n 'twitch',\r\n 'twitter',\r\n 'tycoon',\r\n 'tying',\r\n 'tyke',\r\n 'udder',\r\n 'ultimate',\r\n 'ultimatum',\r\n 'ultra',\r\n 'umbilical',\r\n 'umbrella',\r\n 'umpire',\r\n 'unabashed',\r\n 'unable',\r\n 'unadorned',\r\n 'unadvised',\r\n 'unafraid',\r\n 'unaired',\r\n 'unaligned',\r\n 'unaltered',\r\n 'unarmored',\r\n 'unashamed',\r\n 'unaudited',\r\n 'unawake',\r\n 'unaware',\r\n 'unbaked',\r\n 'unbalance',\r\n 'unbeaten',\r\n 'unbend',\r\n 'unbent',\r\n 'unbiased',\r\n 'unbitten',\r\n 'unblended',\r\n 'unblessed',\r\n 'unblock',\r\n 'unbolted',\r\n 'unbounded',\r\n 'unboxed',\r\n 'unbraided',\r\n 'unbridle',\r\n 'unbroken',\r\n 'unbuckled',\r\n 'unbundle',\r\n 'unburned',\r\n 'unbutton',\r\n 'uncanny',\r\n 'uncapped',\r\n 'uncaring',\r\n 'uncertain',\r\n 'unchain',\r\n 'unchanged',\r\n 'uncharted',\r\n 'uncheck',\r\n 'uncivil',\r\n 'unclad',\r\n 'unclaimed',\r\n 'unclamped',\r\n 'unclasp',\r\n 'uncle',\r\n 'unclip',\r\n 'uncloak',\r\n 'unclog',\r\n 'unclothed',\r\n 'uncoated',\r\n 'uncoiled',\r\n 'uncolored',\r\n 'uncombed',\r\n 'uncommon',\r\n 'uncooked',\r\n 'uncork',\r\n 'uncorrupt',\r\n 'uncounted',\r\n 'uncouple',\r\n 'uncouth',\r\n 'uncover',\r\n 'uncross',\r\n 'uncrown',\r\n 'uncrushed',\r\n 'uncured',\r\n 'uncurious',\r\n 'uncurled',\r\n 'uncut',\r\n 'undamaged',\r\n 'undated',\r\n 'undaunted',\r\n 'undead',\r\n 'undecided',\r\n 'undefined',\r\n 'underage',\r\n 'underarm',\r\n 'undercoat',\r\n 'undercook',\r\n 'undercut',\r\n 'underdog',\r\n 'underdone',\r\n 'underfed',\r\n 'underfeed',\r\n 'underfoot',\r\n 'undergo',\r\n 'undergrad',\r\n 'underhand',\r\n 'underline',\r\n 'underling',\r\n 'undermine',\r\n 'undermost',\r\n 'underpaid',\r\n 'underpass',\r\n 'underpay',\r\n 'underrate',\r\n 'undertake',\r\n 'undertone',\r\n 'undertook',\r\n 'undertow',\r\n 'underuse',\r\n 'underwear',\r\n 'underwent',\r\n 'underwire',\r\n 'undesired',\r\n 'undiluted',\r\n 'undivided',\r\n 'undocked',\r\n 'undoing',\r\n 'undone',\r\n 'undrafted',\r\n 'undress',\r\n 'undrilled',\r\n 'undusted',\r\n 'undying',\r\n 'unearned',\r\n 'unearth',\r\n 'unease',\r\n 'uneasily',\r\n 'uneasy',\r\n 'uneatable',\r\n 'uneaten',\r\n 'unedited',\r\n 'unelected',\r\n 'unending',\r\n 'unengaged',\r\n 'unenvied',\r\n 'unequal',\r\n 'unethical',\r\n 'uneven',\r\n 'unexpired',\r\n 'unexposed',\r\n 'unfailing',\r\n 'unfair',\r\n 'unfasten',\r\n 'unfazed',\r\n 'unfeeling',\r\n 'unfiled',\r\n 'unfilled',\r\n 'unfitted',\r\n 'unfitting',\r\n 'unfixable',\r\n 'unfixed',\r\n 'unflawed',\r\n 'unfocused',\r\n 'unfold',\r\n 'unfounded',\r\n 'unframed',\r\n 'unfreeze',\r\n 'unfrosted',\r\n 'unfrozen',\r\n 'unfunded',\r\n 'unglazed',\r\n 'ungloved',\r\n 'unglue',\r\n 'ungodly',\r\n 'ungraded',\r\n 'ungreased',\r\n 'unguarded',\r\n 'unguided',\r\n 'unhappily',\r\n 'unhappy',\r\n 'unharmed',\r\n 'unhealthy',\r\n 'unheard',\r\n 'unhearing',\r\n 'unheated',\r\n 'unhelpful',\r\n 'unhidden',\r\n 'unhinge',\r\n 'unhitched',\r\n 'unholy',\r\n 'unhook',\r\n 'unicorn',\r\n 'unicycle',\r\n 'unified',\r\n 'unifier',\r\n 'uniformed',\r\n 'uniformly',\r\n 'unify',\r\n 'unimpeded',\r\n 'uninjured',\r\n 'uninstall',\r\n 'uninsured',\r\n 'uninvited',\r\n 'union',\r\n 'uniquely',\r\n 'unisexual',\r\n 'unison',\r\n 'unissued',\r\n 'unit',\r\n 'universal',\r\n 'universe',\r\n 'unjustly',\r\n 'unkempt',\r\n 'unkind',\r\n 'unknotted',\r\n 'unknowing',\r\n 'unknown',\r\n 'unlaced',\r\n 'unlatch',\r\n 'unlawful',\r\n 'unleaded',\r\n 'unlearned',\r\n 'unleash',\r\n 'unless',\r\n 'unleveled',\r\n 'unlighted',\r\n 'unlikable',\r\n 'unlimited',\r\n 'unlined',\r\n 'unlinked',\r\n 'unlisted',\r\n 'unlit',\r\n 'unlivable',\r\n 'unloaded',\r\n 'unloader',\r\n 'unlocked',\r\n 'unlocking',\r\n 'unlovable',\r\n 'unloved',\r\n 'unlovely',\r\n 'unloving',\r\n 'unluckily',\r\n 'unlucky',\r\n 'unmade',\r\n 'unmanaged',\r\n 'unmanned',\r\n 'unmapped',\r\n 'unmarked',\r\n 'unmasked',\r\n 'unmasking',\r\n 'unmatched',\r\n 'unmindful',\r\n 'unmixable',\r\n 'unmixed',\r\n 'unmolded',\r\n 'unmoral',\r\n 'unmovable',\r\n 'unmoved',\r\n 'unmoving',\r\n 'unnamable',\r\n 'unnamed',\r\n 'unnatural',\r\n 'unneeded',\r\n 'unnerve',\r\n 'unnerving',\r\n 'unnoticed',\r\n 'unopened',\r\n 'unopposed',\r\n 'unpack',\r\n 'unpadded',\r\n 'unpaid',\r\n 'unpainted',\r\n 'unpaired',\r\n 'unpaved',\r\n 'unpeeled',\r\n 'unpicked',\r\n 'unpiloted',\r\n 'unpinned',\r\n 'unplanned',\r\n 'unplanted',\r\n 'unpleased',\r\n 'unpledged',\r\n 'unplowed',\r\n 'unplug',\r\n 'unpopular',\r\n 'unproven',\r\n 'unquote',\r\n 'unranked',\r\n 'unrated',\r\n 'unraveled',\r\n 'unreached',\r\n 'unread',\r\n 'unreal',\r\n 'unreeling',\r\n 'unrefined',\r\n 'unrelated',\r\n 'unrented',\r\n 'unrest',\r\n 'unretired',\r\n 'unrevised',\r\n 'unrigged',\r\n 'unripe',\r\n 'unrivaled',\r\n 'unroasted',\r\n 'unrobed',\r\n 'unroll',\r\n 'unruffled',\r\n 'unruly',\r\n 'unrushed',\r\n 'unsaddle',\r\n 'unsafe',\r\n 'unsaid',\r\n 'unsalted',\r\n 'unsaved',\r\n 'unsavory',\r\n 'unscathed',\r\n 'unscented',\r\n 'unscrew',\r\n 'unsealed',\r\n 'unseated',\r\n 'unsecured',\r\n 'unseeing',\r\n 'unseemly',\r\n 'unseen',\r\n 'unselect',\r\n 'unselfish',\r\n 'unsent',\r\n 'unsettled',\r\n 'unshackle',\r\n 'unshaken',\r\n 'unshaved',\r\n 'unshaven',\r\n 'unsheathe',\r\n 'unshipped',\r\n 'unsightly',\r\n 'unsigned',\r\n 'unskilled',\r\n 'unsliced',\r\n 'unsmooth',\r\n 'unsnap',\r\n 'unsocial',\r\n 'unsoiled',\r\n 'unsold',\r\n 'unsolved',\r\n 'unsorted',\r\n 'unspoiled',\r\n 'unspoken',\r\n 'unstable',\r\n 'unstaffed',\r\n 'unstamped',\r\n 'unsteady',\r\n 'unsterile',\r\n 'unstirred',\r\n 'unstitch',\r\n 'unstopped',\r\n 'unstuck',\r\n 'unstuffed',\r\n 'unstylish',\r\n 'unsubtle',\r\n 'unsubtly',\r\n 'unsuited',\r\n 'unsure',\r\n 'unsworn',\r\n 'untagged',\r\n 'untainted',\r\n 'untaken',\r\n 'untamed',\r\n 'untangled',\r\n 'untapped',\r\n 'untaxed',\r\n 'unthawed',\r\n 'unthread',\r\n 'untidy',\r\n 'untie',\r\n 'until',\r\n 'untimed',\r\n 'untimely',\r\n 'untitled',\r\n 'untoasted',\r\n 'untold',\r\n 'untouched',\r\n 'untracked',\r\n 'untrained',\r\n 'untreated',\r\n 'untried',\r\n 'untrimmed',\r\n 'untrue',\r\n 'untruth',\r\n 'unturned',\r\n 'untwist',\r\n 'untying',\r\n 'unusable',\r\n 'unused',\r\n 'unusual',\r\n 'unvalued',\r\n 'unvaried',\r\n 'unvarying',\r\n 'unveiled',\r\n 'unveiling',\r\n 'unvented',\r\n 'unviable',\r\n 'unvisited',\r\n 'unvocal',\r\n 'unwanted',\r\n 'unwarlike',\r\n 'unwary',\r\n 'unwashed',\r\n 'unwatched',\r\n 'unweave',\r\n 'unwed',\r\n 'unwelcome',\r\n 'unwell',\r\n 'unwieldy',\r\n 'unwilling',\r\n 'unwind',\r\n 'unwired',\r\n 'unwitting',\r\n 'unwomanly',\r\n 'unworldly',\r\n 'unworn',\r\n 'unworried',\r\n 'unworthy',\r\n 'unwound',\r\n 'unwoven',\r\n 'unwrapped',\r\n 'unwritten',\r\n 'unzip',\r\n 'upbeat',\r\n 'upchuck',\r\n 'upcoming',\r\n 'upcountry',\r\n 'update',\r\n 'upfront',\r\n 'upgrade',\r\n 'upheaval',\r\n 'upheld',\r\n 'uphill',\r\n 'uphold',\r\n 'uplifted',\r\n 'uplifting',\r\n 'upload',\r\n 'upon',\r\n 'upper',\r\n 'upright',\r\n 'uprising',\r\n 'upriver',\r\n 'uproar',\r\n 'uproot',\r\n 'upscale',\r\n 'upside',\r\n 'upstage',\r\n 'upstairs',\r\n 'upstart',\r\n 'upstate',\r\n 'upstream',\r\n 'upstroke',\r\n 'upswing',\r\n 'uptake',\r\n 'uptight',\r\n 'uptown',\r\n 'upturned',\r\n 'upward',\r\n 'upwind',\r\n 'uranium',\r\n 'urban',\r\n 'urchin',\r\n 'urethane',\r\n 'urgency',\r\n 'urgent',\r\n 'urging',\r\n 'urologist',\r\n 'urology',\r\n 'usable',\r\n 'usage',\r\n 'useable',\r\n 'used',\r\n 'uselessly',\r\n 'user',\r\n 'usher',\r\n 'usual',\r\n 'utensil',\r\n 'utility',\r\n 'utilize',\r\n 'utmost',\r\n 'utopia',\r\n 'utter',\r\n 'vacancy',\r\n 'vacant',\r\n 'vacate',\r\n 'vacation',\r\n 'vagabond',\r\n 'vagrancy',\r\n 'vagrantly',\r\n 'vaguely',\r\n 'vagueness',\r\n 'valiant',\r\n 'valid',\r\n 'valium',\r\n 'valley',\r\n 'valuables',\r\n 'value',\r\n 'vanilla',\r\n 'vanish',\r\n 'vanity',\r\n 'vanquish',\r\n 'vantage',\r\n 'vaporizer',\r\n 'variable',\r\n 'variably',\r\n 'varied',\r\n 'variety',\r\n 'various',\r\n 'varmint',\r\n 'varnish',\r\n 'varsity',\r\n 'varying',\r\n 'vascular',\r\n 'vaseline',\r\n 'vastly',\r\n 'vastness',\r\n 'veal',\r\n 'vegan',\r\n 'veggie',\r\n 'vehicular',\r\n 'velcro',\r\n 'velocity',\r\n 'velvet',\r\n 'vendetta',\r\n 'vending',\r\n 'vendor',\r\n 'veneering',\r\n 'vengeful',\r\n 'venomous',\r\n 'ventricle',\r\n 'venture',\r\n 'venue',\r\n 'venus',\r\n 'verbalize',\r\n 'verbally',\r\n 'verbose',\r\n 'verdict',\r\n 'verify',\r\n 'verse',\r\n 'version',\r\n 'versus',\r\n 'vertebrae',\r\n 'vertical',\r\n 'vertigo',\r\n 'very',\r\n 'vessel',\r\n 'vest',\r\n 'veteran',\r\n 'veto',\r\n 'vexingly',\r\n 'viability',\r\n 'viable',\r\n 'vibes',\r\n 'vice',\r\n 'vicinity',\r\n 'victory',\r\n 'video',\r\n 'viewable',\r\n 'viewer',\r\n 'viewing',\r\n 'viewless',\r\n 'viewpoint',\r\n 'vigorous',\r\n 'village',\r\n 'villain',\r\n 'vindicate',\r\n 'vineyard',\r\n 'vintage',\r\n 'violate',\r\n 'violation',\r\n 'violator',\r\n 'violet',\r\n 'violin',\r\n 'viper',\r\n 'viral',\r\n 'virtual',\r\n 'virtuous',\r\n 'virus',\r\n 'visa',\r\n 'viscosity',\r\n 'viscous',\r\n 'viselike',\r\n 'visible',\r\n 'visibly',\r\n 'vision',\r\n 'visiting',\r\n 'visitor',\r\n 'visor',\r\n 'vista',\r\n 'vitality',\r\n 'vitalize',\r\n 'vitally',\r\n 'vitamins',\r\n 'vivacious',\r\n 'vividly',\r\n 'vividness',\r\n 'vixen',\r\n 'vocalist',\r\n 'vocalize',\r\n 'vocally',\r\n 'vocation',\r\n 'voice',\r\n 'voicing',\r\n 'void',\r\n 'volatile',\r\n 'volley',\r\n 'voltage',\r\n 'volumes',\r\n 'voter',\r\n 'voting',\r\n 'voucher',\r\n 'vowed',\r\n 'vowel',\r\n 'voyage',\r\n 'wackiness',\r\n 'wad',\r\n 'wafer',\r\n 'waffle',\r\n 'waged',\r\n 'wager',\r\n 'wages',\r\n 'waggle',\r\n 'wagon',\r\n 'wake',\r\n 'waking',\r\n 'walk',\r\n 'walmart',\r\n 'walnut',\r\n 'walrus',\r\n 'waltz',\r\n 'wand',\r\n 'wannabe',\r\n 'wanted',\r\n 'wanting',\r\n 'wasabi',\r\n 'washable',\r\n 'washbasin',\r\n 'washboard',\r\n 'washbowl',\r\n 'washcloth',\r\n 'washday',\r\n 'washed',\r\n 'washer',\r\n 'washhouse',\r\n 'washing',\r\n 'washout',\r\n 'washroom',\r\n 'washstand',\r\n 'washtub',\r\n 'wasp',\r\n 'wasting',\r\n 'watch',\r\n 'water',\r\n 'waviness',\r\n 'waving',\r\n 'wavy',\r\n 'whacking',\r\n 'whacky',\r\n 'wham',\r\n 'wharf',\r\n 'wheat',\r\n 'whenever',\r\n 'whiff',\r\n 'whimsical',\r\n 'whinny',\r\n 'whiny',\r\n 'whisking',\r\n 'whoever',\r\n 'whole',\r\n 'whomever',\r\n 'whoopee',\r\n 'whooping',\r\n 'whoops',\r\n 'why',\r\n 'wick',\r\n 'widely',\r\n 'widen',\r\n 'widget',\r\n 'widow',\r\n 'width',\r\n 'wieldable',\r\n 'wielder',\r\n 'wife',\r\n 'wifi',\r\n 'wikipedia',\r\n 'wildcard',\r\n 'wildcat',\r\n 'wilder',\r\n 'wildfire',\r\n 'wildfowl',\r\n 'wildland',\r\n 'wildlife',\r\n 'wildly',\r\n 'wildness',\r\n 'willed',\r\n 'willfully',\r\n 'willing',\r\n 'willow',\r\n 'willpower',\r\n 'wilt',\r\n 'wimp',\r\n 'wince',\r\n 'wincing',\r\n 'wind',\r\n 'wing',\r\n 'winking',\r\n 'winner',\r\n 'winnings',\r\n 'winter',\r\n 'wipe',\r\n 'wired',\r\n 'wireless',\r\n 'wiring',\r\n 'wiry',\r\n 'wisdom',\r\n 'wise',\r\n 'wish',\r\n 'wisplike',\r\n 'wispy',\r\n 'wistful',\r\n 'wizard',\r\n 'wobble',\r\n 'wobbling',\r\n 'wobbly',\r\n 'wok',\r\n 'wolf',\r\n 'wolverine',\r\n 'womanhood',\r\n 'womankind',\r\n 'womanless',\r\n 'womanlike',\r\n 'womanly',\r\n 'womb',\r\n 'woof',\r\n 'wooing',\r\n 'wool',\r\n 'woozy',\r\n 'word',\r\n 'work',\r\n 'worried',\r\n 'worrier',\r\n 'worrisome',\r\n 'worry',\r\n 'worsening',\r\n 'worshiper',\r\n 'worst',\r\n 'wound',\r\n 'woven',\r\n 'wow',\r\n 'wrangle',\r\n 'wrath',\r\n 'wreath',\r\n 'wreckage',\r\n 'wrecker',\r\n 'wrecking',\r\n 'wrench',\r\n 'wriggle',\r\n 'wriggly',\r\n 'wrinkle',\r\n 'wrinkly',\r\n 'wrist',\r\n 'writing',\r\n 'written',\r\n 'wrongdoer',\r\n 'wronged',\r\n 'wrongful',\r\n 'wrongly',\r\n 'wrongness',\r\n 'wrought',\r\n 'xbox',\r\n 'xerox',\r\n 'yahoo',\r\n 'yam',\r\n 'yanking',\r\n 'yapping',\r\n 'yard',\r\n 'yarn',\r\n 'yeah',\r\n 'yearbook',\r\n 'yearling',\r\n 'yearly',\r\n 'yearning',\r\n 'yeast',\r\n 'yelling',\r\n 'yelp',\r\n 'yen',\r\n 'yesterday',\r\n 'yiddish',\r\n 'yield',\r\n 'yin',\r\n 'yippee',\r\n 'yo-yo',\r\n 'yodel',\r\n 'yoga',\r\n 'yogurt',\r\n 'yonder',\r\n 'yoyo',\r\n 'yummy',\r\n 'zap',\r\n 'zealous',\r\n 'zebra',\r\n 'zen',\r\n 'zeppelin',\r\n 'zero',\r\n 'zestfully',\r\n 'zesty',\r\n 'zigzagged',\r\n 'zipfile',\r\n 'zipping',\r\n 'zippy',\r\n 'zips',\r\n 'zit',\r\n 'zodiac',\r\n 'zombie',\r\n 'zone',\r\n 'zoning',\r\n 'zookeeper',\r\n 'zoologist',\r\n 'zoology',\r\n 'zoom',\r\n];\r\n","import { EnvironmentUrls } from '../models/domain/environmentUrls';\n\nimport { ConstantsService } from './constants.service';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { EnvironmentService as EnvironmentServiceAbstraction } from '../abstractions/environment.service';\nimport { NotificationsService } from '../abstractions/notifications.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nexport class EnvironmentService implements EnvironmentServiceAbstraction {\n baseUrl: string;\n webVaultUrl: string;\n apiUrl: string;\n identityUrl: string;\n iconsUrl: string;\n notificationsUrl: string;\n\n constructor(private apiService: ApiService, private storageService: StorageService,\n private notificationsService: NotificationsService) { }\n\n getWebVaultUrl(): string {\n if (this.webVaultUrl != null) {\n return this.webVaultUrl;\n } else if (this.baseUrl) {\n return this.baseUrl;\n }\n return null;\n }\n\n async setUrlsFromStorage(): Promise {\n const urlsObj: any = await this.storageService.get(ConstantsService.environmentUrlsKey);\n const urls = urlsObj || {\n base: null,\n api: null,\n identity: null,\n icons: null,\n notifications: null,\n webVault: null,\n };\n\n const envUrls = new EnvironmentUrls();\n\n if (urls.base) {\n this.baseUrl = envUrls.base = urls.base;\n this.apiService.setUrls(envUrls);\n return;\n }\n\n this.webVaultUrl = urls.webVault;\n this.apiUrl = envUrls.api = urls.api;\n this.identityUrl = envUrls.identity = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n this.apiService.setUrls(envUrls);\n }\n\n async setUrls(urls: any): Promise {\n urls.base = this.formatUrl(urls.base);\n urls.webVault = this.formatUrl(urls.webVault);\n urls.api = this.formatUrl(urls.api);\n urls.identity = this.formatUrl(urls.identity);\n urls.icons = this.formatUrl(urls.icons);\n urls.notifications = this.formatUrl(urls.notifications);\n\n await this.storageService.save(ConstantsService.environmentUrlsKey, {\n base: urls.base,\n api: urls.api,\n identity: urls.identity,\n webVault: urls.webVault,\n icons: urls.icons,\n notifications: urls.notifications,\n });\n\n this.baseUrl = urls.base;\n this.webVaultUrl = urls.webVault;\n this.apiUrl = urls.api;\n this.identityUrl = urls.identity;\n this.iconsUrl = urls.icons;\n this.notificationsUrl = urls.notifications;\n\n const envUrls = new EnvironmentUrls();\n if (this.baseUrl) {\n envUrls.base = this.baseUrl;\n } else {\n envUrls.api = this.apiUrl;\n envUrls.identity = this.identityUrl;\n }\n\n this.apiService.setUrls(envUrls);\n if (this.notificationsService != null) {\n this.notificationsService.init(this);\n }\n return urls;\n }\n\n private formatUrl(url: string): string {\n if (url == null || url === '') {\n return null;\n }\n\n url = url.replace(/\\/+$/g, '');\n if (!url.startsWith('http://') && !url.startsWith('https://')) {\n url = 'https://' + url;\n }\n\n return url;\n }\n}\n","import { FolderData } from '../models/data/folderData';\r\n\r\nimport { Folder } from '../models/domain/folder';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\nimport { TreeNode } from '../models/domain/treeNode';\r\n\r\nimport { FolderRequest } from '../models/request/folderRequest';\r\n\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService as FolderServiceAbstraction } from '../abstractions/folder.service';\r\nimport { I18nService } from '../abstractions/i18n.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\nimport { CipherData } from '../models/data/cipherData';\r\n\r\nimport { ServiceUtils } from '../misc/serviceUtils';\r\nimport { Utils } from '../misc/utils';\r\n\r\nconst Keys = {\r\n foldersPrefix: 'folders_',\r\n ciphersPrefix: 'ciphers_',\r\n};\r\nconst NestingDelimiter = '/';\r\n\r\nexport class FolderService implements FolderServiceAbstraction {\r\n decryptedFolderCache: FolderView[];\r\n\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private apiService: ApiService, private storageService: StorageService,\r\n private i18nService: I18nService, private cipherService: CipherService) { }\r\n\r\n clearCache(): void {\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async encrypt(model: FolderView, key?: SymmetricCryptoKey): Promise {\r\n const folder = new Folder();\r\n folder.id = model.id;\r\n folder.name = await this.cryptoService.encrypt(model.name, key);\r\n return folder;\r\n }\r\n\r\n async get(id: string): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null || !folders.hasOwnProperty(id)) {\r\n return null;\r\n }\r\n\r\n return new Folder(folders[id]);\r\n }\r\n\r\n async getAll(): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n const response: Folder[] = [];\r\n for (const id in folders) {\r\n if (folders.hasOwnProperty(id)) {\r\n response.push(new Folder(folders[id]));\r\n }\r\n }\r\n return response;\r\n }\r\n\r\n async getAllDecrypted(): Promise {\r\n if (this.decryptedFolderCache != null) {\r\n return this.decryptedFolderCache;\r\n }\r\n\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n throw new Error('No key.');\r\n }\r\n\r\n const decFolders: FolderView[] = [];\r\n const promises: Array> = [];\r\n const folders = await this.getAll();\r\n folders.forEach((folder) => {\r\n promises.push(folder.decrypt().then((f) => decFolders.push(f)));\r\n });\r\n\r\n await Promise.all(promises);\r\n decFolders.sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n\r\n const noneFolder = new FolderView();\r\n noneFolder.name = this.i18nService.t('noneFolder');\r\n decFolders.push(noneFolder);\r\n\r\n this.decryptedFolderCache = decFolders;\r\n return this.decryptedFolderCache;\r\n }\r\n\r\n async getAllNested(): Promise>> {\r\n const folders = await this.getAllDecrypted();\r\n const nodes: Array> = [];\r\n folders.forEach((f) => {\r\n const folderCopy = new FolderView();\r\n folderCopy.id = f.id;\r\n folderCopy.revisionDate = f.revisionDate;\r\n ServiceUtils.nestedTraverse(nodes, 0, f.name.split(NestingDelimiter), folderCopy,\r\n null, NestingDelimiter);\r\n });\r\n return nodes;\r\n }\r\n\r\n async getNested(id: string): Promise> {\r\n const folders = await this.getAllNested();\r\n return ServiceUtils.getTreeNodeObject(folders, id) as TreeNode;\r\n }\r\n\r\n async saveWithServer(folder: Folder): Promise {\r\n const request = new FolderRequest(folder);\r\n\r\n let response: FolderResponse;\r\n if (folder.id == null) {\r\n response = await this.apiService.postFolder(request);\r\n folder.id = response.id;\r\n } else {\r\n response = await this.apiService.putFolder(folder.id, request);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n const data = new FolderData(response, userId);\r\n await this.upsert(data);\r\n }\r\n\r\n async upsert(folder: FolderData | FolderData[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n let folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null) {\r\n folders = {};\r\n }\r\n\r\n if (folder instanceof FolderData) {\r\n const f = folder as FolderData;\r\n folders[f.id] = f;\r\n } else {\r\n (folder as FolderData[]).forEach((f) => {\r\n folders[f.id] = f;\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async replace(folders: { [id: string]: FolderData; }): Promise {\r\n const userId = await this.userService.getUserId();\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.foldersPrefix + userId);\r\n this.decryptedFolderCache = null;\r\n }\r\n\r\n async delete(id: string | string[]): Promise {\r\n const userId = await this.userService.getUserId();\r\n const folders = await this.storageService.get<{ [id: string]: FolderData; }>(\r\n Keys.foldersPrefix + userId);\r\n if (folders == null) {\r\n return;\r\n }\r\n\r\n if (typeof id === 'string') {\r\n if (folders[id] == null) {\r\n return;\r\n }\r\n delete folders[id];\r\n } else {\r\n (id as string[]).forEach((i) => {\r\n delete folders[i];\r\n });\r\n }\r\n\r\n await this.storageService.save(Keys.foldersPrefix + userId, folders);\r\n this.decryptedFolderCache = null;\r\n\r\n // Items in a deleted folder are re-assigned to \"No Folder\"\r\n const ciphers = await this.storageService.get<{ [id: string]: CipherData; }>(Keys.ciphersPrefix + userId);\r\n if (ciphers != null) {\r\n const updates: CipherData[] = [];\r\n for (const cId in ciphers) {\r\n if (ciphers[cId].folderId === id) {\r\n ciphers[cId].folderId = null;\r\n updates.push(ciphers[cId]);\r\n }\r\n }\r\n if (updates.length > 0) {\r\n this.cipherService.upsert(updates);\r\n }\r\n }\r\n }\r\n\r\n async deleteWithServer(id: string): Promise {\r\n await this.apiService.deleteFolder(id);\r\n await this.delete(id);\r\n }\r\n}\r\n","import { FolderResponse } from '../response/folderResponse';\r\n\r\nexport class FolderData {\r\n id: string;\r\n userId: string;\r\n name: string;\r\n revisionDate: string;\r\n\r\n constructor(response: FolderResponse, userId: string) {\r\n this.userId = userId;\r\n this.name = response.name;\r\n this.id = response.id;\r\n this.revisionDate = response.revisionDate;\r\n }\r\n}\r\n","import { I18nService as I18nServiceAbstraction } from '../abstractions/i18n.service';\n\nexport class I18nService implements I18nServiceAbstraction {\n locale: string;\n // First locale is the default (English)\n supportedTranslationLocales: string[] = ['en'];\n translationLocale: string;\n collator: Intl.Collator;\n\n protected inited: boolean;\n protected defaultMessages: any = {};\n protected localeMessages: any = {};\n\n constructor(protected systemLanguage: string, protected localesDirectory: string,\n protected getLocalesJson: (formattedLocale: string) => Promise) {\n this.systemLanguage = systemLanguage.replace('_', '-');\n }\n\n async init(locale?: string) {\n if (this.inited) {\n throw new Error('i18n already initialized.');\n }\n if (this.supportedTranslationLocales == null || this.supportedTranslationLocales.length === 0) {\n throw new Error('supportedTranslationLocales not set.');\n }\n\n this.inited = true;\n this.locale = this.translationLocale = locale != null ? locale : this.systemLanguage;\n\n try {\n this.collator = new Intl.Collator(this.locale, { numeric: true, sensitivity: 'base' });\n } catch {\n this.collator = null;\n }\n\n if (this.supportedTranslationLocales.indexOf(this.translationLocale) === -1) {\n this.translationLocale = this.translationLocale.slice(0, 2);\n\n if (this.supportedTranslationLocales.indexOf(this.translationLocale) === -1) {\n this.translationLocale = this.supportedTranslationLocales[0];\n }\n }\n\n if (this.localesDirectory != null) {\n await this.loadMessages(this.translationLocale, this.localeMessages);\n if (this.translationLocale !== this.supportedTranslationLocales[0]) {\n await this.loadMessages(this.supportedTranslationLocales[0], this.defaultMessages);\n }\n }\n }\n\n t(id: string, p1?: string, p2?: string, p3?: string): string {\n return this.translate(id, p1, p2, p3);\n }\n\n translate(id: string, p1?: string, p2?: string, p3?: string): string {\n let result: string;\n if (this.localeMessages.hasOwnProperty(id) && this.localeMessages[id]) {\n result = this.localeMessages[id];\n } else if (this.defaultMessages.hasOwnProperty(id) && this.defaultMessages[id]) {\n result = this.defaultMessages[id];\n } else {\n result = '';\n }\n\n if (result !== '') {\n if (p1 != null) {\n result = result.split('__$1__').join(p1);\n }\n if (p2 != null) {\n result = result.split('__$2__').join(p2);\n }\n if (p3 != null) {\n result = result.split('__$3__').join(p3);\n }\n }\n\n return result;\n }\n\n private async loadMessages(locale: string, messagesObj: any): Promise {\n const formattedLocale = locale.replace('-', '_');\n const locales = await this.getLocalesJson(formattedLocale);\n for (const prop in locales) {\n if (!locales.hasOwnProperty(prop)) {\n continue;\n }\n messagesObj[prop] = locales[prop].message;\n\n if (locales[prop].placeholders) {\n for (const placeProp in locales[prop].placeholders) {\n if (!locales[prop].placeholders.hasOwnProperty(placeProp) ||\n !locales[prop].placeholders[placeProp].content) {\n continue;\n }\n\n const replaceToken = '\\\\$' + placeProp.toUpperCase() + '\\\\$';\n let replaceContent = locales[prop].placeholders[placeProp].content;\n if (replaceContent === '$1' || replaceContent === '$2' || replaceContent === '$3') {\n replaceContent = '__' + replaceContent + '__';\n }\n messagesObj[prop] = messagesObj[prop].replace(new RegExp(replaceToken, 'g'), replaceContent);\n }\n }\n }\n }\n\n}\n","import { ConstantsService } from './constants.service';\r\n\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CollectionService } from '../abstractions/collection.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\nimport { LockService as LockServiceAbstraction } from '../abstractions/lock.service';\r\nimport { MessagingService } from '../abstractions/messaging.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { SearchService } from '../abstractions/search.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nexport class LockService implements LockServiceAbstraction {\r\n private inited = false;\r\n\r\n constructor(private cipherService: CipherService, private folderService: FolderService,\r\n private collectionService: CollectionService, private cryptoService: CryptoService,\r\n private platformUtilsService: PlatformUtilsService, private storageService: StorageService,\r\n private messagingService: MessagingService, private searchService: SearchService,\r\n private lockedCallback: () => Promise) {\r\n }\r\n\r\n init(checkOnInterval: boolean) {\r\n if (this.inited) {\r\n return;\r\n }\r\n\r\n this.inited = true;\r\n if (checkOnInterval) {\r\n this.checkLock();\r\n setInterval(() => this.checkLock(), 10 * 1000); // check every 10 seconds\r\n }\r\n }\r\n\r\n async checkLock(): Promise {\r\n if (this.platformUtilsService.isViewOpen()) {\r\n // Do not lock\r\n return;\r\n }\r\n\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n // no key so no need to lock\r\n return;\r\n }\r\n\r\n let lockOption = this.platformUtilsService.lockTimeout();\r\n if (lockOption == null) {\r\n lockOption = await this.storageService.get(ConstantsService.lockOptionKey);\r\n }\r\n if (lockOption == null || lockOption < 0) {\r\n return;\r\n }\r\n\r\n const lastActive = await this.storageService.get(ConstantsService.lastActiveKey);\r\n if (lastActive == null) {\r\n return;\r\n }\r\n\r\n const lockOptionSeconds = lockOption * 60;\r\n const diffSeconds = ((new Date()).getTime() - lastActive) / 1000;\r\n if (diffSeconds >= lockOptionSeconds) {\r\n // need to lock now\r\n await this.lock();\r\n }\r\n }\r\n\r\n async lock(): Promise {\r\n await Promise.all([\r\n this.cryptoService.clearKey(),\r\n this.cryptoService.clearOrgKeys(true),\r\n this.cryptoService.clearKeyPair(true),\r\n this.cryptoService.clearEncKey(true),\r\n ]);\r\n\r\n this.folderService.clearCache();\r\n this.cipherService.clearCache();\r\n this.collectionService.clearCache();\r\n this.searchService.clearIndex();\r\n this.messagingService.send('locked');\r\n if (this.lockedCallback != null) {\r\n await this.lockedCallback();\r\n }\r\n }\r\n\r\n async setLockOption(lockOption: number): Promise {\r\n await this.storageService.save(ConstantsService.lockOptionKey, lockOption);\r\n await this.cryptoService.toggleKey();\r\n }\r\n}\r\n","import * as zxcvbn from 'zxcvbn';\r\n\r\nimport { CipherString } from '../models/domain/cipherString';\r\nimport { GeneratedPasswordHistory } from '../models/domain/generatedPasswordHistory';\r\n\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport {\r\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\r\n} from '../abstractions/passwordGeneration.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\n\r\nimport { EEFLongWordList } from '../misc/wordlist';\r\n\r\nconst DefaultOptions = {\r\n length: 14,\r\n ambiguous: false,\r\n number: true,\r\n minNumber: 1,\r\n uppercase: true,\r\n minUppercase: 0,\r\n lowercase: true,\r\n minLowercase: 0,\r\n special: false,\r\n minSpecial: 1,\r\n type: 'password',\r\n numWords: 3,\r\n wordSeparator: '-',\r\n};\r\n\r\nconst Keys = {\r\n options: 'passwordGenerationOptions',\r\n history: 'generatedPasswordHistory',\r\n};\r\n\r\nconst MaxPasswordsInHistory = 100;\r\n\r\nexport class PasswordGenerationService implements PasswordGenerationServiceAbstraction {\r\n private optionsCache: any;\r\n private history: GeneratedPasswordHistory[];\r\n\r\n constructor(private cryptoService: CryptoService, private storageService: StorageService) { }\r\n\r\n async generatePassword(options: any): Promise {\r\n // overload defaults with given options\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.type === 'passphrase') {\r\n return this.generatePassphrase(options);\r\n }\r\n\r\n // sanitize\r\n if (o.uppercase && o.minUppercase <= 0) {\r\n o.minUppercase = 1;\r\n }\r\n if (o.lowercase && o.minLowercase <= 0) {\r\n o.minLowercase = 1;\r\n }\r\n if (o.number && o.minNumber <= 0) {\r\n o.minNumber = 1;\r\n }\r\n if (o.special && o.minSpecial <= 0) {\r\n o.minSpecial = 1;\r\n }\r\n\r\n if (!o.length || o.length < 1) {\r\n o.length = 10;\r\n }\r\n\r\n const minLength: number = o.minUppercase + o.minLowercase + o.minNumber + o.minSpecial;\r\n if (o.length < minLength) {\r\n o.length = minLength;\r\n }\r\n\r\n const positions: string[] = [];\r\n if (o.lowercase && o.minLowercase > 0) {\r\n for (let i = 0; i < o.minLowercase; i++) {\r\n positions.push('l');\r\n }\r\n }\r\n if (o.uppercase && o.minUppercase > 0) {\r\n for (let i = 0; i < o.minUppercase; i++) {\r\n positions.push('u');\r\n }\r\n }\r\n if (o.number && o.minNumber > 0) {\r\n for (let i = 0; i < o.minNumber; i++) {\r\n positions.push('n');\r\n }\r\n }\r\n if (o.special && o.minSpecial > 0) {\r\n for (let i = 0; i < o.minSpecial; i++) {\r\n positions.push('s');\r\n }\r\n }\r\n while (positions.length < o.length) {\r\n positions.push('a');\r\n }\r\n\r\n // shuffle\r\n await this.shuffleArray(positions);\r\n\r\n // build out the char sets\r\n let allCharSet = '';\r\n\r\n let lowercaseCharSet = 'abcdefghijkmnopqrstuvwxyz';\r\n if (o.ambiguous) {\r\n lowercaseCharSet += 'l';\r\n }\r\n if (o.lowercase) {\r\n allCharSet += lowercaseCharSet;\r\n }\r\n\r\n let uppercaseCharSet = 'ABCDEFGHIJKLMNPQRSTUVWXYZ';\r\n if (o.ambiguous) {\r\n uppercaseCharSet += 'O';\r\n }\r\n if (o.uppercase) {\r\n allCharSet += uppercaseCharSet;\r\n }\r\n\r\n let numberCharSet = '23456789';\r\n if (o.ambiguous) {\r\n numberCharSet += '01';\r\n }\r\n if (o.number) {\r\n allCharSet += numberCharSet;\r\n }\r\n\r\n const specialCharSet = '!@#$%^&*';\r\n if (o.special) {\r\n allCharSet += specialCharSet;\r\n }\r\n\r\n let password = '';\r\n for (let i = 0; i < o.length; i++) {\r\n let positionChars: string;\r\n switch (positions[i]) {\r\n case 'l':\r\n positionChars = lowercaseCharSet;\r\n break;\r\n case 'u':\r\n positionChars = uppercaseCharSet;\r\n break;\r\n case 'n':\r\n positionChars = numberCharSet;\r\n break;\r\n case 's':\r\n positionChars = specialCharSet;\r\n break;\r\n case 'a':\r\n positionChars = allCharSet;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n const randomCharIndex = await this.cryptoService.randomNumber(0, positionChars.length - 1);\r\n password += positionChars.charAt(randomCharIndex);\r\n }\r\n\r\n return password;\r\n }\r\n\r\n async generatePassphrase(options: any): Promise {\r\n const o = Object.assign({}, DefaultOptions, options);\r\n\r\n if (o.numWords == null || o.numWords <= 2) {\r\n o.numWords = DefaultOptions.numWords;\r\n }\r\n if (o.wordSeparator == null || o.wordSeparator.length === 0 || o.wordSeparator.length > 1) {\r\n o.wordSeparator = ' ';\r\n }\r\n\r\n const listLength = EEFLongWordList.length - 1;\r\n const wordList = new Array(o.numWords);\r\n for (let i = 0; i < o.numWords; i++) {\r\n const wordIndex = await this.cryptoService.randomNumber(0, listLength);\r\n wordList[i] = EEFLongWordList[wordIndex];\r\n }\r\n return wordList.join(o.wordSeparator);\r\n }\r\n\r\n async getOptions() {\r\n if (this.optionsCache == null) {\r\n const options = await this.storageService.get(Keys.options);\r\n if (options == null) {\r\n this.optionsCache = DefaultOptions;\r\n } else {\r\n this.optionsCache = Object.assign({}, DefaultOptions, options);\r\n }\r\n }\r\n\r\n return this.optionsCache;\r\n }\r\n\r\n async saveOptions(options: any) {\r\n await this.storageService.save(Keys.options, options);\r\n this.optionsCache = options;\r\n }\r\n\r\n async getHistory(): Promise {\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return new Array();\r\n }\r\n\r\n if (!this.history) {\r\n const encrypted = await this.storageService.get(Keys.history);\r\n this.history = await this.decryptHistory(encrypted);\r\n }\r\n\r\n return this.history || new Array();\r\n }\r\n\r\n async addHistory(password: string): Promise {\r\n // Cannot add new history if no key is available\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n return;\r\n }\r\n\r\n const currentHistory = await this.getHistory();\r\n\r\n // Prevent duplicates\r\n if (this.matchesPrevious(password, currentHistory)) {\r\n return;\r\n }\r\n\r\n currentHistory.unshift(new GeneratedPasswordHistory(password, Date.now()));\r\n\r\n // Remove old items.\r\n if (currentHistory.length > MaxPasswordsInHistory) {\r\n currentHistory.pop();\r\n }\r\n\r\n const newHistory = await this.encryptHistory(currentHistory);\r\n return await this.storageService.save(Keys.history, newHistory);\r\n }\r\n\r\n async clear(): Promise {\r\n this.history = [];\r\n return await this.storageService.remove(Keys.history);\r\n }\r\n\r\n passwordStrength(password: string, userInputs: string[] = null): zxcvbn.ZXCVBNResult {\r\n if (password == null || password.length === 0) {\r\n return null;\r\n }\r\n let globalUserInputs = ['bitwarden', 'bit', 'warden'];\r\n if (userInputs != null && userInputs.length > 0) {\r\n globalUserInputs = globalUserInputs.concat(userInputs);\r\n }\r\n // Use a hash set to get rid of any duplicate user inputs\r\n const finalUserInputs = Array.from(new Set(globalUserInputs));\r\n const result = zxcvbn(password, finalUserInputs);\r\n return result;\r\n }\r\n\r\n private async encryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const encrypted = await this.cryptoService.encrypt(item.password);\r\n return new GeneratedPasswordHistory(encrypted.encryptedString, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private async decryptHistory(history: GeneratedPasswordHistory[]): Promise {\r\n if (history == null || history.length === 0) {\r\n return Promise.resolve([]);\r\n }\r\n\r\n const promises = history.map(async (item) => {\r\n const decrypted = await this.cryptoService.decryptToUtf8(new CipherString(item.password));\r\n return new GeneratedPasswordHistory(decrypted, item.date);\r\n });\r\n\r\n return await Promise.all(promises);\r\n }\r\n\r\n private matchesPrevious(password: string, history: GeneratedPasswordHistory[]): boolean {\r\n if (history == null || history.length === 0) {\r\n return false;\r\n }\r\n\r\n return history[history.length - 1].password === password;\r\n }\r\n\r\n // ref: https://stackoverflow.com/a/12646864/1090359\r\n private async shuffleArray(array: string[]) {\r\n for (let i = array.length - 1; i > 0; i--) {\r\n const j = await this.cryptoService.randomNumber(0, i);\r\n [array[i], array[j]] = [array[j], array[i]];\r\n }\r\n }\r\n}\r\n","import { SettingsService as SettingsServiceAbstraction } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nconst Keys = {\r\n settingsPrefix: 'settings_',\r\n equivalentDomains: 'equivalentDomains',\r\n};\r\n\r\nexport class SettingsService implements SettingsServiceAbstraction {\r\n private settingsCache: any;\r\n\r\n constructor(private userService: UserService, private storageService: StorageService) {\r\n }\r\n\r\n clearCache(): void {\r\n this.settingsCache = null;\r\n }\r\n\r\n getEquivalentDomains(): Promise {\r\n return this.getSettingsKey(Keys.equivalentDomains);\r\n }\r\n\r\n async setEquivalentDomains(equivalentDomains: string[][]): Promise {\r\n await this.setSettingsKey(Keys.equivalentDomains, equivalentDomains);\r\n }\r\n\r\n async clear(userId: string): Promise {\r\n await this.storageService.remove(Keys.settingsPrefix + userId);\r\n this.settingsCache = null;\r\n }\r\n\r\n // Helpers\r\n\r\n private async getSettings(): Promise {\r\n if (this.settingsCache == null) {\r\n const userId = await this.userService.getUserId();\r\n this.settingsCache = this.storageService.get(Keys.settingsPrefix + userId);\r\n }\r\n return this.settingsCache;\r\n }\r\n\r\n private async getSettingsKey(key: string): Promise {\r\n const settings = await this.getSettings();\r\n if (settings != null && settings[key]) {\r\n return settings[key];\r\n }\r\n return null;\r\n }\r\n\r\n private async setSettingsKey(key: string, value: any): Promise {\r\n const userId = await this.userService.getUserId();\r\n let settings = await this.getSettings();\r\n if (!settings) {\r\n settings = {};\r\n }\r\n\r\n settings[key] = value;\r\n await this.storageService.save(Keys.settingsPrefix + userId, settings);\r\n this.settingsCache = settings;\r\n }\r\n}\r\n","import { StateService as StateServiceAbstraction } from '../abstractions/state.service';\r\n\r\nexport class StateService implements StateServiceAbstraction {\r\n private state: any = {};\r\n\r\n get(key: string): Promise {\r\n if (this.state.hasOwnProperty(key)) {\r\n return Promise.resolve(this.state[key]);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n this.state[key] = obj;\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n delete this.state[key];\r\n return Promise.resolve();\r\n }\r\n\r\n purge(): Promise {\r\n this.state = {};\r\n return Promise.resolve();\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { CollectionService } from '../abstractions/collection.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\nimport { MessagingService } from '../abstractions/messaging.service';\r\nimport { SettingsService } from '../abstractions/settings.service';\r\nimport { StorageService } from '../abstractions/storage.service';\r\nimport { SyncService as SyncServiceAbstraction } from '../abstractions/sync.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { FolderData } from '../models/data/folderData';\r\nimport { OrganizationData } from '../models/data/organizationData';\r\n\r\nimport { CipherResponse } from '../models/response/cipherResponse';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\nimport { DomainsResponse } from '../models/response/domainsResponse';\r\nimport { FolderResponse } from '../models/response/folderResponse';\r\nimport {\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\nimport { ProfileResponse } from '../models/response/profileResponse';\r\n\r\nconst Keys = {\r\n lastSyncPrefix: 'lastSync_',\r\n};\r\n\r\nexport class SyncService implements SyncServiceAbstraction {\r\n syncInProgress: boolean = false;\r\n\r\n constructor(private userService: UserService, private apiService: ApiService,\r\n private settingsService: SettingsService, private folderService: FolderService,\r\n private cipherService: CipherService, private cryptoService: CryptoService,\r\n private collectionService: CollectionService, private storageService: StorageService,\r\n private messagingService: MessagingService, private logoutCallback: (expired: boolean) => Promise) {\r\n }\r\n\r\n async getLastSync(): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return null;\r\n }\r\n\r\n const lastSync = await this.storageService.get(Keys.lastSyncPrefix + userId);\r\n if (lastSync) {\r\n return new Date(lastSync);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n async setLastSync(date: Date): Promise {\r\n const userId = await this.userService.getUserId();\r\n if (userId == null) {\r\n return;\r\n }\r\n\r\n await this.storageService.save(Keys.lastSyncPrefix + userId, date.toJSON());\r\n }\r\n\r\n async fullSync(forceSync: boolean): Promise {\r\n this.syncStarted();\r\n const isAuthenticated = await this.userService.isAuthenticated();\r\n if (!isAuthenticated) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const now = new Date();\r\n const needsSyncResult = await this.needsSyncing(forceSync);\r\n const needsSync = needsSyncResult[0];\r\n const skipped = needsSyncResult[1];\r\n\r\n if (skipped) {\r\n return this.syncCompleted(false);\r\n }\r\n\r\n if (!needsSync) {\r\n await this.setLastSync(now);\r\n return this.syncCompleted(false);\r\n }\r\n\r\n const userId = await this.userService.getUserId();\r\n try {\r\n const response = await this.apiService.getSync();\r\n\r\n await this.syncProfile(response.profile);\r\n await this.syncFolders(userId, response.folders);\r\n await this.syncCollections(response.collections);\r\n await this.syncCiphers(userId, response.ciphers);\r\n await this.syncSettings(userId, response.domains);\r\n\r\n await this.setLastSync(now);\r\n return this.syncCompleted(true);\r\n } catch (e) {\r\n return this.syncCompleted(false);\r\n }\r\n }\r\n\r\n async syncUpsertFolder(notification: SyncFolderNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n const localFolder = await this.folderService.get(notification.id);\r\n if ((!isEdit && localFolder == null) ||\r\n (isEdit && localFolder != null && localFolder.revisionDate < notification.revisionDate)) {\r\n const remoteFolder = await this.apiService.getFolder(notification.id);\r\n if (remoteFolder != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.folderService.upsert(new FolderData(remoteFolder, userId));\r\n this.messagingService.send('syncedUpsertedFolder', { folderId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch { }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteFolder(notification: SyncFolderNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.folderService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedFolder', { folderId: notification.id });\r\n this.syncCompleted(true);\r\n return true;\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncUpsertCipher(notification: SyncCipherNotification, isEdit: boolean): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n try {\r\n let shouldUpdate = true;\r\n const localCipher = await this.cipherService.get(notification.id);\r\n if (localCipher != null && localCipher.revisionDate >= notification.revisionDate) {\r\n shouldUpdate = false;\r\n }\r\n\r\n let checkCollections = false;\r\n if (shouldUpdate) {\r\n if (isEdit) {\r\n shouldUpdate = localCipher != null;\r\n checkCollections = true;\r\n } else {\r\n if (notification.collectionIds == null || notification.organizationId == null) {\r\n shouldUpdate = localCipher == null;\r\n } else {\r\n shouldUpdate = false;\r\n checkCollections = true;\r\n }\r\n }\r\n }\r\n\r\n if (!shouldUpdate && checkCollections && notification.organizationId != null &&\r\n notification.collectionIds != null && notification.collectionIds.length > 0) {\r\n const collections = await this.collectionService.getAll();\r\n if (collections != null) {\r\n for (let i = 0; i < collections.length; i++) {\r\n if (notification.collectionIds.indexOf(collections[i].id)) {\r\n shouldUpdate = true;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (shouldUpdate) {\r\n const remoteCipher = await this.apiService.getCipher(notification.id);\r\n if (remoteCipher != null) {\r\n const userId = await this.userService.getUserId();\r\n await this.cipherService.upsert(new CipherData(remoteCipher, userId));\r\n this.messagingService.send('syncedUpsertedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n } catch (e) {\r\n if (e != null && e.statusCode === 404 && isEdit) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n }\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n async syncDeleteCipher(notification: SyncCipherNotification): Promise {\r\n this.syncStarted();\r\n if (await this.userService.isAuthenticated()) {\r\n await this.cipherService.delete(notification.id);\r\n this.messagingService.send('syncedDeletedCipher', { cipherId: notification.id });\r\n return this.syncCompleted(true);\r\n }\r\n return this.syncCompleted(false);\r\n }\r\n\r\n // Helpers\r\n\r\n private syncStarted() {\r\n this.syncInProgress = true;\r\n this.messagingService.send('syncStarted');\r\n }\r\n\r\n private syncCompleted(successfully: boolean): boolean {\r\n this.syncInProgress = false;\r\n this.messagingService.send('syncCompleted', { successfully: successfully });\r\n return successfully;\r\n }\r\n\r\n private async needsSyncing(forceSync: boolean) {\r\n if (forceSync) {\r\n return [true, false];\r\n }\r\n\r\n const lastSync = await this.getLastSync();\r\n if (lastSync == null || lastSync.getTime() === 0) {\r\n return [true, false];\r\n }\r\n\r\n try {\r\n const response = await this.apiService.getAccountRevisionDate();\r\n if (new Date(response) <= lastSync) {\r\n return [false, false];\r\n }\r\n return [true, false];\r\n } catch (e) {\r\n return [false, true];\r\n }\r\n }\r\n\r\n private async syncProfile(response: ProfileResponse) {\r\n const stamp = await this.userService.getSecurityStamp();\r\n if (stamp != null && stamp !== response.securityStamp) {\r\n if (this.logoutCallback != null) {\r\n await this.logoutCallback(true);\r\n }\r\n\r\n throw new Error('Stamp has changed');\r\n }\r\n\r\n await this.cryptoService.setEncKey(response.key);\r\n await this.cryptoService.setEncPrivateKey(response.privateKey);\r\n await this.cryptoService.setOrgKeys(response.organizations);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n await this.userService.setSecurityStamp(response.securityStamp);\r\n\r\n const organizations: { [id: string]: OrganizationData; } = {};\r\n response.organizations.forEach((o) => {\r\n organizations[o.id] = new OrganizationData(o);\r\n });\r\n return await this.userService.replaceOrganizations(organizations);\r\n }\r\n\r\n private async syncFolders(userId: string, response: FolderResponse[]) {\r\n const folders: { [id: string]: FolderData; } = {};\r\n response.forEach((f) => {\r\n folders[f.id] = new FolderData(f, userId);\r\n });\r\n return await this.folderService.replace(folders);\r\n }\r\n\r\n private async syncCollections(response: CollectionDetailsResponse[]) {\r\n const collections: { [id: string]: CollectionData; } = {};\r\n response.forEach((c) => {\r\n collections[c.id] = new CollectionData(c);\r\n });\r\n return await this.collectionService.replace(collections);\r\n }\r\n\r\n private async syncCiphers(userId: string, response: CipherResponse[]) {\r\n const ciphers: { [id: string]: CipherData; } = {};\r\n response.forEach((c) => {\r\n ciphers[c.id] = new CipherData(c, userId);\r\n });\r\n return await this.cipherService.replace(ciphers);\r\n }\r\n\r\n private async syncSettings(userId: string, response: DomainsResponse) {\r\n let eqDomains: string[][] = [];\r\n if (response != null && response.equivalentDomains != null) {\r\n eqDomains = eqDomains.concat(response.equivalentDomains);\r\n }\r\n\r\n if (response != null && response.globalEquivalentDomains != null) {\r\n response.globalEquivalentDomains.forEach((global) => {\r\n if (global.domains.length > 0) {\r\n eqDomains.push(global.domains);\r\n }\r\n });\r\n }\r\n\r\n return this.settingsService.setEquivalentDomains(eqDomains);\r\n }\r\n}\r\n","import { ConstantsService } from './constants.service';\n\nimport { StorageService } from '../abstractions/storage.service';\nimport { TokenService as TokenServiceAbstraction } from '../abstractions/token.service';\n\nimport { Utils } from '../misc/utils';\n\nconst Keys = {\n accessToken: 'accessToken',\n refreshToken: 'refreshToken',\n twoFactorTokenPrefix: 'twoFactorToken_',\n};\n\nexport class TokenService implements TokenServiceAbstraction {\n token: string;\n decodedToken: any;\n refreshToken: string;\n\n constructor(private storageService: StorageService) {\n }\n\n setTokens(accessToken: string, refreshToken: string): Promise {\n return Promise.all([\n this.setToken(accessToken),\n this.setRefreshToken(refreshToken),\n ]);\n }\n\n setToken(token: string): Promise {\n this.token = token;\n this.decodedToken = null;\n return this.storageService.save(Keys.accessToken, token);\n }\n\n async getToken(): Promise {\n if (this.token != null) {\n return this.token;\n }\n\n this.token = await this.storageService.get(Keys.accessToken);\n return this.token;\n }\n\n setRefreshToken(refreshToken: string): Promise {\n this.refreshToken = refreshToken;\n return this.storageService.save(Keys.refreshToken, refreshToken);\n }\n\n async getRefreshToken(): Promise {\n if (this.refreshToken != null) {\n return this.refreshToken;\n }\n\n this.refreshToken = await this.storageService.get(Keys.refreshToken);\n return this.refreshToken;\n }\n\n setTwoFactorToken(token: string, email: string): Promise {\n return this.storageService.save(Keys.twoFactorTokenPrefix + email, token);\n }\n\n getTwoFactorToken(email: string): Promise {\n return this.storageService.get(Keys.twoFactorTokenPrefix + email);\n }\n\n clearTwoFactorToken(email: string): Promise {\n return this.storageService.remove(Keys.twoFactorTokenPrefix + email);\n }\n\n clearToken(): Promise {\n this.token = null;\n this.decodedToken = null;\n this.refreshToken = null;\n\n return Promise.all([\n this.storageService.remove(Keys.accessToken),\n this.storageService.remove(Keys.refreshToken),\n ]);\n }\n\n // jwthelper methods\n // ref https://github.com/auth0/angular-jwt/blob/master/src/angularJwt/services/jwt.js\n\n decodeToken(): any {\n if (this.decodedToken) {\n return this.decodedToken;\n }\n\n if (this.token == null) {\n throw new Error('Token not found.');\n }\n\n const parts = this.token.split('.');\n if (parts.length !== 3) {\n throw new Error('JWT must have 3 parts');\n }\n\n const decoded = Utils.fromUrlB64ToUtf8(parts[1]);\n if (decoded == null) {\n throw new Error('Cannot decode the token');\n }\n\n this.decodedToken = JSON.parse(decoded);\n return this.decodedToken;\n }\n\n getTokenExpirationDate(): Date {\n const decoded = this.decodeToken();\n if (typeof decoded.exp === 'undefined') {\n return null;\n }\n\n const d = new Date(0); // The 0 here is the key, which sets the date to the epoch\n d.setUTCSeconds(decoded.exp);\n return d;\n }\n\n tokenSecondsRemaining(offsetSeconds: number = 0): number {\n const d = this.getTokenExpirationDate();\n if (d == null) {\n return 0;\n }\n\n const msRemaining = d.valueOf() - (new Date().valueOf() + (offsetSeconds * 1000));\n return Math.round(msRemaining / 1000);\n }\n\n tokenNeedsRefresh(minutes: number = 5): boolean {\n const sRemaining = this.tokenSecondsRemaining();\n return sRemaining < (60 * minutes);\n }\n\n getUserId(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.sub === 'undefined') {\n throw new Error('No user id found');\n }\n\n return decoded.sub as string;\n }\n\n getEmail(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.email === 'undefined') {\n throw new Error('No email found');\n }\n\n return decoded.email as string;\n }\n\n getEmailVerified(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.email_verified === 'undefined') {\n throw new Error('No email verification found');\n }\n\n return decoded.email_verified as boolean;\n }\n\n getName(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.name === 'undefined') {\n return null;\n }\n\n return decoded.name as string;\n }\n\n getPremium(): boolean {\n const decoded = this.decodeToken();\n if (typeof decoded.premium === 'undefined') {\n return false;\n }\n\n return decoded.premium as boolean;\n }\n\n getIssuer(): string {\n const decoded = this.decodeToken();\n if (typeof decoded.iss === 'undefined') {\n throw new Error('No issuer found');\n }\n\n return decoded.iss as string;\n }\n}\n","import { ConstantsService } from './constants.service';\n\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\nimport { StorageService } from '../abstractions/storage.service';\nimport { TotpService as TotpServiceAbstraction } from '../abstractions/totp.service';\n\nimport { Utils } from '../misc/utils';\n\nconst B32Chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';\nconst SteamChars = '23456789BCDFGHJKMNPQRTVWXY';\n\nexport class TotpService implements TotpServiceAbstraction {\n constructor(private storageService: StorageService, private cryptoFunctionService: CryptoFunctionService) { }\n\n async getCode(key: string): Promise {\n if (key == null) {\n return null;\n }\n let period = 30;\n let alg: 'sha1' | 'sha256' | 'sha512' = 'sha1';\n let digits = 6;\n let keyB32 = key;\n const isOtpAuth = key.toLowerCase().indexOf('otpauth://') === 0;\n const isSteamAuth = !isOtpAuth && key.toLowerCase().indexOf('steam://') === 0;\n if (isOtpAuth) {\n const params = Utils.getQueryParams(key);\n if (params.has('digits') && params.get('digits') != null) {\n try {\n const digitParams = parseInt(params.get('digits').trim(), null);\n if (digitParams > 10) {\n digits = 10;\n } else if (digitParams > 0) {\n digits = digitParams;\n }\n } catch { }\n }\n if (params.has('period') && params.get('period') != null) {\n try {\n const periodParam = parseInt(params.get('period').trim(), null);\n if (periodParam > 0) {\n period = periodParam;\n }\n } catch { }\n }\n if (params.has('secret') && params.get('secret') != null) {\n keyB32 = params.get('secret');\n }\n if (params.has('algorithm') && params.get('algorithm') != null) {\n const algParam = params.get('algorithm').toLowerCase();\n if (algParam === 'sha1' || algParam === 'sha256' || algParam === 'sha512') {\n alg = algParam;\n }\n }\n } else if (isSteamAuth) {\n keyB32 = key.substr('steam://'.length);\n digits = 5;\n }\n\n const epoch = Math.round(new Date().getTime() / 1000.0);\n const timeHex = this.leftPad(this.decToHex(Math.floor(epoch / period)), 16, '0');\n const timeBytes = Utils.fromHexToArray(timeHex);\n const keyBytes = this.b32ToBytes(keyB32);\n\n if (!keyBytes.length || !timeBytes.length) {\n return null;\n }\n\n const hash = await this.sign(keyBytes, timeBytes, alg);\n if (hash.length === 0) {\n return null;\n }\n\n /* tslint:disable */\n const offset = (hash[hash.length - 1] & 0xf);\n const binary = ((hash[offset] & 0x7f) << 24) | ((hash[offset + 1] & 0xff) << 16) |\n ((hash[offset + 2] & 0xff) << 8) | (hash[offset + 3] & 0xff);\n /* tslint:enable */\n\n let otp = '';\n if (isSteamAuth) {\n // tslint:disable-next-line\n let fullCode = binary & 0x7fffffff;\n for (let i = 0; i < digits; i++) {\n otp += SteamChars[fullCode % SteamChars.length];\n fullCode = Math.trunc(fullCode / SteamChars.length);\n }\n } else {\n otp = (binary % Math.pow(10, digits)).toString();\n otp = this.leftPad(otp, digits, '0');\n }\n\n return otp;\n }\n\n getTimeInterval(key: string): number {\n let period = 30;\n if (key != null && key.toLowerCase().indexOf('otpauth://') === 0) {\n const params = Utils.getQueryParams(key);\n if (params.has('period') && params.get('period') != null) {\n try {\n period = parseInt(params.get('period').trim(), null);\n } catch { }\n }\n }\n return period;\n }\n\n async isAutoCopyEnabled(): Promise {\n return !(await this.storageService.get(ConstantsService.disableAutoTotpCopyKey));\n }\n\n // Helpers\n\n private leftPad(s: string, l: number, p: string): string {\n if (l + 1 >= s.length) {\n s = Array(l + 1 - s.length).join(p) + s;\n }\n return s;\n }\n\n private decToHex(d: number): string {\n return (d < 15.5 ? '0' : '') + Math.round(d).toString(16);\n }\n\n private b32ToHex(s: string): string {\n s = s.toUpperCase();\n let cleanedInput = '';\n\n for (let i = 0; i < s.length; i++) {\n if (B32Chars.indexOf(s[i]) < 0) {\n continue;\n }\n\n cleanedInput += s[i];\n }\n s = cleanedInput;\n\n let bits = '';\n let hex = '';\n for (let i = 0; i < s.length; i++) {\n const byteIndex = B32Chars.indexOf(s.charAt(i));\n if (byteIndex < 0) {\n continue;\n }\n bits += this.leftPad(byteIndex.toString(2), 5, '0');\n }\n for (let i = 0; i + 4 <= bits.length; i += 4) {\n const chunk = bits.substr(i, 4);\n hex = hex + parseInt(chunk, 2).toString(16);\n }\n return hex;\n }\n\n private b32ToBytes(s: string): Uint8Array {\n return Utils.fromHexToArray(this.b32ToHex(s));\n }\n\n private async sign(keyBytes: Uint8Array, timeBytes: Uint8Array, alg: 'sha1' | 'sha256' | 'sha512') {\n const signature = await this.cryptoFunctionService.hmac(timeBytes.buffer, keyBytes.buffer, alg);\n return new Uint8Array(signature);\n }\n}\n","import { StorageService } from '../abstractions/storage.service';\nimport { TokenService } from '../abstractions/token.service';\nimport { UserService as UserServiceAbstraction } from '../abstractions/user.service';\n\nimport { OrganizationData } from '../models/data/organizationData';\nimport { Organization } from '../models/domain/organization';\n\nimport { KdfType } from '../enums/kdfType';\n\nconst Keys = {\n userId: 'userId',\n userEmail: 'userEmail',\n stamp: 'securityStamp',\n kdf: 'kdf',\n kdfIterations: 'kdfIterations',\n organizationsPrefix: 'organizations_',\n};\n\nexport class UserService implements UserServiceAbstraction {\n private userId: string;\n private email: string;\n private stamp: string;\n private kdf: KdfType;\n private kdfIterations: number;\n\n constructor(private tokenService: TokenService, private storageService: StorageService) { }\n\n setInformation(userId: string, email: string, kdf: KdfType, kdfIterations: number): Promise {\n this.email = email;\n this.userId = userId;\n this.kdf = kdf;\n this.kdfIterations = kdfIterations;\n\n return Promise.all([\n this.storageService.save(Keys.userEmail, email),\n this.storageService.save(Keys.userId, userId),\n this.storageService.save(Keys.kdf, kdf),\n this.storageService.save(Keys.kdfIterations, kdfIterations),\n ]);\n }\n\n setSecurityStamp(stamp: string): Promise {\n this.stamp = stamp;\n return this.storageService.save(Keys.stamp, stamp);\n }\n\n async getUserId(): Promise {\n if (this.userId != null) {\n return this.userId;\n }\n\n this.userId = await this.storageService.get(Keys.userId);\n return this.userId;\n }\n\n async getEmail(): Promise {\n if (this.email != null) {\n return this.email;\n }\n\n this.email = await this.storageService.get(Keys.userEmail);\n return this.email;\n }\n\n async getSecurityStamp(): Promise {\n if (this.stamp != null) {\n return this.stamp;\n }\n\n this.stamp = await this.storageService.get(Keys.stamp);\n return this.stamp;\n }\n\n async getKdf(): Promise {\n if (this.kdf != null) {\n return this.kdf;\n }\n\n this.kdf = await this.storageService.get(Keys.kdf);\n return this.kdf;\n }\n\n async getKdfIterations(): Promise {\n if (this.kdfIterations != null) {\n return this.kdfIterations;\n }\n\n this.kdfIterations = await this.storageService.get(Keys.kdfIterations);\n return this.kdfIterations;\n }\n\n async clear(): Promise {\n const userId = await this.getUserId();\n\n await Promise.all([\n this.storageService.remove(Keys.userId),\n this.storageService.remove(Keys.userEmail),\n this.storageService.remove(Keys.stamp),\n this.storageService.remove(Keys.kdf),\n this.storageService.remove(Keys.kdfIterations),\n this.clearOrganizations(userId),\n ]);\n\n this.userId = this.email = this.stamp = null;\n this.kdf = null;\n this.kdfIterations = null;\n }\n\n async isAuthenticated(): Promise {\n const token = await this.tokenService.getToken();\n if (token == null) {\n return false;\n }\n\n const userId = await this.getUserId();\n return userId != null;\n }\n\n async canAccessPremium(): Promise {\n const tokenPremium = await this.tokenService.getPremium();\n if (tokenPremium) {\n return true;\n }\n\n const orgs = await this.getAllOrganizations();\n for (let i = 0; i < orgs.length; i++) {\n if (orgs[i].usersGetPremium && orgs[i].enabled) {\n return true;\n }\n }\n return false;\n }\n\n async getOrganization(id: string): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n if (organizations == null || !organizations.hasOwnProperty(id)) {\n return null;\n }\n\n return new Organization(organizations[id]);\n }\n\n async getAllOrganizations(): Promise {\n const userId = await this.getUserId();\n const organizations = await this.storageService.get<{ [id: string]: OrganizationData; }>(\n Keys.organizationsPrefix + userId);\n const response: Organization[] = [];\n for (const id in organizations) {\n if (organizations.hasOwnProperty(id)) {\n response.push(new Organization(organizations[id]));\n }\n }\n return response;\n }\n\n async replaceOrganizations(organizations: { [id: string]: OrganizationData; }): Promise {\n const userId = await this.getUserId();\n await this.storageService.save(Keys.organizationsPrefix + userId, organizations);\n }\n\n async clearOrganizations(userId: string): Promise {\n await this.storageService.remove(Keys.organizationsPrefix + userId);\n }\n}\n","import { Cipher } from './cipher';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nexport class CipherWithIds extends Cipher {\r\n id: string;\r\n collectionIds: string[];\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.id = o.id;\r\n super.build(o);\r\n this.collectionIds = o.collectionIds;\r\n }\r\n}\r\n","import { Collection } from './collection';\r\n\r\nimport { CollectionView } from '../view/collectionView';\r\n\r\nexport class CollectionWithId extends Collection {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","import { Folder } from './folder';\r\n\r\nimport { FolderView } from '../view/folderView';\r\n\r\nexport class FolderWithId extends Folder {\r\n id: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.id = o.id;\r\n super.build(o);\r\n }\r\n}\r\n","export enum NotificationType {\n SyncCipherUpdate = 0,\n SyncCipherCreate = 1,\n SyncLoginDelete = 2,\n SyncFolderDelete = 3,\n SyncCiphers = 4,\n\n SyncVault = 5,\n SyncOrgKeys = 6,\n SyncFolderCreate = 7,\n SyncFolderUpdate = 8,\n SyncCipherDelete = 9,\n SyncSettings = 10,\n\n LogOut = 11,\n}\n","import { Injectable } from '@angular/core';\nimport {\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { CryptoService } from '../../abstractions/crypto.service';\nimport { MessagingService } from '../../abstractions/messaging.service';\nimport { UserService } from '../../abstractions/user.service';\n\n@Injectable()\nexport class AuthGuardService implements CanActivate {\n constructor(private cryptoService: CryptoService, private userService: UserService, private router: Router,\n private messagingService: MessagingService) { }\n\n async canActivate() {\n const isAuthed = await this.userService.isAuthenticated();\n if (!isAuthed) {\n this.messagingService.send('logout');\n return false;\n }\n\n const hasKey = await this.cryptoService.hasKey();\n if (!hasKey) {\n this.router.navigate(['lock']);\n return false;\n }\n\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n Router,\n} from '@angular/router';\n\nimport { ToasterService } from 'angular2-toaster';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\n@Injectable()\nexport class OrganizationGuardService implements CanActivate {\n constructor(private userService: UserService, private router: Router,\n private toasterService: ToasterService, private i18nService: I18nService) { }\n\n async canActivate(route: ActivatedRouteSnapshot) {\n const org = await this.userService.getOrganization(route.params.organizationId);\n if (org == null) {\n this.router.navigate(['/']);\n return false;\n }\n if (!org.isOwner && !org.enabled) {\n this.toasterService.popAsync('error', null, this.i18nService.t('organizationIsDisabled'));\n this.router.navigate(['/']);\n return false;\n }\n\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport {\r\n ActivatedRouteSnapshot,\r\n CanActivate,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\r\n\r\n@Injectable()\r\nexport class OrganizationTypeGuardService implements CanActivate {\r\n constructor(private userService: UserService, private router: Router) { }\r\n\r\n async canActivate(route: ActivatedRouteSnapshot) {\r\n const org = await this.userService.getOrganization(route.parent.params.organizationId);\r\n const allowedTypes = route.data == null ? null : route.data.allowedTypes as OrganizationUserType[];\r\n if (allowedTypes == null || allowedTypes.indexOf(org.type) === -1) {\r\n this.router.navigate(['/organizations', org.id]);\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n CanActivate,\r\n Router,\r\n} from '@angular/router';\r\n\r\nimport { CryptoService } from 'jslib/abstractions/crypto.service';\r\nimport { UserService } from 'jslib/abstractions/user.service';\r\n\r\n@Injectable()\r\nexport class UnauthGuardService implements CanActivate {\r\n constructor(private cryptoService: CryptoService, private userService: UserService,\r\n private router: Router) { }\r\n\r\n async canActivate() {\r\n const isAuthed = await this.userService.isAuthenticated();\r\n if (isAuthed) {\r\n const hasKey = await this.cryptoService.hasKey();\r\n if (!hasKey) {\r\n this.router.navigate(['lock']);\r\n } else {\r\n this.router.navigate(['vault']);\r\n }\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport 'bootstrap';\nimport 'jquery';\nimport 'popper.js';\n\n// tslint:disable-next-line\nrequire('../scss/styles.scss');\n\nimport { AppModule } from './app.module';\n\nif (process.env.ENV === 'production') {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule, { preserveWhitespaces: true });\n","import 'core-js';\n\nimport { ToasterModule } from 'angular2-toaster';\nimport { Angulartics2Module } from 'angulartics2';\nimport { Angulartics2GoogleAnalytics } from 'angulartics2/ga';\n\nimport { AppRoutingModule } from './app-routing.module';\n\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { ServicesModule } from './services/services.module';\n\nimport { AppComponent } from './app.component';\nimport { ModalComponent } from './modal.component';\n\nimport { AvatarComponent } from './components/avatar.component';\nimport { CalloutComponent } from './components/callout.component';\nimport { PasswordStrengthComponent } from './components/password-strength.component';\n\nimport { FooterComponent } from './layouts/footer.component';\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { NavbarComponent } from './layouts/navbar.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorOptionsComponent } from './accounts/two-factor-options.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport {\n CollectionAddEditComponent as OrgCollectionAddEditComponent,\n} from './organizations/manage/collection-add-edit.component';\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EntityEventsComponent as OrgEntityEventsComponent } from './organizations/manage/entity-events.component';\nimport { EntityUsersComponent as OrgEntityUsersComponent } from './organizations/manage/entity-users.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupAddEditComponent as OrgGroupAddEditComponent } from './organizations/manage/group-add-edit.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\nimport { UserAddEditComponent as OrgUserAddEditComponent } from './organizations/manage/user-add-edit.component';\nimport { UserConfirmComponent as OrgUserConfirmComponent } from './organizations/manage/user-confirm.component';\nimport { UserGroupsComponent as OrgUserGroupsComponent } from './organizations/manage/user-groups.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { AdjustSeatsComponent } from './organizations/settings/adjust-seats.component';\nimport { DeleteOrganizationComponent } from './organizations/settings/delete-organization.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { AddEditComponent as OrgAddEditComponent } from './organizations/vault/add-edit.component';\nimport { AttachmentsComponent as OrgAttachmentsComponent } from './organizations/vault/attachments.component';\nimport { CiphersComponent as OrgCiphersComponent } from './organizations/vault/ciphers.component';\nimport { CollectionsComponent as OrgCollectionsComponent } from './organizations/vault/collections.component';\nimport { GroupingsComponent as OrgGroupingsComponent } from './organizations/vault/groupings.component';\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { AdjustPaymentComponent } from './settings/adjust-payment.component';\nimport { AdjustStorageComponent } from './settings/adjust-storage.component';\nimport { ChangeEmailComponent } from './settings/change-email.component';\nimport { ChangeKdfComponent } from './settings/change-kdf.component';\nimport { ChangePasswordComponent } from './settings/change-password.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DeauthorizeSessionsComponent } from './settings/deauthorize-sessions.component';\nimport { DeleteAccountComponent } from './settings/delete-account.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PaymentComponent } from './settings/payment.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { ProfileComponent } from './settings/profile.component';\nimport { PurgeVaultComponent } from './settings/purge-vault.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorAuthenticatorComponent } from './settings/two-factor-authenticator.component';\nimport { TwoFactorDuoComponent } from './settings/two-factor-duo.component';\nimport { TwoFactorEmailComponent } from './settings/two-factor-email.component';\nimport { TwoFactorRecoveryComponent } from './settings/two-factor-recovery.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { TwoFactorU2fComponent } from './settings/two-factor-u2f.component';\nimport { TwoFactorVerifyComponent } from './settings/two-factor-verify.component';\nimport { TwoFactorYubiKeyComponent } from './settings/two-factor-yubikey.component';\nimport { UpdateKeyComponent } from './settings/update-key.component';\nimport { UpdateLicenseComponent } from './settings/update-license.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\nimport { VerifyEmailComponent } from './settings/verify-email.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorHistoryComponent } from './tools/password-generator-history.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { AddEditComponent } from './vault/add-edit.component';\nimport { AttachmentsComponent } from './vault/attachments.component';\nimport { BulkDeleteComponent } from './vault/bulk-delete.component';\nimport { BulkMoveComponent } from './vault/bulk-move.component';\nimport { BulkShareComponent } from './vault/bulk-share.component';\nimport { CiphersComponent } from './vault/ciphers.component';\nimport { CollectionsComponent } from './vault/collections.component';\nimport { FolderAddEditComponent } from './vault/folder-add-edit.component';\nimport { GroupingsComponent } from './vault/groupings.component';\nimport { ShareComponent } from './vault/share.component';\nimport { VaultComponent } from './vault/vault.component';\n\nimport { IconComponent } from 'jslib/angular/components/icon.component';\n\nimport { ApiActionDirective } from 'jslib/angular/directives/api-action.directive';\nimport { AutofocusDirective } from 'jslib/angular/directives/autofocus.directive';\nimport { BlurClickDirective } from 'jslib/angular/directives/blur-click.directive';\nimport { BoxRowDirective } from 'jslib/angular/directives/box-row.directive';\nimport { FallbackSrcDirective } from 'jslib/angular/directives/fallback-src.directive';\nimport { InputVerbatimDirective } from 'jslib/angular/directives/input-verbatim.directive';\nimport { StopClickDirective } from 'jslib/angular/directives/stop-click.directive';\nimport { StopPropDirective } from 'jslib/angular/directives/stop-prop.directive';\nimport { TrueFalseValueDirective } from 'jslib/angular/directives/true-false-value.directive';\n\nimport { ColorPasswordPipe } from 'jslib/angular/pipes/color-password.pipe';\nimport { I18nPipe } from 'jslib/angular/pipes/i18n.pipe';\nimport { SearchCiphersPipe } from 'jslib/angular/pipes/search-ciphers.pipe';\nimport { SearchPipe } from 'jslib/angular/pipes/search.pipe';\n\nimport { registerLocaleData } from '@angular/common';\nimport localeCs from '@angular/common/locales/cs';\nimport localeDa from '@angular/common/locales/da';\nimport localeDe from '@angular/common/locales/de';\nimport localeEs from '@angular/common/locales/es';\nimport localeEt from '@angular/common/locales/et';\nimport localeFr from '@angular/common/locales/fr';\nimport localeIt from '@angular/common/locales/it';\nimport localeJa from '@angular/common/locales/ja';\nimport localeNb from '@angular/common/locales/nb';\nimport localeNl from '@angular/common/locales/nl';\nimport localePl from '@angular/common/locales/pl';\nimport localePtBr from '@angular/common/locales/pt';\nimport localePtPt from '@angular/common/locales/pt-PT';\nimport localeRu from '@angular/common/locales/ru';\nimport localeSk from '@angular/common/locales/sk';\nimport localeSv from '@angular/common/locales/sv';\nimport localeUk from '@angular/common/locales/uk';\nimport localeZhCn from '@angular/common/locales/zh-Hans';\nimport localeZhTw from '@angular/common/locales/zh-Hant';\n\nregisterLocaleData(localeCs, 'cs');\nregisterLocaleData(localeDa, 'da');\nregisterLocaleData(localeDe, 'de');\nregisterLocaleData(localeEs, 'es');\nregisterLocaleData(localeEt, 'et');\nregisterLocaleData(localeFr, 'fr');\nregisterLocaleData(localeIt, 'it');\nregisterLocaleData(localeJa, 'ja');\nregisterLocaleData(localeNb, 'nb');\nregisterLocaleData(localeNl, 'nl');\nregisterLocaleData(localePl, 'pl');\nregisterLocaleData(localePtBr, 'pt-BR');\nregisterLocaleData(localePtPt, 'pt-PT');\nregisterLocaleData(localeRu, 'ru');\nregisterLocaleData(localeSk, 'sk');\nregisterLocaleData(localeSv, 'sv');\nregisterLocaleData(localeUk, 'uk');\nregisterLocaleData(localeZhCn, 'zh-CN');\nregisterLocaleData(localeZhTw, 'zh-TW');\n\n@NgModule({\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n FormsModule,\n AppRoutingModule,\n ServicesModule,\n Angulartics2Module.forRoot([Angulartics2GoogleAnalytics], {\n pageTracking: {\n clearQueryParams: true,\n },\n }),\n ToasterModule.forRoot(),\n ],\n declarations: [\n AcceptOrganizationComponent,\n AccountComponent,\n AddEditComponent,\n AdjustPaymentComponent,\n AdjustSeatsComponent,\n AdjustStorageComponent,\n ApiActionDirective,\n AppComponent,\n AttachmentsComponent,\n AutofocusDirective,\n AvatarComponent,\n BlurClickDirective,\n BoxRowDirective,\n BreachReportComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CalloutComponent,\n ChangeEmailComponent,\n ChangeKdfComponent,\n ChangePasswordComponent,\n CiphersComponent,\n CollectionsComponent,\n ColorPasswordPipe,\n CreateOrganizationComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n DomainRulesComponent,\n ExportComponent,\n ExposedPasswordsReportComponent,\n FallbackSrcDirective,\n FolderAddEditComponent,\n FooterComponent,\n FrontendLayoutComponent,\n GroupingsComponent,\n HintComponent,\n I18nPipe,\n IconComponent,\n ImportComponent,\n InactiveTwoFactorReportComponent,\n InputVerbatimDirective,\n LockComponent,\n LoginComponent,\n ModalComponent,\n NavbarComponent,\n OptionsComponent,\n OrgAccountComponent,\n OrgAddEditComponent,\n OrganizationBillingComponent,\n OrgAttachmentsComponent,\n OrgCiphersComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgEventsComponent,\n OrgExportComponent,\n OrgExposedPasswordsReportComponent,\n OrgImportComponent,\n OrgInactiveTwoFactorReportComponent,\n OrgGroupAddEditComponent,\n OrgGroupingsComponent,\n OrgGroupsComponent,\n OrgManageCollectionsComponent,\n OrgManageComponent,\n OrgPeopleComponent,\n OrgReusedPasswordsReportComponent,\n OrgSettingComponent,\n OrgToolsComponent,\n OrgTwoFactorSetupComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n OrganizationsComponent,\n OrganizationLayoutComponent,\n OrgUnsecuredWebsitesReportComponent,\n OrgVaultComponent,\n OrgWeakPasswordsReportComponent,\n PasswordGeneratorComponent,\n PasswordGeneratorHistoryComponent,\n PasswordStrengthComponent,\n PaymentComponent,\n PremiumComponent,\n ProfileComponent,\n PurgeVaultComponent,\n RecoverDeleteComponent,\n RecoverTwoFactorComponent,\n RegisterComponent,\n ReusedPasswordsReportComponent,\n SearchCiphersPipe,\n SearchPipe,\n SettingsComponent,\n ShareComponent,\n StopClickDirective,\n StopPropDirective,\n ToolsComponent,\n TrueFalseValueDirective,\n TwoFactorAuthenticatorComponent,\n TwoFactorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorSetupComponent,\n TwoFactorU2fComponent,\n TwoFactorVerifyComponent,\n TwoFactorYubiKeyComponent,\n UnsecuredWebsitesReportComponent,\n UpdateKeyComponent,\n UpdateLicenseComponent,\n UserBillingComponent,\n UserLayoutComponent,\n VaultComponent,\n VerifyEmailComponent,\n VerifyEmailTokenComponent,\n VerifyRecoverDeleteComponent,\n WeakPasswordsReportComponent,\n ],\n entryComponents: [\n AddEditComponent,\n AttachmentsComponent,\n BulkDeleteComponent,\n BulkMoveComponent,\n BulkShareComponent,\n CollectionsComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n FolderAddEditComponent,\n ModalComponent,\n OrgAddEditComponent,\n OrgAttachmentsComponent,\n OrgCollectionAddEditComponent,\n OrgCollectionsComponent,\n OrgEntityEventsComponent,\n OrgEntityUsersComponent,\n OrgGroupAddEditComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n PasswordGeneratorHistoryComponent,\n PurgeVaultComponent,\n ShareComponent,\n TwoFactorAuthenticatorComponent,\n TwoFactorDuoComponent,\n TwoFactorEmailComponent,\n TwoFactorOptionsComponent,\n TwoFactorRecoveryComponent,\n TwoFactorU2fComponent,\n TwoFactorYubiKeyComponent,\n UpdateKeyComponent,\n ],\n providers: [],\n bootstrap: [AppComponent],\n})\nexport class AppModule { }\n","\n
\n © 2018, 8bit Solutions LLC\n
{{'versionNumber' | i18n : version}}\n
\n","
\n
\n
\n \n

{{'loginOrCreateNewAccount' | i18n}}

\n
\n
\n
\n \n \n
\n
\n \n
\n \n \n
\n \n {{'getMasterPasswordHint' | i18n}}\n \n
\n
\n \n \n
\n
\n
\n \n \n {{'createAccount' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","import {\r\n Input,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AuthResult } from '../../models/domain/authResult';\r\n\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { StorageService } from '../../abstractions/storage.service';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nconst Keys = {\r\n rememberedEmail: 'rememberedEmail',\r\n rememberEmail: 'rememberEmail',\r\n};\r\n\r\nexport class LoginComponent implements OnInit {\r\n @Input() email: string = '';\r\n @Input() rememberEmail = true;\r\n\r\n masterPassword: string = '';\r\n showPassword: boolean = false;\r\n formPromise: Promise;\r\n onSuccessfulLogin: () => Promise;\r\n onSuccessfulLoginNavigate: () => Promise;\r\n onSuccessfulLoginTwoFactorNavigate: () => Promise;\r\n\r\n protected twoFactorRoute = '2fa';\r\n protected successRoute = 'vault';\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,\r\n private storageService: StorageService) { }\r\n\r\n async ngOnInit() {\r\n if (this.email == null || this.email === '') {\r\n this.email = await this.storageService.get(Keys.rememberedEmail);\r\n if (this.email == null) {\r\n this.email = '';\r\n }\r\n }\r\n this.rememberEmail = await this.storageService.get(Keys.rememberEmail);\r\n if (this.rememberEmail == null) {\r\n this.rememberEmail = true;\r\n }\r\n if (Utils.isBrowser) {\r\n document.getElementById(this.email == null || this.email === '' ? 'email' : 'masterPassword').focus();\r\n }\r\n }\r\n\r\n async submit() {\r\n if (this.email == null || this.email === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('emailRequired'));\r\n return;\r\n }\r\n if (this.email.indexOf('@') === -1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidEmail'));\r\n return;\r\n }\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n\r\n try {\r\n this.formPromise = this.authService.logIn(this.email, this.masterPassword);\r\n const response = await this.formPromise;\r\n await this.storageService.save(Keys.rememberEmail, this.rememberEmail);\r\n if (this.rememberEmail) {\r\n await this.storageService.save(Keys.rememberedEmail, this.email);\r\n } else {\r\n await this.storageService.remove(Keys.rememberedEmail);\r\n }\r\n if (response.twoFactor) {\r\n this.platformUtilsService.eventTrack('Logged In To Two-step');\r\n if (this.onSuccessfulLoginTwoFactorNavigate != null) {\r\n this.onSuccessfulLoginTwoFactorNavigate();\r\n } else {\r\n this.router.navigate([this.twoFactorRoute]);\r\n }\r\n } else {\r\n if (this.onSuccessfulLogin != null) {\r\n this.onSuccessfulLogin();\r\n }\r\n this.platformUtilsService.eventTrack('Logged In');\r\n if (this.onSuccessfulLoginNavigate != null) {\r\n this.onSuccessfulLoginNavigate();\r\n } else {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n }\r\n } catch { }\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Login');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('masterPassword').focus();\r\n }\r\n}\r\n","export function getDomain(host: string): string | null {\r\n return null;\r\n}\r\n","
\n
\n
\n

{{title}}

\n
\n
\n \n

{{'enterVerificationCodeApp' | i18n}}

\n

\n {{'enterVerificationCodeEmail' | i18n : twoFactorEmail}}\n

\n
\n \n \n \n \n {{'sendVerificationCodeEmailAgain' | i18n}}\n \n \n
\n
\n \n

{{'insertYubiKey' | i18n}}

\n \"\"\n
\n \n \n
\n
\n \n

\n \n

\n \n

{{'insertU2f' | i18n}}

\n \"\"\n
\n
\n \n
\n \n
\n
\n \n
\n \n \n
\n \n

{{'noTwoStepProviders' | i18n}}

\n

{{'noTwoStepProviders2' | i18n}}

\n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n \n
\n
\n
\n
\n
\n\n\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class TwoFactorOptionsComponent implements OnInit {\r\n @Output() onProviderSelected = new EventEmitter();\r\n @Output() onRecoverSelected = new EventEmitter();\r\n\r\n providers: any[] = [];\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected i18nService: I18nService, protected platformUtilsService: PlatformUtilsService,\r\n protected win: Window) { }\r\n\r\n ngOnInit() {\r\n this.providers = this.authService.getSupportedTwoFactorProviders(this.win);\r\n }\r\n\r\n choose(p: any) {\r\n this.onProviderSelected.emit(p.type);\r\n }\r\n\r\n recover() {\r\n this.platformUtilsService.eventTrack('Selected Recover');\r\n this.platformUtilsService.launchUri('https://help.bitwarden.com/article/lost-two-step-device/');\r\n this.onRecoverSelected.emit();\r\n }\r\n}\r\n","import {\r\n Component,\r\n ComponentFactoryResolver,\r\n EventEmitter,\r\n OnDestroy,\r\n Output,\r\n Type,\r\n ViewChild,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-modal',\r\n template: ``,\r\n})\r\nexport class ModalComponent implements OnDestroy {\r\n @Output() onClose = new EventEmitter();\r\n @Output() onClosed = new EventEmitter();\r\n @Output() onShow = new EventEmitter();\r\n @Output() onShown = new EventEmitter();\r\n @ViewChild('container', { read: ViewContainerRef }) container: ViewContainerRef;\r\n parentContainer: ViewContainerRef = null;\r\n fade: boolean = true;\r\n\r\n constructor(protected componentFactoryResolver: ComponentFactoryResolver) { }\r\n\r\n ngOnDestroy() {\r\n document.body.classList.remove('modal-open');\r\n document.body.removeChild(document.querySelector('.modal-backdrop'));\r\n }\r\n\r\n show(type: Type, parentContainer: ViewContainerRef, fade: boolean = true): T {\r\n this.onShow.emit();\r\n this.parentContainer = parentContainer;\r\n this.fade = fade;\r\n\r\n document.body.classList.add('modal-open');\r\n const backdrop = document.createElement('div');\r\n backdrop.className = 'modal-backdrop' + (this.fade ? ' fade' : '');\r\n document.body.appendChild(backdrop);\r\n\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(type);\r\n const componentRef = this.container.createComponent(factory);\r\n\r\n document.querySelector('.modal-dialog').addEventListener('click', (e: Event) => {\r\n e.stopPropagation();\r\n });\r\n\r\n const modals = Array.from(document.querySelectorAll('.modal, .modal *[data-dismiss=\"modal\"]'));\r\n for (const closeElement of modals) {\r\n closeElement.addEventListener('click', (event) => {\r\n this.close();\r\n });\r\n }\r\n\r\n this.onShown.emit();\r\n return componentRef.instance;\r\n }\r\n\r\n close() {\r\n this.onClose.emit();\r\n this.onClosed.emit();\r\n if (this.parentContainer != null) {\r\n this.parentContainer.clear();\r\n }\r\n }\r\n}\r\n","import {\r\n OnDestroy,\r\n OnInit,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { DeviceType } from '../../enums/deviceType';\r\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nimport { TwoFactorEmailRequest } from '../../models/request/twoFactorEmailRequest';\r\n\r\nimport { ApiService } from '../../abstractions/api.service';\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { EnvironmentService } from '../../abstractions/environment.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { TwoFactorProviders } from '../../services/auth.service';\r\n\r\nimport * as DuoWebSDK from 'duo_web_sdk';\r\nimport { U2f } from '../../misc/u2f';\r\n\r\nexport class TwoFactorComponent implements OnInit, OnDestroy {\r\n token: string = '';\r\n remember: boolean = false;\r\n u2fReady: boolean = false;\r\n providers = TwoFactorProviders;\r\n providerType = TwoFactorProviderType;\r\n selectedProviderType: TwoFactorProviderType = TwoFactorProviderType.Authenticator;\r\n u2fSupported: boolean = false;\r\n u2f: U2f = null;\r\n title: string = '';\r\n twoFactorEmail: string = null;\r\n formPromise: Promise;\r\n emailPromise: Promise;\r\n onSuccessfulLogin: () => Promise;\r\n onSuccessfulLoginNavigate: () => Promise;\r\n\r\n protected loginRoute = 'login';\r\n protected successRoute = 'vault';\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected i18nService: I18nService, protected apiService: ApiService,\r\n protected platformUtilsService: PlatformUtilsService, protected win: Window,\r\n protected environmentService: EnvironmentService) {\r\n this.u2fSupported = this.platformUtilsService.supportsU2f(win);\r\n }\r\n\r\n async ngOnInit() {\r\n if (this.authService.email == null || this.authService.masterPasswordHash == null ||\r\n this.authService.twoFactorProviders == null) {\r\n this.router.navigate([this.loginRoute]);\r\n return;\r\n }\r\n\r\n if (this.win != null && this.u2fSupported) {\r\n let customWebVaultUrl: string = null;\r\n if (this.environmentService.baseUrl != null) {\r\n customWebVaultUrl = this.environmentService.baseUrl;\r\n } else if (this.environmentService.webVaultUrl != null) {\r\n customWebVaultUrl = this.environmentService.webVaultUrl;\r\n }\r\n\r\n this.u2f = new U2f(this.win, customWebVaultUrl, (token: string) => {\r\n this.token = token;\r\n this.submit();\r\n }, (error: string) => {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), error);\r\n }, (info: string) => {\r\n if (info === 'ready') {\r\n this.u2fReady = true;\r\n }\r\n });\r\n }\r\n\r\n this.selectedProviderType = this.authService.getDefaultTwoFactorProvider(this.u2fSupported);\r\n await this.init();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.cleanupU2f();\r\n this.u2f = null;\r\n }\r\n\r\n async init() {\r\n if (this.selectedProviderType == null) {\r\n this.title = this.i18nService.t('loginUnavailable');\r\n return;\r\n }\r\n\r\n this.cleanupU2f();\r\n this.title = (TwoFactorProviders as any)[this.selectedProviderType].name;\r\n const params = this.authService.twoFactorProviders.get(this.selectedProviderType);\r\n switch (this.selectedProviderType) {\r\n case TwoFactorProviderType.U2f:\r\n if (!this.u2fSupported || this.u2f == null) {\r\n break;\r\n }\r\n\r\n if (params.Challenge != null) {\r\n this.u2f.init(JSON.parse(params.Challenge));\r\n } else {\r\n // TODO: Deprecated. Remove in future version.\r\n const challenges = JSON.parse(params.Challenges);\r\n if (challenges != null && challenges.length > 0) {\r\n this.u2f.init({\r\n appId: challenges[0].appId,\r\n challenge: challenges[0].challenge,\r\n keys: challenges.map((c: any) => {\r\n return {\r\n version: c.version,\r\n keyHandle: c.keyHandle,\r\n };\r\n }),\r\n });\r\n }\r\n }\r\n break;\r\n case TwoFactorProviderType.Duo:\r\n case TwoFactorProviderType.OrganizationDuo:\r\n if (this.platformUtilsService.getDevice() === DeviceType.SafariExtension) {\r\n break;\r\n }\r\n\r\n setTimeout(() => {\r\n DuoWebSDK.init({\r\n iframe: undefined,\r\n host: params.Host,\r\n sig_request: params.Signature,\r\n submit_callback: async (f: HTMLFormElement) => {\r\n const sig = f.querySelector('input[name=\"sig_response\"]') as HTMLInputElement;\r\n if (sig != null) {\r\n this.token = sig.value;\r\n await this.submit();\r\n }\r\n },\r\n });\r\n }, 0);\r\n break;\r\n case TwoFactorProviderType.Email:\r\n this.twoFactorEmail = params.Email;\r\n if (this.authService.twoFactorProviders.size > 1) {\r\n await this.sendEmail(false);\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n async submit() {\r\n if (this.token == null || this.token === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('verificationCodeRequired'));\r\n return;\r\n }\r\n\r\n if (this.selectedProviderType === TwoFactorProviderType.U2f) {\r\n if (this.u2f != null) {\r\n this.u2f.stop();\r\n } else {\r\n return;\r\n }\r\n } else if (this.selectedProviderType === TwoFactorProviderType.Email ||\r\n this.selectedProviderType === TwoFactorProviderType.Authenticator) {\r\n this.token = this.token.replace(' ', '').trim();\r\n }\r\n\r\n try {\r\n this.formPromise = this.authService.logInTwoFactor(this.selectedProviderType, this.token, this.remember);\r\n await this.formPromise;\r\n if (this.onSuccessfulLogin != null) {\r\n this.onSuccessfulLogin();\r\n }\r\n this.platformUtilsService.eventTrack('Logged In From Two-step');\r\n if (this.onSuccessfulLoginNavigate != null) {\r\n this.onSuccessfulLoginNavigate();\r\n } else {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n } catch {\r\n if (this.selectedProviderType === TwoFactorProviderType.U2f && this.u2f != null) {\r\n this.u2f.start();\r\n }\r\n }\r\n }\r\n\r\n async sendEmail(doToast: boolean) {\r\n if (this.selectedProviderType !== TwoFactorProviderType.Email) {\r\n return;\r\n }\r\n\r\n if (this.emailPromise != null) {\r\n return;\r\n }\r\n\r\n try {\r\n const request = new TwoFactorEmailRequest(this.authService.email, this.authService.masterPasswordHash);\r\n this.emailPromise = this.apiService.postTwoFactorEmail(request);\r\n await this.emailPromise;\r\n if (doToast) {\r\n this.platformUtilsService.showToast('success', null,\r\n this.i18nService.t('verificationCodeEmailSent', this.twoFactorEmail));\r\n }\r\n } catch { }\r\n\r\n this.emailPromise = null;\r\n }\r\n\r\n private cleanupU2f() {\r\n if (this.u2f != null) {\r\n this.u2f.stop();\r\n this.u2f.cleanup();\r\n }\r\n }\r\n}\r\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nexport class AuthResult {\r\n twoFactor: boolean = false;\r\n twoFactorProviders: Map = null;\r\n}\r\n","import { DeviceType } from '../../enums/deviceType';\r\n\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class DeviceRequest {\r\n type: DeviceType;\r\n name: string;\r\n identifier: string;\r\n pushToken?: string;\r\n\r\n constructor(appId: string, platformUtilsService: PlatformUtilsService) {\r\n this.type = platformUtilsService.getDevice();\r\n this.name = platformUtilsService.getDeviceString();\r\n this.identifier = appId;\r\n this.pushToken = null;\r\n }\r\n}\r\n","export class PreloginRequest {\n email: string;\n\n constructor(email: string) {\n this.email = email;\n }\n}\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nimport { DeviceRequest } from './deviceRequest';\n\nexport class TokenRequest {\n email: string;\n masterPasswordHash: string;\n token: string;\n provider: TwoFactorProviderType;\n remember: boolean;\n device?: DeviceRequest;\n\n constructor(email: string, masterPasswordHash: string, provider: TwoFactorProviderType,\n token: string, remember: boolean, device?: DeviceRequest) {\n this.email = email;\n this.masterPasswordHash = masterPasswordHash;\n this.token = token;\n this.provider = provider;\n this.remember = remember;\n this.device = device != null ? device : null;\n }\n\n toIdentityToken(clientId: string) {\n const obj: any = {\n grant_type: 'password',\n username: this.email,\n password: this.masterPasswordHash,\n scope: 'api offline_access',\n client_id: clientId,\n };\n\n if (this.device) {\n obj.deviceType = this.device.type;\n obj.deviceIdentifier = this.device.identifier;\n obj.deviceName = this.device.name;\n // no push tokens for browser apps yet\n // obj.devicePushToken = this.device.pushToken;\n }\n\n if (this.token && this.provider != null) {\n obj.twoFactorToken = this.token;\n obj.twoFactorProvider = this.provider;\n obj.twoFactorRemember = this.remember ? '1' : '0';\n }\n\n return obj;\n }\n}\n","export class U2f {\r\n private iframe: HTMLIFrameElement = null;\r\n private connectorLink: HTMLAnchorElement;\r\n private parseFunction = this.parseMessage.bind(this);\r\n\r\n constructor(private win: Window, private webVaultUrl: string, private successCallback: Function,\r\n private errorCallback: Function, private infoCallback: Function) {\r\n this.connectorLink = win.document.createElement('a');\r\n this.webVaultUrl = webVaultUrl != null && webVaultUrl !== '' ? webVaultUrl : 'https://vault.bitwarden.com';\r\n }\r\n\r\n init(data: any): void {\r\n this.connectorLink.href = this.webVaultUrl + '/u2f-connector.html' +\r\n '?data=' + this.base64Encode(JSON.stringify(data)) +\r\n '&parent=' + encodeURIComponent(this.win.document.location.href) +\r\n '&v=1';\r\n\r\n this.iframe = this.win.document.getElementById('u2f_iframe') as HTMLIFrameElement;\r\n this.iframe.src = this.connectorLink.href;\r\n\r\n this.win.addEventListener('message', this.parseFunction, false);\r\n }\r\n\r\n stop() {\r\n this.sendMessage('stop');\r\n }\r\n\r\n start() {\r\n this.sendMessage('start');\r\n }\r\n\r\n sendMessage(message: any) {\r\n if (!this.iframe || !this.iframe.src || !this.iframe.contentWindow) {\r\n return;\r\n }\r\n\r\n this.iframe.contentWindow.postMessage(message, this.iframe.src);\r\n }\r\n\r\n base64Encode(str: string): string {\r\n return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, (match, p1) => {\r\n return String.fromCharCode(('0x' + p1) as any);\r\n }));\r\n }\r\n\r\n cleanup() {\r\n this.win.removeEventListener('message', this.parseFunction, false);\r\n }\r\n\r\n private parseMessage(event: MessageEvent) {\r\n if (!this.validMessage(event)) {\r\n return;\r\n }\r\n\r\n const parts: string[] = event.data.split('|');\r\n if (parts[0] === 'success' && this.successCallback) {\r\n this.successCallback(parts[1]);\r\n } else if (parts[0] === 'error' && this.errorCallback) {\r\n this.errorCallback(parts[1]);\r\n } else if (parts[0] === 'info' && this.infoCallback) {\r\n this.infoCallback(parts[1]);\r\n }\r\n }\r\n\r\n private validMessage(event: MessageEvent) {\r\n if (event.origin == null || event.origin === '' || event.origin !== (this.connectorLink as any).origin ||\r\n event.data == null || typeof (event.data) !== 'string') {\r\n return false;\r\n }\r\n\r\n return event.data.indexOf('success|') === 0 || event.data.indexOf('error|') === 0 ||\r\n event.data.indexOf('info|') === 0;\r\n }\r\n}\r\n","
\n
\n
\n

{{'createAccount' | i18n}}

\n
\n
\n \n {{'createOrganizationCreatePersonalAccount' | i18n}}\n \n
\n \n \n {{'emailAddressDesc' | i18n}}\n
\n
\n \n \n {{'yourNameDesc' | i18n}}\n
\n
\n \n
\n
\n \n \n
\n
\n \n
\n
\n
\n {{'masterPassDesc' | i18n}}\n
\n
\n \n
\n \n \n
\n
\n
\n \n \n {{'masterPassHintDesc' | i18n}}\n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n \n {{'submitAgreePolicies' | i18n}}\n {{'termsOfService' | i18n}},\n {{'privacyPolicy' | i18n}}\n \n
\n
\n
\n
\n
\n","import { Router } from '@angular/router';\r\n\r\nimport { KeysRequest } from '../../models/request/keysRequest';\r\nimport { RegisterRequest } from '../../models/request/registerRequest';\r\n\r\nimport { ApiService } from '../../abstractions/api.service';\r\nimport { AuthService } from '../../abstractions/auth.service';\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PasswordGenerationService } from '../../abstractions/passwordGeneration.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { StateService } from '../../abstractions/state.service';\r\n\r\nimport { KdfType } from '../../enums/kdfType';\r\n\r\nexport class RegisterComponent {\r\n name: string = '';\r\n email: string = '';\r\n masterPassword: string = '';\r\n confirmMasterPassword: string = '';\r\n hint: string = '';\r\n showPassword: boolean = false;\r\n formPromise: Promise;\r\n masterPasswordScore: number;\r\n\r\n protected successRoute = 'login';\r\n private masterPasswordStrengthTimeout: any;\r\n\r\n constructor(protected authService: AuthService, protected router: Router,\r\n protected i18nService: I18nService, protected cryptoService: CryptoService,\r\n protected apiService: ApiService, protected stateService: StateService,\r\n protected platformUtilsService: PlatformUtilsService,\r\n protected passwordGenerationService: PasswordGenerationService) { }\r\n\r\n get masterPasswordScoreWidth() {\r\n return this.masterPasswordScore == null ? 0 : (this.masterPasswordScore + 1) * 20;\r\n }\r\n\r\n get masterPasswordScoreColor() {\r\n switch (this.masterPasswordScore) {\r\n case 4:\r\n return 'success';\r\n case 3:\r\n return 'primary';\r\n case 2:\r\n return 'warning';\r\n default:\r\n return 'danger';\r\n }\r\n }\r\n\r\n get masterPasswordScoreText() {\r\n switch (this.masterPasswordScore) {\r\n case 4:\r\n return this.i18nService.t('strong');\r\n case 3:\r\n return this.i18nService.t('good');\r\n case 2:\r\n return this.i18nService.t('weak');\r\n default:\r\n return this.masterPasswordScore != null ? this.i18nService.t('weak') : null;\r\n }\r\n }\r\n\r\n async submit() {\r\n if (this.email == null || this.email === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('emailRequired'));\r\n return;\r\n }\r\n if (this.email.indexOf('@') === -1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidEmail'));\r\n return;\r\n }\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n if (this.masterPassword.length < 8) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassLength'));\r\n return;\r\n }\r\n if (this.masterPassword !== this.confirmMasterPassword) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassDoesntMatch'));\r\n return;\r\n }\r\n\r\n const strengthResult = this.passwordGenerationService.passwordStrength(this.masterPassword,\r\n this.getPasswordStrengthUserInput());\r\n if (strengthResult != null && strengthResult.score < 3) {\r\n const result = await this.platformUtilsService.showDialog(this.i18nService.t('weakMasterPasswordDesc'),\r\n this.i18nService.t('weakMasterPassword'), this.i18nService.t('yes'), this.i18nService.t('no'),\r\n 'warning');\r\n if (!result) {\r\n return;\r\n }\r\n }\r\n\r\n this.name = this.name === '' ? null : this.name;\r\n this.email = this.email.trim().toLowerCase();\r\n const kdf = KdfType.PBKDF2_SHA256;\r\n const useLowerKdf = this.platformUtilsService.isEdge() || this.platformUtilsService.isIE();\r\n const kdfIterations = useLowerKdf ? 10000 : 100000;\r\n const key = await this.cryptoService.makeKey(this.masterPassword, this.email, kdf, kdfIterations);\r\n const encKey = await this.cryptoService.makeEncKey(key);\r\n const hashedPassword = await this.cryptoService.hashPassword(this.masterPassword, key);\r\n const keys = await this.cryptoService.makeKeyPair(encKey[0]);\r\n const request = new RegisterRequest(this.email, this.name, hashedPassword,\r\n this.hint, encKey[1].encryptedString, kdf, kdfIterations);\r\n request.keys = new KeysRequest(keys[0], keys[1].encryptedString);\r\n const orgInvite = await this.stateService.get('orgInvitation');\r\n if (orgInvite != null && orgInvite.token != null && orgInvite.organizationUserId != null) {\r\n request.token = orgInvite.token;\r\n request.organizationUserId = orgInvite.organizationUserId;\r\n }\r\n\r\n try {\r\n this.formPromise = this.apiService.postRegister(request);\r\n await this.formPromise;\r\n this.platformUtilsService.eventTrack('Registered');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('newAccountCreated'));\r\n this.router.navigate([this.successRoute], { queryParams: { email: this.email } });\r\n } catch { }\r\n }\r\n\r\n togglePassword(confirmField: boolean) {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Register');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById(confirmField ? 'masterPasswordRetype' : 'masterPassword').focus();\r\n }\r\n\r\n updatePasswordStrength() {\r\n if (this.masterPasswordStrengthTimeout != null) {\r\n clearTimeout(this.masterPasswordStrengthTimeout);\r\n }\r\n this.masterPasswordStrengthTimeout = setTimeout(() => {\r\n const strengthResult = this.passwordGenerationService.passwordStrength(this.masterPassword,\r\n this.getPasswordStrengthUserInput());\r\n this.masterPasswordScore = strengthResult == null ? null : strengthResult.score;\r\n }, 300);\r\n }\r\n\r\n private getPasswordStrengthUserInput() {\r\n let userInput: string[] = [];\r\n const atPosition = this.email.indexOf('@');\r\n if (atPosition > -1) {\r\n userInput = userInput.concat(this.email.substr(0, atPosition).trim().toLowerCase().split(/[^A-Za-z0-9]/));\r\n }\r\n if (this.name != null && this.name !== '') {\r\n userInput = userInput.concat(this.name.trim().toLowerCase().split(' '));\r\n }\r\n return userInput;\r\n }\r\n}\r\n","import { KeysRequest } from './keysRequest';\n\nimport { KdfType } from '../../enums/kdfType';\n\nexport class RegisterRequest {\n name: string;\n email: string;\n masterPasswordHash: string;\n masterPasswordHint: string;\n key: string;\n keys: KeysRequest;\n token: string;\n organizationUserId: string;\n kdf: KdfType;\n kdfIterations: number;\n\n constructor(email: string, name: string, masterPasswordHash: string, masterPasswordHint: string, key: string,\n kdf: KdfType, kdfIterations: number) {\n this.name = name;\n this.email = email;\n this.masterPasswordHash = masterPasswordHash;\n this.masterPasswordHint = masterPasswordHint ? masterPasswordHint : null;\n this.key = key;\n this.kdf = kdf;\n this.kdfIterations = kdfIterations;\n }\n}\n","
\n
\n
\n

{{'passwordHint' | i18n}}

\n
\n
\n
\n \n \n {{'enterEmailToGetHint' | i18n}}\n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","import { Router } from '@angular/router';\r\n\r\nimport { PasswordHintRequest } from '../../models/request/passwordHintRequest';\r\n\r\nimport { ApiService } from '../../abstractions/api.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class HintComponent {\r\n email: string = '';\r\n formPromise: Promise;\r\n\r\n protected successRoute = 'login';\r\n protected onSuccessfulSubmit: () => void;\r\n\r\n constructor(protected router: Router, protected i18nService: I18nService,\r\n protected apiService: ApiService, protected platformUtilsService: PlatformUtilsService) { }\r\n\r\n async submit() {\r\n if (this.email == null || this.email === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('emailRequired'));\r\n return;\r\n }\r\n if (this.email.indexOf('@') === -1) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidEmail'));\r\n return;\r\n }\r\n\r\n try {\r\n this.formPromise = this.apiService.postPasswordHint(new PasswordHintRequest(this.email));\r\n await this.formPromise;\r\n this.platformUtilsService.eventTrack('Requested Hint');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('masterPassSent'));\r\n if (this.onSuccessfulSubmit != null) {\r\n this.onSuccessfulSubmit();\r\n } else if (this.router != null) {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n } catch { }\r\n }\r\n}\r\n","export class PasswordHintRequest {\r\n email: string;\r\n\r\n constructor(email: string) {\r\n this.email = email;\r\n }\r\n}\r\n","
\n
\n
\n

\n \n

\n

{{'yourVaultIsLocked' | i18n}}

\n
\n
\n
\n \n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n","import { Router } from '@angular/router';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { MessagingService } from '../../abstractions/messaging.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nexport class LockComponent {\r\n masterPassword: string = '';\r\n showPassword: boolean = false;\r\n\r\n protected successRoute: string = 'vault';\r\n protected onSuccessfulSubmit: () => void;\r\n\r\n constructor(protected router: Router, protected i18nService: I18nService,\r\n protected platformUtilsService: PlatformUtilsService, protected messagingService: MessagingService,\r\n protected userService: UserService, protected cryptoService: CryptoService) { }\r\n\r\n async submit() {\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('masterPassRequired'));\r\n return;\r\n }\r\n\r\n const email = await this.userService.getEmail();\r\n const kdf = await this.userService.getKdf();\r\n const kdfIterations = await this.userService.getKdfIterations();\r\n const key = await this.cryptoService.makeKey(this.masterPassword, email, kdf, kdfIterations);\r\n const keyHash = await this.cryptoService.hashPassword(this.masterPassword, key);\r\n const storedKeyHash = await this.cryptoService.getKeyHash();\r\n\r\n if (storedKeyHash != null && keyHash != null && storedKeyHash === keyHash) {\r\n await this.cryptoService.setKey(key);\r\n this.messagingService.send('unlocked');\r\n if (this.onSuccessfulSubmit != null) {\r\n this.onSuccessfulSubmit();\r\n } else if (this.router != null) {\r\n this.router.navigate([this.successRoute]);\r\n }\r\n } else {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidMasterPassword'));\r\n }\r\n }\r\n\r\n async logOut() {\r\n const confirmed = await this.platformUtilsService.showDialog(this.i18nService.t('logOutConfirmation'),\r\n this.i18nService.t('logOut'), this.i18nService.t('logOut'), this.i18nService.t('cancel'));\r\n if (confirmed) {\r\n this.messagingService.send('logout');\r\n }\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Unlock');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('masterPassword').focus();\r\n }\r\n}\r\n","
\n
\n \"Bitwarden\"\n

\n \n

\n
\n
\n","export class VerifyEmailRequest {\n userId: string;\n token: string;\n\n constructor(userId: string, token: string) {\n this.userId = userId;\n this.token = token;\n }\n}\n","
\n
\n \"Bitwarden\"\n

\n \n

\n
\n
\n
\n
\n
\n

{{'joinOrganization' | i18n}}

\n
\n
\n

\n {{orgName}}\n {{email}}\n

\n

{{'joinOrganizationDesc' | i18n}}

\n
\n \n
\n
\n
\n
\n
\n","export class OrganizationUserAcceptRequest {\n token: string;\n}\n","
\n
\n
\n

{{'recoverAccountTwoStep' | i18n}}

\n
\n
\n

{{'recoverAccountTwoStepDesc' | i18n}}\n {{'learnMore' | i18n}}\n

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class TwoFactorRecoveryRequest extends PasswordVerificationRequest {\n recoveryCode: string;\n email: string;\n}\n","
\n
\n
\n

{{'deleteAccount' | i18n}}

\n
\n
\n

{{'deleteRecoverDesc' | i18n}}

\n
\n \n \n
\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","export class DeleteRecoverRequest {\n email: string;\n}\n","
\n
\n
\n

{{'deleteAccount' | i18n}}

\n
\n
\n {{'deleteAccountWarning' | i18n}}\n

\n {{email}}\n

\n

{{'deleteRecoverConfirmDesc' | i18n}}

\n
\n
\n \n \n {{'cancel' | i18n}}\n \n
\n
\n
\n
\n
\n
\n","export class VerifyDeleteRecoverRequest {\n userId: string;\n token: string;\n\n constructor(userId: string, token: string) {\n this.userId = userId;\n this.token = token;\n }\n}\n","\r\n\r\n\r\n","
\n
\n
\n \n \n
\n
\n
\n

\n {{'myVault' | i18n}}\n \n \n \n

\n \n
\n \n \n
\n
\n
\n
\n {{'updateKeyTitle' | i18n}}\n
\n
\n

{{'updateEncryptionKeyShortDesc' | i18n}}

\n \n
\n
\n \n
\n
\n {{'updateBrowser' | i18n}}\n
\n
\n

{{'updateBrowserDesc' | i18n}}

\n \n {{'updateBrowser' | i18n}}\n \n
\n
\n
\n
\n {{'goPremium' | i18n}}\n
\n
\n

{{'premiumUpgradeUnlockFeatures' | i18n}}

\n \n {{'goPremium' | i18n}}\n \n
\n
\n
\n
\n {{'organizations' | i18n}}\n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n\n\n\n\n\n\n\n\n\n","
\n
\n {{'verifyEmail' | i18n}}\n
\n
\n

{{'verifyEmailDesc' | i18n}}

\n \n
\n
\n","
\n
\n {{'filters' | i18n}}\n \n \n \n
\n
\n \n \n

{{'types' | i18n}}

\n \n

\n \n

\n \n \n

\n {{'folders' | i18n}}\n \n \n \n

\n \n
\n \n

{{'collections' | i18n}}

\n \n
\n
\n
\n
\n","import {\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherType } from '../../enums/cipherType';\r\n\r\nimport { CollectionView } from '../../models/view/collectionView';\r\nimport { FolderView } from '../../models/view/folderView';\r\n\r\nimport { TreeNode } from '../../models/domain/treeNode';\r\n\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { FolderService } from '../../abstractions/folder.service';\r\nimport { StorageService } from '../../abstractions/storage.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { ConstantsService } from '../../services/constants.service';\r\n\r\nexport class GroupingsComponent {\r\n @Input() showFolders = true;\r\n @Input() showCollections = true;\r\n @Input() showFavorites = true;\r\n\r\n @Output() onAllClicked = new EventEmitter();\r\n @Output() onFavoritesClicked = new EventEmitter();\r\n @Output() onCipherTypeClicked = new EventEmitter();\r\n @Output() onFolderClicked = new EventEmitter();\r\n @Output() onAddFolder = new EventEmitter();\r\n @Output() onEditFolder = new EventEmitter();\r\n @Output() onCollectionClicked = new EventEmitter();\r\n\r\n folders: FolderView[];\r\n nestedFolders: Array>;\r\n collections: CollectionView[];\r\n nestedCollections: Array>;\r\n loaded: boolean = false;\r\n cipherType = CipherType;\r\n selectedAll: boolean = false;\r\n selectedFavorites: boolean = false;\r\n selectedType: CipherType = null;\r\n selectedFolder: boolean = false;\r\n selectedFolderId: string = null;\r\n selectedCollectionId: string = null;\r\n\r\n private collapsedGroupings: Set;\r\n private collapsedGroupingsKey: string;\r\n\r\n constructor(protected collectionService: CollectionService, protected folderService: FolderService,\r\n protected storageService: StorageService, protected userService: UserService) { }\r\n\r\n async load(setLoaded = true) {\r\n const userId = await this.userService.getUserId();\r\n this.collapsedGroupingsKey = ConstantsService.collapsedGroupingsKey + '_' + userId;\r\n const collapsedGroupings = await this.storageService.get(this.collapsedGroupingsKey);\r\n if (collapsedGroupings == null) {\r\n this.collapsedGroupings = new Set();\r\n } else {\r\n this.collapsedGroupings = new Set(collapsedGroupings);\r\n }\r\n\r\n await this.loadFolders();\r\n await this.loadCollections();\r\n\r\n if (setLoaded) {\r\n this.loaded = true;\r\n }\r\n }\r\n\r\n async loadCollections(organizationId?: string) {\r\n if (!this.showCollections) {\r\n return;\r\n }\r\n const collections = await this.collectionService.getAllDecrypted();\r\n if (organizationId != null) {\r\n this.collections = collections.filter((c) => c.organizationId === organizationId);\r\n } else {\r\n this.collections = collections;\r\n }\r\n this.nestedCollections = await this.collectionService.getAllNested(this.collections);\r\n }\r\n\r\n async loadFolders() {\r\n if (!this.showFolders) {\r\n return;\r\n }\r\n this.folders = await this.folderService.getAllDecrypted();\r\n this.nestedFolders = await this.folderService.getAllNested();\r\n }\r\n\r\n selectAll() {\r\n this.clearSelections();\r\n this.selectedAll = true;\r\n this.onAllClicked.emit();\r\n }\r\n\r\n selectFavorites() {\r\n this.clearSelections();\r\n this.selectedFavorites = true;\r\n this.onFavoritesClicked.emit();\r\n }\r\n\r\n selectType(type: CipherType) {\r\n this.clearSelections();\r\n this.selectedType = type;\r\n this.onCipherTypeClicked.emit(type);\r\n }\r\n\r\n selectFolder(folder: FolderView) {\r\n this.clearSelections();\r\n this.selectedFolder = true;\r\n this.selectedFolderId = folder.id;\r\n this.onFolderClicked.emit(folder);\r\n }\r\n\r\n addFolder() {\r\n this.onAddFolder.emit();\r\n }\r\n\r\n editFolder(folder: FolderView) {\r\n this.onEditFolder.emit(folder);\r\n }\r\n\r\n selectCollection(collection: CollectionView) {\r\n this.clearSelections();\r\n this.selectedCollectionId = collection.id;\r\n this.onCollectionClicked.emit(collection);\r\n }\r\n\r\n clearSelections() {\r\n this.selectedAll = false;\r\n this.selectedFavorites = false;\r\n this.selectedType = null;\r\n this.selectedFolder = false;\r\n this.selectedFolderId = null;\r\n this.selectedCollectionId = null;\r\n }\r\n\r\n collapse(grouping: FolderView | CollectionView, idPrefix = '') {\r\n if (grouping.id == null) {\r\n return;\r\n }\r\n const id = idPrefix + grouping.id;\r\n if (this.isCollapsed(grouping, idPrefix)) {\r\n this.collapsedGroupings.delete(id);\r\n } else {\r\n this.collapsedGroupings.add(id);\r\n }\r\n this.storageService.save(this.collapsedGroupingsKey, this.collapsedGroupings);\r\n }\r\n\r\n isCollapsed(grouping: FolderView | CollectionView, idPrefix = '') {\r\n return this.collapsedGroupings.has(idPrefix + grouping.id);\r\n }\r\n}\r\n","\n 0\">\n \n \n \n \n \n \n \n \n
\n \n \n \n \n {{c.name}}\n \n \n \n \n \n
\n {{c.subTitle}}\n
\n \n
\n
\n \n \n

{{'noItemsInList' | i18n}}

\n \n
\n
\n
\n","import {\n Directive,\n ElementRef,\n HostListener,\n Input,\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appFallbackSrc]',\r\n})\r\nexport class FallbackSrcDirective {\n @Input('appFallbackSrc') appFallbackSrc: string;\n\n constructor(private el: ElementRef) {\n }\n\n @HostListener('error') onError() {\r\n this.el.nativeElement.src = this.appFallbackSrc;\r\n }\r\n}\n","import {\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { SearchService } from '../../abstractions/search.service';\r\n\r\nimport { CipherView } from '../../models/view/cipherView';\r\n\r\nexport class CiphersComponent {\r\n @Input() activeCipherId: string = null;\r\n @Output() onCipherClicked = new EventEmitter();\r\n @Output() onCipherRightClicked = new EventEmitter();\r\n @Output() onAddCipher = new EventEmitter();\r\n @Output() onAddCipherOptions = new EventEmitter();\r\n\r\n loaded: boolean = false;\r\n ciphers: CipherView[] = [];\r\n searchText: string;\r\n searchPlaceholder: string = null;\r\n filter: (cipher: CipherView) => boolean = null;\r\n\r\n protected searchPending = false;\r\n\r\n private searchTimeout: any = null;\r\n\r\n constructor(protected searchService: SearchService) { }\r\n\r\n async load(filter: (cipher: CipherView) => boolean = null) {\r\n await this.applyFilter(filter);\r\n this.loaded = true;\r\n }\r\n\r\n async refresh() {\r\n this.loaded = false;\r\n this.ciphers = [];\r\n await this.load(this.filter);\r\n }\r\n\r\n async applyFilter(filter: (cipher: CipherView) => boolean = null) {\r\n this.filter = filter;\r\n await this.search(null);\r\n }\r\n\r\n async search(timeout: number = null) {\r\n this.searchPending = false;\r\n if (this.searchTimeout != null) {\r\n clearTimeout(this.searchTimeout);\r\n }\r\n if (timeout == null) {\r\n this.ciphers = await this.searchService.searchCiphers(this.searchText, this.filter);\r\n return;\r\n }\r\n this.searchPending = true;\r\n this.searchTimeout = setTimeout(async () => {\r\n this.ciphers = await this.searchService.searchCiphers(this.searchText, this.filter);\r\n this.searchPending = false;\r\n }, timeout);\r\n }\r\n\r\n selectCipher(cipher: CipherView) {\r\n this.onCipherClicked.emit(cipher);\r\n }\r\n\r\n rightClickCipher(cipher: CipherView) {\r\n this.onCipherRightClicked.emit(cipher);\r\n }\r\n\r\n addCipher() {\r\n this.onAddCipher.emit();\r\n }\r\n\r\n addCipherOptions() {\r\n this.onAddCipherOptions.emit();\r\n }\r\n}\r\n","export class AttachmentRequest {\r\n fileName: string;\r\n key: string;\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherType } from '../../enums/cipherType';\r\nimport { FieldType } from '../../enums/fieldType';\r\nimport { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { SecureNoteType } from '../../enums/secureNoteType';\r\nimport { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { AuditService } from '../../abstractions/audit.service';\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { FolderService } from '../../abstractions/folder.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { StateService } from '../../abstractions/state.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { Cipher } from '../../models/domain/cipher';\r\n\r\nimport { CardView } from '../../models/view/cardView';\r\nimport { CipherView } from '../../models/view/cipherView';\r\nimport { CollectionView } from '../../models/view/collectionView';\r\nimport { FieldView } from '../../models/view/fieldView';\r\nimport { FolderView } from '../../models/view/folderView';\r\nimport { IdentityView } from '../../models/view/identityView';\r\nimport { LoginUriView } from '../../models/view/loginUriView';\r\nimport { LoginView } from '../../models/view/loginView';\r\nimport { SecureNoteView } from '../../models/view/secureNoteView';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class AddEditComponent implements OnInit {\r\n @Input() folderId: string = null;\r\n @Input() cipherId: string;\r\n @Input() type: CipherType;\r\n @Input() collectionIds: string[];\r\n @Input() organizationId: string = null;\r\n @Output() onSavedCipher = new EventEmitter();\r\n @Output() onDeletedCipher = new EventEmitter();\r\n @Output() onCancelled = new EventEmitter();\r\n @Output() onEditAttachments = new EventEmitter();\r\n @Output() onShareCipher = new EventEmitter();\r\n @Output() onEditCollections = new EventEmitter();\r\n @Output() onGeneratePassword = new EventEmitter();\r\n\r\n editMode: boolean = false;\r\n cipher: CipherView;\r\n folders: FolderView[];\r\n collections: CollectionView[] = [];\r\n title: string;\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n checkPasswordPromise: Promise;\r\n showPassword: boolean = false;\r\n showCardCode: boolean = false;\r\n cipherType = CipherType;\r\n fieldType = FieldType;\r\n addFieldType: FieldType = FieldType.Text;\r\n typeOptions: any[];\r\n cardBrandOptions: any[];\r\n cardExpMonthOptions: any[];\r\n identityTitleOptions: any[];\r\n addFieldTypeOptions: any[];\r\n uriMatchOptions: any[];\r\n ownershipOptions: any[] = [];\r\n\r\n protected writeableCollections: CollectionView[];\r\n\r\n constructor(protected cipherService: CipherService, protected folderService: FolderService,\r\n protected i18nService: I18nService, protected platformUtilsService: PlatformUtilsService,\r\n protected auditService: AuditService, protected stateService: StateService,\r\n protected userService: UserService, protected collectionService: CollectionService) {\r\n this.typeOptions = [\r\n { name: i18nService.t('typeLogin'), value: CipherType.Login },\r\n { name: i18nService.t('typeCard'), value: CipherType.Card },\r\n { name: i18nService.t('typeIdentity'), value: CipherType.Identity },\r\n { name: i18nService.t('typeSecureNote'), value: CipherType.SecureNote },\r\n ];\r\n this.cardBrandOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: 'Visa', value: 'Visa' },\r\n { name: 'Mastercard', value: 'Mastercard' },\r\n { name: 'American Express', value: 'Amex' },\r\n { name: 'Discover', value: 'Discover' },\r\n { name: 'Diners Club', value: 'Diners Club' },\r\n { name: 'JCB', value: 'JCB' },\r\n { name: 'Maestro', value: 'Maestro' },\r\n { name: 'UnionPay', value: 'UnionPay' },\r\n { name: i18nService.t('other'), value: 'Other' },\r\n ];\r\n this.cardExpMonthOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: '01 - ' + i18nService.t('january'), value: '1' },\r\n { name: '02 - ' + i18nService.t('february'), value: '2' },\r\n { name: '03 - ' + i18nService.t('march'), value: '3' },\r\n { name: '04 - ' + i18nService.t('april'), value: '4' },\r\n { name: '05 - ' + i18nService.t('may'), value: '5' },\r\n { name: '06 - ' + i18nService.t('june'), value: '6' },\r\n { name: '07 - ' + i18nService.t('july'), value: '7' },\r\n { name: '08 - ' + i18nService.t('august'), value: '8' },\r\n { name: '09 - ' + i18nService.t('september'), value: '9' },\r\n { name: '10 - ' + i18nService.t('october'), value: '10' },\r\n { name: '11 - ' + i18nService.t('november'), value: '11' },\r\n { name: '12 - ' + i18nService.t('december'), value: '12' },\r\n ];\r\n this.identityTitleOptions = [\r\n { name: '-- ' + i18nService.t('select') + ' --', value: null },\r\n { name: i18nService.t('mr'), value: i18nService.t('mr') },\r\n { name: i18nService.t('mrs'), value: i18nService.t('mrs') },\r\n { name: i18nService.t('ms'), value: i18nService.t('ms') },\r\n { name: i18nService.t('dr'), value: i18nService.t('dr') },\r\n ];\r\n this.addFieldTypeOptions = [\r\n { name: i18nService.t('cfTypeText'), value: FieldType.Text },\r\n { name: i18nService.t('cfTypeHidden'), value: FieldType.Hidden },\r\n { name: i18nService.t('cfTypeBoolean'), value: FieldType.Boolean },\r\n ];\r\n this.uriMatchOptions = [\r\n { name: i18nService.t('defaultMatchDetection'), value: null },\r\n { name: i18nService.t('baseDomain'), value: UriMatchType.Domain },\r\n { name: i18nService.t('host'), value: UriMatchType.Host },\r\n { name: i18nService.t('startsWith'), value: UriMatchType.StartsWith },\r\n { name: i18nService.t('regEx'), value: UriMatchType.RegularExpression },\r\n { name: i18nService.t('exact'), value: UriMatchType.Exact },\r\n { name: i18nService.t('never'), value: UriMatchType.Never },\r\n ];\r\n }\r\n\r\n async ngOnInit() {\r\n await this.init();\r\n }\r\n\r\n async init() {\r\n const myEmail = await this.userService.getEmail();\r\n this.ownershipOptions.push({ name: myEmail, value: null });\r\n const orgs = await this.userService.getAllOrganizations();\r\n orgs.sort(Utils.getSortFunction(this.i18nService, 'name')).forEach((o) => {\r\n if (o.enabled && o.status === OrganizationUserStatusType.Confirmed) {\r\n this.ownershipOptions.push({ name: o.name, value: o.id });\r\n }\r\n });\r\n this.writeableCollections = await this.loadCollections();\r\n }\r\n\r\n async load() {\r\n this.editMode = this.cipherId != null;\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editItem');\r\n } else {\r\n this.title = this.i18nService.t('addItem');\r\n }\r\n\r\n this.cipher = await this.stateService.get('addEditCipher');\r\n await this.stateService.remove('addEditCipher');\r\n if (this.cipher == null) {\r\n if (this.editMode) {\r\n const cipher = await this.loadCipher();\r\n this.cipher = await cipher.decrypt();\r\n } else {\r\n this.cipher = new CipherView();\r\n this.cipher.organizationId = this.organizationId == null ? null : this.organizationId;\r\n this.cipher.folderId = this.folderId;\r\n this.cipher.type = this.type == null ? CipherType.Login : this.type;\r\n this.cipher.login = new LoginView();\r\n this.cipher.login.uris = [new LoginUriView()];\r\n this.cipher.card = new CardView();\r\n this.cipher.identity = new IdentityView();\r\n this.cipher.secureNote = new SecureNoteView();\r\n this.cipher.secureNote.type = SecureNoteType.Generic;\r\n\r\n await this.organizationChanged();\r\n if (this.collectionIds != null && this.collectionIds.length > 0 && this.collections.length > 0) {\r\n this.collections.forEach((c) => {\r\n if (this.collectionIds.indexOf(c.id) > -1) {\r\n (c as any).checked = true;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n this.folders = await this.folderService.getAllDecrypted();\r\n }\r\n\r\n async submit(): Promise {\r\n if (this.cipher.name == null || this.cipher.name === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('nameRequired'));\r\n return false;\r\n }\r\n\r\n if (!this.editMode && this.cipher.type === CipherType.Login &&\r\n this.cipher.login.uris != null && this.cipher.login.uris.length === 1 &&\r\n (this.cipher.login.uris[0].uri == null || this.cipher.login.uris[0].uri === '')) {\r\n this.cipher.login.uris = null;\r\n }\r\n\r\n if (!this.editMode && this.cipher.organizationId != null) {\r\n this.cipher.collectionIds = this.collections == null ? [] :\r\n this.collections.filter((c) => (c as any).checked).map((c) => c.id);\r\n }\r\n\r\n const cipher = await this.encryptCipher();\r\n try {\r\n this.formPromise = this.saveCipher(cipher);\r\n await this.formPromise;\r\n this.cipher.id = cipher.id;\r\n this.platformUtilsService.eventTrack(this.editMode ? 'Edited Cipher' : 'Added Cipher');\r\n this.platformUtilsService.showToast('success', null,\r\n this.i18nService.t(this.editMode ? 'editedItem' : 'addedItem'));\r\n this.onSavedCipher.emit(this.cipher);\r\n return true;\r\n } catch { }\r\n\r\n return false;\r\n }\r\n\r\n addUri() {\r\n if (this.cipher.type !== CipherType.Login) {\r\n return;\r\n }\r\n\r\n if (this.cipher.login.uris == null) {\r\n this.cipher.login.uris = [];\r\n }\r\n\r\n this.cipher.login.uris.push(new LoginUriView());\r\n }\r\n\r\n removeUri(uri: LoginUriView) {\r\n if (this.cipher.type !== CipherType.Login || this.cipher.login.uris == null) {\r\n return;\r\n }\r\n\r\n const i = this.cipher.login.uris.indexOf(uri);\r\n if (i > -1) {\r\n this.cipher.login.uris.splice(i, 1);\r\n }\r\n }\r\n\r\n addField() {\r\n if (this.cipher.fields == null) {\r\n this.cipher.fields = [];\r\n }\r\n\r\n const f = new FieldView();\r\n f.type = this.addFieldType;\r\n this.cipher.fields.push(f);\r\n }\r\n\r\n removeField(field: FieldView) {\r\n const i = this.cipher.fields.indexOf(field);\r\n if (i > -1) {\r\n this.cipher.fields.splice(i, 1);\r\n }\r\n }\r\n\r\n cancel() {\r\n this.onCancelled.emit(this.cipher);\r\n }\r\n\r\n attachments() {\r\n this.onEditAttachments.emit(this.cipher);\r\n }\r\n\r\n share() {\r\n this.onShareCipher.emit(this.cipher);\r\n }\r\n\r\n editCollections() {\r\n this.onEditCollections.emit(this.cipher);\r\n }\r\n\r\n async delete(): Promise {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteItemConfirmation'), this.i18nService.t('deleteItem'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.deleteCipher();\r\n await this.deletePromise;\r\n this.platformUtilsService.eventTrack('Deleted Cipher');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('deletedItem'));\r\n this.onDeletedCipher.emit(this.cipher);\r\n } catch { }\r\n\r\n return true;\r\n }\r\n\r\n async generatePassword(): Promise {\r\n if (this.cipher.login != null && this.cipher.login.password != null && this.cipher.login.password.length) {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('overwritePasswordConfirmation'), this.i18nService.t('overwritePassword'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'));\r\n if (!confirmed) {\r\n return false;\r\n }\r\n }\r\n\r\n this.onGeneratePassword.emit();\r\n return true;\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Password on Edit');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('loginPassword').focus();\r\n }\r\n\r\n toggleCardCode() {\r\n this.platformUtilsService.eventTrack('Toggled CardCode on Edit');\r\n this.showCardCode = !this.showCardCode;\r\n document.getElementById('cardCode').focus();\r\n }\r\n\r\n toggleFieldValue(field: FieldView) {\r\n const f = (field as any);\r\n f.showValue = !f.showValue;\r\n }\r\n\r\n toggleUriOptions(uri: LoginUriView) {\r\n const u = (uri as any);\r\n u.showOptions = u.showOptions == null && uri.match != null ? false : !u.showOptions;\r\n }\r\n\r\n loginUriMatchChanged(uri: LoginUriView) {\r\n const u = (uri as any);\r\n u.showOptions = u.showOptions == null ? true : u.showOptions;\r\n }\r\n\r\n async organizationChanged() {\r\n if (this.writeableCollections != null) {\r\n this.writeableCollections.forEach((c) => (c as any).checked = false);\r\n }\r\n if (this.cipher.organizationId != null) {\r\n this.collections = this.writeableCollections.filter((c) => c.organizationId === this.cipher.organizationId);\r\n const org = await this.userService.getOrganization(this.cipher.organizationId);\r\n if (org != null) {\r\n this.cipher.organizationUseTotp = org.useTotp;\r\n }\r\n } else {\r\n this.collections = [];\r\n }\r\n }\r\n\r\n async checkPassword() {\r\n if (this.checkPasswordPromise != null) {\r\n return;\r\n }\r\n\r\n if (this.cipher.login == null || this.cipher.login.password == null || this.cipher.login.password === '') {\r\n return;\r\n }\r\n\r\n this.platformUtilsService.eventTrack('Check Password');\r\n this.checkPasswordPromise = this.auditService.passwordLeaked(this.cipher.login.password);\r\n const matches = await this.checkPasswordPromise;\r\n this.checkPasswordPromise = null;\r\n\r\n if (matches > 0) {\r\n this.platformUtilsService.showToast('warning', null,\r\n this.i18nService.t('passwordExposed', matches.toString()));\r\n } else {\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('passwordSafe'));\r\n }\r\n }\r\n\r\n protected async loadCollections() {\r\n const allCollections = await this.collectionService.getAllDecrypted();\r\n return allCollections.filter((c) => !c.readOnly);\r\n }\r\n\r\n protected loadCipher() {\r\n return this.cipherService.get(this.cipherId);\r\n }\r\n\r\n protected encryptCipher() {\r\n return this.cipherService.encrypt(this.cipher);\r\n }\r\n\r\n protected saveCipher(cipher: Cipher) {\r\n return this.cipherService.saveWithServer(cipher);\r\n }\r\n\r\n protected deleteCipher() {\r\n return this.cipherService.deleteWithServer(this.cipher.id);\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { Cipher } from '../../models/domain/cipher';\r\n\r\nimport { AttachmentView } from '../../models/view/attachmentView';\r\nimport { CipherView } from '../../models/view/cipherView';\r\n\r\nexport class AttachmentsComponent implements OnInit {\r\n @Input() cipherId: string;\r\n @Output() onUploadedAttachment = new EventEmitter();\r\n @Output() onDeletedAttachment = new EventEmitter();\r\n @Output() onReuploadedAttachment = new EventEmitter();\r\n\r\n cipher: CipherView;\r\n cipherDomain: Cipher;\r\n hasUpdatedKey: boolean;\r\n canAccessAttachments: boolean;\r\n formPromise: Promise;\r\n deletePromises: { [id: string]: Promise; } = {};\r\n reuploadPromises: { [id: string]: Promise; } = {};\r\n\r\n constructor(protected cipherService: CipherService, protected i18nService: I18nService,\r\n protected cryptoService: CryptoService, protected userService: UserService,\r\n protected platformUtilsService: PlatformUtilsService, protected win: Window) { }\r\n\r\n async ngOnInit() {\r\n this.cipherDomain = await this.loadCipher();\r\n this.cipher = await this.cipherDomain.decrypt();\r\n\r\n this.hasUpdatedKey = await this.cryptoService.hasEncKey();\r\n const canAccessPremium = await this.userService.canAccessPremium();\r\n this.canAccessAttachments = canAccessPremium || this.cipher.organizationId != null;\r\n\r\n if (!this.canAccessAttachments) {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('premiumRequiredDesc'), this.i18nService.t('premiumRequired'),\r\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'));\r\n if (confirmed) {\r\n this.platformUtilsService.launchUri('https://vault.bitwarden.com/#/?premium=purchase');\r\n }\r\n } else if (!this.hasUpdatedKey) {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('updateKey'), this.i18nService.t('featureUnavailable'),\r\n this.i18nService.t('learnMore'), this.i18nService.t('cancel'), 'warning');\r\n if (confirmed) {\r\n this.platformUtilsService.launchUri('https://help.bitwarden.com/article/update-encryption-key/');\r\n }\r\n }\r\n }\r\n\r\n async submit() {\r\n if (!this.hasUpdatedKey) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('updateKey'));\r\n return;\r\n }\r\n\r\n const fileEl = document.getElementById('file') as HTMLInputElement;\r\n const files = fileEl.files;\r\n if (files == null || files.length === 0) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('selectFile'));\r\n return;\r\n }\r\n\r\n if (files[0].size > 104857600) { // 100 MB\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('maxFileSize'));\r\n return;\r\n }\r\n\r\n try {\r\n this.formPromise = this.saveCipherAttachment(files[0]);\r\n this.cipherDomain = await this.formPromise;\r\n this.cipher = await this.cipherDomain.decrypt();\r\n this.platformUtilsService.eventTrack('Added Attachment');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('attachmentSaved'));\r\n this.onUploadedAttachment.emit();\r\n } catch { }\r\n\r\n // reset file input\r\n // ref: https://stackoverflow.com/a/20552042\r\n fileEl.type = '';\r\n fileEl.type = 'file';\r\n fileEl.value = '';\r\n }\r\n\r\n async delete(attachment: AttachmentView) {\r\n if (this.deletePromises[attachment.id] != null) {\r\n return;\r\n }\r\n\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteAttachmentConfirmation'), this.i18nService.t('deleteAttachment'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return;\r\n }\r\n\r\n try {\r\n this.deletePromises[attachment.id] = this.deleteCipherAttachment(attachment.id);\r\n await this.deletePromises[attachment.id];\r\n this.platformUtilsService.eventTrack('Deleted Attachment');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('deletedAttachment'));\r\n const i = this.cipher.attachments.indexOf(attachment);\r\n if (i > -1) {\r\n this.cipher.attachments.splice(i, 1);\r\n }\r\n } catch { }\r\n\r\n this.deletePromises[attachment.id] = null;\r\n this.onDeletedAttachment.emit();\r\n }\r\n\r\n async download(attachment: AttachmentView) {\r\n const a = (attachment as any);\r\n if (a.downloading) {\r\n return;\r\n }\r\n\r\n if (!this.canAccessAttachments) {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('premiumRequired'),\r\n this.i18nService.t('premiumRequiredDesc'));\r\n return;\r\n }\r\n\r\n a.downloading = true;\r\n const response = await fetch(new Request(attachment.url, { cache: 'no-cache' }));\r\n if (response.status !== 200) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n a.downloading = false;\r\n return;\r\n }\r\n\r\n try {\r\n const buf = await response.arrayBuffer();\r\n const key = attachment.key != null ? attachment.key :\r\n await this.cryptoService.getOrgKey(this.cipher.organizationId);\r\n const decBuf = await this.cryptoService.decryptFromBytes(buf, key);\r\n this.platformUtilsService.saveFile(this.win, decBuf, null, attachment.fileName);\r\n } catch (e) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n }\r\n\r\n a.downloading = false;\r\n }\r\n\r\n protected async reuploadCipherAttachment(attachment: AttachmentView, admin: boolean) {\r\n const a = (attachment as any);\r\n if (attachment.key != null || a.downloading || this.reuploadPromises[attachment.id] != null) {\r\n return;\r\n }\r\n\r\n try {\r\n this.reuploadPromises[attachment.id] = Promise.resolve().then(async () => {\r\n // 1. Download\r\n a.downloading = true;\r\n const response = await fetch(new Request(attachment.url, { cache: 'no-cache' }));\r\n if (response.status !== 200) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n a.downloading = false;\r\n return;\r\n }\r\n\r\n try {\r\n // 2. Resave\r\n const buf = await response.arrayBuffer();\r\n const key = attachment.key != null ? attachment.key :\r\n await this.cryptoService.getOrgKey(this.cipher.organizationId);\r\n const decBuf = await this.cryptoService.decryptFromBytes(buf, key);\r\n this.cipherDomain = await this.cipherService.saveAttachmentRawWithServer(\r\n this.cipherDomain, attachment.fileName, decBuf, admin);\r\n this.cipher = await this.cipherDomain.decrypt();\r\n\r\n // 3. Delete old\r\n this.deletePromises[attachment.id] = this.deleteCipherAttachment(attachment.id);\r\n await this.deletePromises[attachment.id];\r\n const foundAttachment = this.cipher.attachments.filter((a2) => a2.id === attachment.id);\r\n if (foundAttachment.length > 0) {\r\n const i = this.cipher.attachments.indexOf(foundAttachment[0]);\r\n if (i > -1) {\r\n this.cipher.attachments.splice(i, 1);\r\n }\r\n }\r\n\r\n this.platformUtilsService.eventTrack('Reuploaded Attachment');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('attachmentSaved'));\r\n this.onReuploadedAttachment.emit();\r\n } catch (e) {\r\n this.platformUtilsService.showToast('error', null, this.i18nService.t('errorOccurred'));\r\n }\r\n\r\n a.downloading = false;\r\n });\r\n await this.reuploadPromises[attachment.id];\r\n } catch { }\r\n }\r\n\r\n protected loadCipher() {\r\n return this.cipherService.get(this.cipherId);\r\n }\r\n\r\n protected saveCipherAttachment(file: File) {\r\n return this.cipherService.saveAttachmentWithServer(this.cipherDomain, file);\r\n }\r\n\r\n protected deleteCipherAttachment(attachmentId: string) {\r\n return this.cipherService.deleteAttachmentWithServer(this.cipher.id, attachmentId);\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { CipherView } from '../../models/view/cipherView';\r\nimport { CollectionView } from '../../models/view/collectionView';\r\n\r\nimport { Cipher } from '../../models/domain/cipher';\r\n\r\nexport class CollectionsComponent implements OnInit {\r\n @Input() cipherId: string;\r\n @Output() onSavedCollections = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n cipher: CipherView;\r\n collectionIds: string[];\r\n collections: CollectionView[] = [];\r\n\r\n protected cipherDomain: Cipher;\r\n\r\n constructor(protected collectionService: CollectionService, protected platformUtilsService: PlatformUtilsService,\r\n protected i18nService: I18nService, protected cipherService: CipherService) { }\r\n\r\n async ngOnInit() {\r\n await this.load();\r\n }\r\n\r\n async load() {\r\n this.cipherDomain = await this.loadCipher();\r\n this.collectionIds = this.loadCipherCollections();\r\n this.cipher = await this.cipherDomain.decrypt();\r\n this.collections = await this.loadCollections();\r\n\r\n this.collections.forEach((c) => (c as any).checked = false);\r\n if (this.collectionIds != null) {\r\n this.collections.forEach((c) => {\r\n (c as any).checked = this.collectionIds != null && this.collectionIds.indexOf(c.id) > -1;\r\n });\r\n }\r\n }\r\n\r\n async submit() {\r\n this.cipherDomain.collectionIds = this.collections\r\n .filter((c) => !!(c as any).checked)\r\n .map((c) => c.id);\r\n try {\r\n this.formPromise = this.saveCollections();\r\n await this.formPromise;\r\n this.onSavedCollections.emit();\r\n this.platformUtilsService.eventTrack('Edited Cipher Collections');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('editedItem'));\r\n } catch { }\r\n }\r\n\r\n protected loadCipher() {\r\n return this.cipherService.get(this.cipherId);\r\n }\r\n\r\n protected loadCipherCollections() {\r\n return this.cipherDomain.collectionIds;\r\n }\r\n\r\n protected async loadCollections() {\r\n const allCollections = await this.collectionService.getAllDecrypted();\r\n return allCollections.filter((c) => !c.readOnly && c.organizationId === this.cipher.organizationId);\r\n }\r\n\r\n protected saveCollections() {\r\n return this.cipherService.saveCollectionsWithServer(this.cipherDomain);\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { FolderService } from '../../abstractions/folder.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { FolderView } from '../../models/view/folderView';\r\n\r\nexport class FolderAddEditComponent implements OnInit {\r\n @Input() folderId: string;\r\n @Output() onSavedFolder = new EventEmitter();\r\n @Output() onDeletedFolder = new EventEmitter();\r\n\r\n editMode: boolean = false;\r\n folder: FolderView = new FolderView();\r\n title: string;\r\n formPromise: Promise;\r\n deletePromise: Promise;\r\n\r\n constructor(protected folderService: FolderService, protected i18nService: I18nService,\r\n protected platformUtilsService: PlatformUtilsService) { }\r\n\r\n async ngOnInit() {\r\n this.editMode = this.folderId != null;\r\n\r\n if (this.editMode) {\r\n this.editMode = true;\r\n this.title = this.i18nService.t('editFolder');\r\n const folder = await this.folderService.get(this.folderId);\r\n this.folder = await folder.decrypt();\r\n } else {\r\n this.title = this.i18nService.t('addFolder');\r\n }\r\n }\r\n\r\n async submit(): Promise {\r\n if (this.folder.name == null || this.folder.name === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('nameRequired'));\r\n return false;\r\n }\r\n\r\n try {\r\n const folder = await this.folderService.encrypt(this.folder);\r\n this.formPromise = this.folderService.saveWithServer(folder);\r\n await this.formPromise;\r\n this.platformUtilsService.eventTrack(this.editMode ? 'Edited Folder' : 'Added Folder');\r\n this.platformUtilsService.showToast('success', null,\r\n this.i18nService.t(this.editMode ? 'editedFolder' : 'addedFolder'));\r\n this.onSavedFolder.emit(this.folder);\r\n return true;\r\n } catch { }\r\n\r\n return false;\r\n }\r\n\r\n async delete(): Promise {\r\n const confirmed = await this.platformUtilsService.showDialog(\r\n this.i18nService.t('deleteFolderConfirmation'), this.i18nService.t('deleteFolder'),\r\n this.i18nService.t('yes'), this.i18nService.t('no'), 'warning');\r\n if (!confirmed) {\r\n return false;\r\n }\r\n\r\n try {\r\n this.deletePromise = this.folderService.deleteWithServer(this.folder.id);\r\n await this.deletePromise;\r\n this.platformUtilsService.eventTrack('Deleted Folder');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('deletedFolder'));\r\n this.onDeletedFolder.emit(this.folder);\r\n } catch { }\r\n\r\n return true;\r\n }\r\n}\r\n","import {\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CipherService } from '../../abstractions/cipher.service';\r\nimport { CollectionService } from '../../abstractions/collection.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\nimport { UserService } from '../../abstractions/user.service';\r\n\r\nimport { Organization } from '../../models/domain/organization';\r\nimport { CipherView } from '../../models/view/cipherView';\r\nimport { CollectionView } from '../../models/view/collectionView';\r\n\r\nimport { Utils } from '../../misc/utils';\r\n\r\nexport class ShareComponent implements OnInit {\r\n @Input() cipherId: string;\r\n @Input() organizationId: string;\r\n @Output() onSharedCipher = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n cipher: CipherView;\r\n collections: CollectionView[] = [];\r\n organizations: Organization[] = [];\r\n\r\n protected writeableCollections: CollectionView[] = [];\r\n\r\n constructor(protected collectionService: CollectionService, protected platformUtilsService: PlatformUtilsService,\r\n protected i18nService: I18nService, protected userService: UserService,\r\n protected cipherService: CipherService) { }\r\n\r\n async ngOnInit() {\r\n await this.load();\r\n }\r\n\r\n async load() {\r\n const allCollections = await this.collectionService.getAllDecrypted();\r\n this.writeableCollections = allCollections.map((c) => c).filter((c) => !c.readOnly)\r\n .sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n const orgs = await this.userService.getAllOrganizations();\r\n this.organizations = orgs.sort(Utils.getSortFunction(this.i18nService, 'name'));\r\n\r\n const cipherDomain = await this.cipherService.get(this.cipherId);\r\n this.cipher = await cipherDomain.decrypt();\r\n if (this.organizationId == null && this.organizations.length > 0) {\r\n this.organizationId = this.organizations[0].id;\r\n }\r\n this.filterCollections();\r\n }\r\n\r\n filterCollections() {\r\n this.writeableCollections.forEach((c) => (c as any).checked = false);\r\n if (this.organizationId == null || this.writeableCollections.length === 0) {\r\n this.collections = [];\r\n } else {\r\n this.collections = this.writeableCollections.filter((c) => c.organizationId === this.organizationId);\r\n }\r\n }\r\n\r\n async submit() {\r\n const cipherDomain = await this.cipherService.get(this.cipherId);\r\n const cipherView = await cipherDomain.decrypt();\r\n\r\n const checkedCollectionIds = this.collections.filter((c) => (c as any).checked).map((c) => c.id);\r\n try {\r\n this.formPromise = this.cipherService.shareWithServer(cipherView, this.organizationId,\r\n checkedCollectionIds).then(async () => {\r\n this.onSharedCipher.emit();\r\n this.platformUtilsService.eventTrack('Shared Cipher');\r\n this.platformUtilsService.showToast('success', null, this.i18nService.t('sharedItem'));\r\n });\r\n await this.formPromise;\r\n } catch { }\r\n }\r\n\r\n get canSave() {\r\n if (this.collections != null) {\r\n for (let i = 0; i < this.collections.length; i++) {\r\n if ((this.collections[i] as any).checked) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n}\r\n","\n","
\r\n

{{'myAccount' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'changeEmail' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'changeMasterPassword' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'encKeySettings' | i18n}}

\r\n
\r\n\r\n
\r\n

{{'dangerZone' | i18n}}

\r\n
\r\n
\r\n
\r\n

{{'dangerZoneDesc' | i18n}}

\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n","
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n
\n

\n {{'yourAccountsFingerprint' | i18n}}:\n \n
\n {{fingerprint}}\n

\n
\n
\n \n
\n","export class UpdateProfileRequest {\n name: string;\n masterPasswordHint: string;\n culture = 'en-US'; // deprecated\n\n constructor(name: string, masterPasswordHint: string) {\n this.name = name;\n this.masterPasswordHint = masterPasswordHint ? masterPasswordHint : null;\n }\n}\n","
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n
\n

{{'changeEmailDesc' | i18n : newEmail}}

\n {{'loggedOutWarning' | i18n}}\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n","import { EmailTokenRequest } from './emailTokenRequest';\n\nexport class EmailRequest extends EmailTokenRequest {\n newMasterPasswordHash: string;\n token: string;\n key: string;\n}\n","{{'loggedOutWarning' | i18n}}\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n
\n
\n \n
\n","{{'loggedOutWarning' | i18n}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'kdfIterationsDesc' | i18n : (100000 | number)}}

\r\n {{'warning' | i18n}}: {{'kdfIterationsWarning' | i18n : (50000 | number)}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { PasswordRequest } from './passwordRequest';\r\n\r\nimport { KdfType } from '../../enums/kdfType';\r\n\r\nexport class KdfRequest extends PasswordRequest {\r\n kdf: KdfType;\r\n kdfIterations: number;\r\n}\r\n","
\n

{{'options' | i18n}}

\n
\n

{{'optionsDesc' | i18n}}

\n
\n
\n
\n
\n \n \n {{'lockOptionsDesc' | i18n}}\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n \n {{'languageDesc' | i18n}}\n
\n
\n
\n
\n
\n \n \n \n \n \n
\n {{'disableIconsDesc' | i18n}}\n
\n
\n
\n \n \n \n \n \n
\n {{'enableGravatarsDesc' | i18n}}\n
\n \n
\n","
\n

{{'domainRules' | i18n}}

\n
\n

{{'domainRulesDesc' | i18n}}

\n
\n

{{'customEqDomains' | i18n}}

\n

\n \n

\n \n
\n
\n \n \n
\n \n
\n \n {{'newCustomDomainDesc' | i18n}}\n
\n \n

{{'globalEqDomains' | i18n}}

\n

\n \n

\n 0\">\n \n \n \n \n \n \n
{{d.domains}}\n \n
\n \n
\n","export class UpdateDomainsRequest {\n equivalentDomains: string[][];\n excludedGlobalEquivalentDomains: number[];\n}\n","
\n

{{'twoStepLogin' | i18n}}

\n
\n

{{'twoStepLoginDesc' | i18n}}

\n

{{'twoStepLoginOrganizationDesc' | i18n}}

\n\n

{{'twoStepLoginRecoveryWarning' | i18n}}

\n \n
\n

\n {{'providers' | i18n}}\n \n \n \n

\n\n\n\n\n\n\n\n\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorAuthenticatorRequest extends PasswordVerificationRequest {\n token: string;\n key: string;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nexport class TwoFactorProviderRequest extends PasswordVerificationRequest {\n type: TwoFactorProviderType;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorDuoRequest extends PasswordVerificationRequest {\n integrationKey: string;\n secretKey: string;\n host: string;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorEmailRequest extends PasswordVerificationRequest {\n token: string;\n email: string;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorU2fDeleteRequest extends PasswordVerificationRequest {\n id: number;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorU2fRequest extends PasswordVerificationRequest {\n deviceResponse: string;\n name: string;\n id: number;\n}\n","import { PasswordVerificationRequest } from './passwordVerificationRequest';\n\nexport class UpdateTwoFactorYubioOtpRequest extends PasswordVerificationRequest {\n key1: string;\n key2: string;\n key3: string;\n key4: string;\n key5: string;\n nfc: boolean;\n}\n","
\n

{{'goPremium' | i18n}}

\n
\n\n {{'alreadyPremiumFromOrg' | i18n}}\n\n\n

{{'premiumUpgradeUnlockFeatures' | i18n}}

\n
    \n
  • \n \n {{'premiumSignUpStorage' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpTwoStep' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpReports' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpTotp' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpSupport' | i18n}}\n
  • \n
  • \n \n {{'premiumSignUpFuture' | i18n}}\n
  • \n
\n

{{'premiumPrice' | i18n : (premiumPrice | currency:'$')}}

\n \n {{'purchasePremium' | i18n}}\n \n
\n\n

{{'uploadLicenseFilePremium' | i18n}}

\n
\n
\n \n \n {{'licenseFileDesc' | i18n : 'bitwarden_premium_license.json'}}\n
\n \n
\n
\n
\n

{{'addons' | i18n}}

\n
\n
\n \n \n {{'additionalStorageIntervalDesc' | i18n : '1 GB' : (storageGbPrice | currency:'$') : ('year' | i18n)}}\n
\n
\n

{{'summary' | i18n}}

\n {{'premiumMembership' | i18n}}: {{premiumPrice | currency:'$'}}\n
{{'additionalStorageGb' | i18n}}: {{additionalStorage || 0}} GB × {{storageGbPrice | currency:'$'}} = {{additionalStorageTotal\n | currency:'$'}}\n
\n
\n {{'total' | i18n}}: {{total | currency:'USD $'}} /{{'year' | i18n}}\n
\n {{'paymentChargedAnnually' | i18n}}\n

{{'paymentInformation' | i18n}}

\n \n \n
\n","
\n

\n {{'billingAndLicensing' | i18n}}\n \n \n \n

\n
\n\n\n {{'subscriptionCanceled' | i18n}}\n \n

{{'subscriptionPendingCanceled' | i18n}}

\n \n
\n
\n
{{'subscription' | i18n}}
\n
{{'premiumMembership' | i18n}}
\n
\n
\n
{{'expiration' | i18n}}
\n
{{billing.expiration | date:'mediumDate'}}
\n
{{'neverExpires' | i18n}}
\n
\n
\n
\n
\n
{{'status' | i18n}}
\n
\n {{(subscription && subscription.status) || '-'}}\n {{'pendingCancellation' | i18n}}\n
\n
{{'nextCharge' | i18n}}
\n
{{nextInvoice ? ((nextInvoice.date | date: 'mediumDate') + ', ' + (nextInvoice.amount | currency:'$')) :\n '-'}}\n
\n
\n
\n
\n {{'details' | i18n}}\n \n \n \n \n \n \n \n
\n {{i.name}} {{i.quantity > 1 ? '×' + i.quantity : ''}} @ {{i.amount | currency:'$'}}\n \n {{(i.quantity * i.amount) | currency:'$'}} /{{i.interval | i18n}}\n
\n
\n
\n \n
\n \n \n {{'manageSubscription' | i18n}}\n \n
\n
\n
\n

{{'updateLicense' | i18n}}

\n \n
\n
\n
\n \n
\n \n \n
\n

{{'storage' | i18n}}

\n

{{'subscriptionStorage' | i18n : billing.maxStorageGb || 0 : billing.storageName || '0 MB'}}

\n
\n
{{(storagePercentage / 100) | percent}}
\n
\n \n
\n
\n \n \n
\n \n
\n
\n

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n

\n \n {{paymentSource.description}}\n

\n \n \n \n

{{'charges' | i18n}}

\n

{{'noCharges' | i18n}}

\n \n \n \n \n \n \n \n \n \n
{{c.createdDate | date:'mediumDate'}}{{c.paymentSource ? c.paymentSource.description : '-'}}{{c.status}}{{c.amount | currency:'$'}}
\n * {{'chargesStatement' | i18n : 'BITWARDEN'}}\n
\n
\n","export class StorageRequest {\n storageGbAdjustment: number;\n}\n","export class PaymentRequest {\n paymentToken: string;\n}\n","
\n

{{'newOrganization' | i18n}}

\n
\n

{{'newOrganizationDesc' | i18n}}

\n\n

{{'uploadLicenseFileOrg' | i18n}}

\n
\n
\n \n \n {{'licenseFileDesc' | i18n : 'bitwarden_organization_license.json'}}\n
\n \n
\n
\n
\n

{{'generalInformation' | i18n}}

\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n \n
\n
\n

{{'chooseYourPlan' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n \n

{{'users' | i18n}}

\n
\n
\n \n \n {{'userSeatsHowManyDesc' | i18n}}\n
\n
\n
\n

{{'addons' | i18n}}

\n
\n
\n \n \n {{'userSeatsAdditionalDesc' | i18n : plans[plan].baseSeats : (plans[plan].seatPrice | currency:'$')}}\n
\n
\n
\n
\n \n \n {{'additionalStorageIntervalDesc' | i18n : '1 GB' : (storageGb.price | currency:'$') : ('month' | i18n)}}\n
\n
\n
\n
\n
\n \n \n
\n {{'premiumAccessDesc' | i18n : (3.33 | currency:'$') : ('month' | i18n)}}\n
\n
\n

{{'summary' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n
\n {{'total' | i18n}}: {{total | currency:'USD $'}} /{{interval | i18n}}\n
\n {{'paymentChargedWithTrial' | i18n : (interval | i18n) }}\n

{{'paymentInformation' | i18n}}

\n \n
\n
\n \n
\n
\n","import { PlanType } from '../../enums/planType';\n\nexport class OrganizationCreateRequest {\n name: string;\n businessName: string;\n billingEmail: string;\n planType: PlanType;\n key: string;\n paymentToken: string;\n additionalSeats: number;\n additionalStorageGb: number;\n premiumAccessAddon: boolean;\n collectionName: string;\n country: string;\n}\n","\n","
\n

{{'importData' | i18n}}

\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n \n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/export-your-data/\n \n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/import-from-lastpass/\n \n \n Using the KeePassX desktop application, navigate to \"Database\" → \"Export to CSV file\" and save the CSV file.\n \n \n In the Avira web vault, go to \"Settings\" → \"My Data\" → \"Export data\" and save the CSV file.\n \n \n In the Blur web vault, click your username at the top and go to \"Settings\" → \"Export Data\", then click \"Export CSV\"\n for your \"Accounts\".\n \n \n Using the SaveInCloud desktop application, navigate to \"File\" → \"Export\" → \"As XML\" and save the XML file.\n \n \n Using the Padlock desktop application, click the hamburger icon in the top left corner and navigate to \"Settings\" →\n \"Export\" button and save the file \"As CSV\".\n \n \n Using the KeePass 2 desktop application, navigate to \"File\" → \"Export\" and select the \"KeePass XML (2.x)\" option.\n \n \n Using the Universal Password Manager desktop application, navigate to \"Database\" → \"Export\" and save the CSV file.\n \n \n Using the SaferPass browser extension, click the hamburger icon in the top left corner and navigate to \"Settings\". Click\n the \"Export accounts\" button to save the CSV file.\n \n \n Using the Meldium web vault, navigate to \"Settings\". Locate the \"Export data\" function and click \"Show me my data\" to save\n the CSV file.\n \n \n Log into the Keeper web vault (keepersecurity.com/vault). Navigate to \"Backup\" (top right) and find the \"Export to .csv File\"\n option. Click \"Export Now\" to save the CSV file.\n \n \n \n The process is exactly the same as importing from Google Chrome.\n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/import-from-chrome/\n \n \n Use the\n FF Password Exporter application to export your passwords to a CSV file.\n \n \n See detailed instructions on our help site at\n https://help.bitwarden.com/article/import-from-1password/.\n \n \n Using the Password Dragon desktop application, navigate to \"File\" → \"Export\" → \"To XML\". In the dialog that pops\n up select \"All Rows\" and check all fields. Click the \"Export\" button and save the XML file.\n \n \n Using the Enpass desktop application, navigate to \"File\" → \"Export\" → \"As CSV\". Select \"OK\" to the warning alert\n and save the CSV file. Note that the importer only supports files exported while Enpass is set to the English\n language, so adjust your settings accordingly.\n \n \n Using the Enpass 6 desktop application, click the menu button and navigate to \"File\" → \"Export\".\n Select the \".json\" file format option and save the JSON file.\n \n \n Using the Password Safe desktop application, navigate to \"File\" → \"Export To\" → \"XML format...\" and save the XML\n file.\n \n \n Using the Dashlane desktop application, navigate to \"File\" → \"Export\" → \"Unsecured archive (readable) in JSON format\"\n and save the JSON file.\n \n \n Using the mSecure desktop application, navigate to \"File\" → \"Export\" → \"CSV File...\" and save the CSV file.\n \n \n Using the Sticky Password desktop application, navigate to \"Menu\" (top right) → \"Export\" → \"Export all\". Select\n the unencrypted format XML option and save the XML file.\n \n \n Using the True Key desktop application, click the gear icon (top right) and then navigate to \"App Settings\". Click the \"Export\"\n button, enter your password and save the CSV file.\n \n \n Log into the Clipperz web application (clipperz.is/app). Click the hamburger menu icon in the top right to expand the navigation\n bar. Navigate to \"Data\" → \"Export\". Click the \"download HTML+JSON\" button to save the HTML file.\n \n \n Using the RoboForm Editor desktop application, navigate to \"RoboForm\" (top left) → \"Options\" → \"Account & Data\"\n and click the \"Export\" button. Select all of your data, change the \"Format\" to \"CSV file\" and then click the\n \"Export\" button to save the CSV file. Note: RoboForm only allows you to export Logins. Other items will not be\n exported.\n \n \n Log into the Passbolt web vault and navigate to the \"Passwords\" listing. Select all of the passwords you would like to export\n and click the \"Export\" button at the top of the listing. Choose the \"csv (lastpass)\" export format and click\n the \"Export\" button.\n \n \n Using the Ascendo DataVault desktop application, navigate to \"Tools\" → \"Export\". In the dialog that pops up, select\n the \"All Items (DVX, CSV)\" option. Click the \"Ok\" button to save the CSV file.\n \n \n Using the Password Boss desktop application, navigate to \"File\" → \"Export data\" → \"Password Boss JSON - not encrypted\"\n and save the JSON file.\n \n \n Log into the Zoho web vault (vault.zoho.com). Navigate to \"Tools\" → \"Export Secrets\". Select \"All Secrets\" and click\n the \"Zoho Vault Format CSV\" button. Highlight and copy the data from the textarea. Open a text editor like Notepad\n and paste the data. Save the data from the text editor as\n zoho_export.csv.\n \n \n Using the SplashID Safe desktop application, click on the SplashID blue lock logo in the top right corner. Navigate to \"Export\"\n → \"Export as CSV\" and save the CSV file.\n \n \n Using the PassKeep mobile app, navigate to \"Backup/Restore\". Locate the \"CSV Backup/Restore\" section and click \"Backup to\n CSV\" to save the CSV file.\n \n \n Make sure you have python-keyring and python-gnomekeyring installed. Save the\n GNOME Keyring Import/Export python script to your desktop as\n pw_helper.py. Open terminal and run\n chmod +rx Desktop/pw_helper.py and then\n python Desktop/pw_helper.py export Desktop/my_passwords.json. Then upload the resulting\n my_passwords.json file here to Bitwarden.\n \n \n Using the Password Agent desktop application navigate to \"File\" → \"Export\", select the \"Fields to export\" button and\n check all of the fields, change the \"Output format\" to \"CSV\", and then click the \"Start\" button to save the CSV\n file.\n \n \n Log into the Passpack website vault and navigate to \"Settings\" → \"Export\", then click the \"Download\" button to save\n the CSV file.\n \n \n Open your Passman vault and click on \"Settings\" in the bottom left corner. In the \"Settings\" window switch to the\n \"Export credentials\" tab and choose \"JSON\" as the export type. Enter your vault's passphrase and click the \"Export\"\n button to save the JSON file.\n \n \n Open the Avast Passwords desktop application and navigate to \"Settings\" → \"Import/export data\". Select the\n \"Export\" button for the \"Export to CSV file\" option to save the CSV file.\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n","
\n
\n

{{'exportVault' | i18n}}

\n
\n

{{'exportMasterPassword' | i18n}}

\n {{'exportWarningDesc' | i18n}}\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n
\n","import {\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { CryptoService } from '../../abstractions/crypto.service';\r\nimport { ExportService } from '../../abstractions/export.service';\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nexport class ExportComponent {\r\n @Output() onSaved = new EventEmitter();\r\n\r\n formPromise: Promise;\r\n masterPassword: string;\r\n format: 'json' | 'csv' = 'json';\r\n showPassword = false;\r\n\r\n constructor(protected cryptoService: CryptoService, protected i18nService: I18nService,\r\n protected platformUtilsService: PlatformUtilsService, protected exportService: ExportService,\r\n protected win: Window) { }\r\n\r\n async submit() {\r\n if (this.masterPassword == null || this.masterPassword === '') {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidMasterPassword'));\r\n return;\r\n }\r\n\r\n const keyHash = await this.cryptoService.hashPassword(this.masterPassword, null);\r\n const storedKeyHash = await this.cryptoService.getKeyHash();\r\n if (storedKeyHash != null && keyHash != null && storedKeyHash === keyHash) {\r\n try {\r\n this.formPromise = this.getExportData();\r\n const data = await this.formPromise;\r\n this.platformUtilsService.eventTrack('Exported Data');\r\n this.downloadFile(data);\r\n this.saved();\r\n } catch { }\r\n } else {\r\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\r\n this.i18nService.t('invalidMasterPassword'));\r\n }\r\n }\r\n\r\n togglePassword() {\r\n this.platformUtilsService.eventTrack('Toggled Master Password on Export');\r\n this.showPassword = !this.showPassword;\r\n document.getElementById('masterPassword').focus();\r\n }\r\n\r\n protected saved() {\r\n this.onSaved.emit();\r\n }\r\n\r\n protected getExportData() {\r\n return this.exportService.getExport(this.format);\r\n }\r\n\r\n protected getFileName(prefix?: string) {\r\n return this.exportService.getFileName(prefix, this.format);\r\n }\r\n\r\n private downloadFile(csv: string): void {\r\n const fileName = this.getFileName();\r\n this.platformUtilsService.saveFile(this.win, csv, { type: 'text/plain' }, fileName);\r\n }\r\n}\r\n","
\n

{{'passwordGenerator' | i18n}}

\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n
\n\n","import {\n EventEmitter,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\n\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { PasswordGenerationService } from '../../abstractions/passwordGeneration.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nexport class PasswordGeneratorComponent implements OnInit {\n @Input() showSelect: boolean = false;\n @Output() onSelected = new EventEmitter();\n\n options: any = {};\n password: string = '-';\n showOptions = false;\n avoidAmbiguous = false;\n\n constructor(protected passwordGenerationService: PasswordGenerationService,\n protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,\n private win: Window) { }\n\n async ngOnInit() {\n this.options = await this.passwordGenerationService.getOptions();\n this.avoidAmbiguous = !this.options.ambiguous;\n this.options.type = this.options.type === 'passphrase' ? 'passphrase' : 'password';\n this.password = await this.passwordGenerationService.generatePassword(this.options);\n this.platformUtilsService.eventTrack('Generated Password');\n await this.passwordGenerationService.addHistory(this.password);\n }\n\n async sliderChanged() {\n this.saveOptions(false);\n await this.passwordGenerationService.addHistory(this.password);\n this.platformUtilsService.eventTrack('Regenerated Password');\n }\n\n async sliderInput() {\n this.normalizeOptions();\n this.password = await this.passwordGenerationService.generatePassword(this.options);\n }\n\n async saveOptions(regenerate: boolean = true) {\n this.normalizeOptions();\n await this.passwordGenerationService.saveOptions(this.options);\n\n if (regenerate) {\n await this.regenerate();\n }\n }\n\n async regenerate() {\n this.password = await this.passwordGenerationService.generatePassword(this.options);\n await this.passwordGenerationService.addHistory(this.password);\n this.platformUtilsService.eventTrack('Regenerated Password');\n }\n\n copy() {\n this.platformUtilsService.eventTrack('Copied Generated Password');\n const copyOptions = this.win != null ? { window: this.win } : null;\n this.platformUtilsService.copyToClipboard(this.password, copyOptions);\n this.platformUtilsService.showToast('info', null,\n this.i18nService.t('valueCopied', this.i18nService.t('password')));\n }\n\n select() {\n this.platformUtilsService.eventTrack('Selected Generated Password');\n this.onSelected.emit(this.password);\n }\n\n toggleOptions() {\n this.showOptions = !this.showOptions;\n }\n\n private normalizeOptions() {\n this.options.minLowercase = 0;\n this.options.minUppercase = 0;\n this.options.ambiguous = !this.avoidAmbiguous;\n\n if (!this.options.uppercase && !this.options.lowercase && !this.options.number && !this.options.special) {\n this.options.lowercase = true;\n if (this.win != null) {\n const lowercase = this.win.document.querySelector('#lowercase') as HTMLInputElement;\n if (lowercase) {\n lowercase.checked = true;\n }\n }\n }\n\n if (!this.options.length || this.options.length < 5) {\n this.options.length = 5;\n } else if (this.options.length > 128) {\n this.options.length = 128;\n }\n\n if (!this.options.minNumber) {\n this.options.minNumber = 0;\n } else if (this.options.minNumber > this.options.length) {\n this.options.minNumber = this.options.length;\n } else if (this.options.minNumber > 9) {\n this.options.minNumber = 9;\n }\n\n if (!this.options.minSpecial) {\n this.options.minSpecial = 0;\n } else if (this.options.minSpecial > this.options.length) {\n this.options.minSpecial = this.options.length;\n } else if (this.options.minSpecial > 9) {\n this.options.minSpecial = 9;\n }\n\n if (this.options.minSpecial + this.options.minNumber > this.options.length) {\n this.options.minSpecial = this.options.length - this.options.minNumber;\n }\n\n if (this.options.numWords == null || this.options.length < 3) {\n this.options.numWords = 3;\n } else if (this.options.numWords > 20) {\n this.options.numWords = 20;\n }\n\n if (this.options.wordSeparator != null && this.options.wordSeparator.length > 1) {\n this.options.wordSeparator = this.options.wordSeparator[0];\n }\n }\n}\n","import { OnInit } from '@angular/core';\r\n\r\nimport { I18nService } from '../../abstractions/i18n.service';\r\nimport { PasswordGenerationService } from '../../abstractions/passwordGeneration.service';\r\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\r\n\r\nimport { GeneratedPasswordHistory } from '../../models/domain/generatedPasswordHistory';\r\n\r\nexport class PasswordGeneratorHistoryComponent implements OnInit {\r\n history: GeneratedPasswordHistory[] = [];\r\n\r\n constructor(protected passwordGenerationService: PasswordGenerationService,\r\n protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,\r\n private win: Window) { }\r\n\r\n async ngOnInit() {\r\n this.history = await this.passwordGenerationService.getHistory();\r\n }\r\n\r\n clear() {\r\n this.history = [];\r\n this.passwordGenerationService.clear();\r\n }\r\n\r\n copy(password: string) {\r\n this.platformUtilsService.eventTrack('Copied Historical Password');\r\n const copyOptions = this.win != null ? { window: this.win } : null;\r\n this.platformUtilsService.copyToClipboard(password, copyOptions);\r\n this.platformUtilsService.showToast('info', null,\r\n this.i18nService.t('valueCopied', this.i18nService.t('password')));\r\n }\r\n}\r\n","
\r\n

{{'dataBreachReport' | i18n}}

\r\n
\r\n

{{'breachDesc' | i18n}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n {{'breachCheckUsernameEmail' | i18n}}\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{'reportError' | i18n}}...

\r\n \r\n \r\n {{'breachUsernameNotFound' | i18n : checkedUsername}}\r\n \r\n \r\n {{'breachUsernameFound' | i18n : checkedUsername : breachedAccounts.length}}\r\n \r\n
    \r\n
  • \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n

    {{a.title}}

    \r\n

    \r\n

    {{'compromisedData' | i18n}}:

    \r\n
      \r\n
    • {{d}}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{'website' | i18n}}
    \r\n
    {{a.domain}}
    \r\n
    {{'affectedUsers' | i18n}}
    \r\n
    {{a.pwnCount | number}}
    \r\n
    {{'breachOccurred' | i18n}}
    \r\n
    {{a.breachDate | date: 'mediumDate'}}
    \r\n
    {{'breachReported' | i18n}}
    \r\n
    {{a.addedDate | date: 'mediumDate'}}
    \r\n
    \r\n
    \r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n","
\n

\n {{'reusedPasswordsReport' | i18n}}\n \n \n \n

\n
\n

{{'reusedPasswordsReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noReusedPasswords' | i18n}}\n \n \n \n {{'reusedPasswordsFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{'reusedXTimes' | i18n : passwordUseMap.get(c.login.password)}}\n \n
\n
\n
\n\n","
\n

\n {{'unsecuredWebsitesReport' | i18n}}\n \n \n \n

\n
\n

{{'unsecuredWebsitesReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noUnsecuredWebsites' | i18n}}\n \n \n \n {{'unsecuredWebsitesFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n
\n
\n\n","
\n

\n {{'weakPasswordsReport' | i18n}}\n \n \n \n

\n
\n

{{'weakPasswordsReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noWeakPasswords' | i18n}}\n \n \n \n {{'weakPasswordsFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{passwordStrengthMap.get(c.id)[0] | i18n}}\n \n
\n
\n
\n\n","
\n

{{'exposedPasswordsReport' | i18n}}

\n
\n

{{'exposedPasswordsReportDesc' | i18n}}

\n\n
\n \n {{'noExposedPasswords' | i18n}}\n \n \n \n {{'exposedPasswordsFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{'exposedXTimes' | i18n : (exposedPasswordMap.get(c.id) | number)}}\n \n
\n
\n
\n\n","
\n

\n {{'inactive2faReport' | i18n}}\n \n \n \n

\n
\n

{{'inactive2faReportDesc' | i18n}}

\n
\n \n
\n
\n \n {{'noInactive2fa' | i18n}}\n \n \n \n {{'inactive2faFoundDesc' | i18n : (ciphers.length | number)}}\n \n \n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n \n \n
\n {{c.subTitle}}\n
\n \n {{'instructions' | i18n}}\n
\n
\n
\n\n","\n
\n
\n
\n \n
\n {{organization.name}}\n {{'organization' | i18n}}\n
\n
\n
\n \n {{'organizationIsDisabled' | i18n}}\n
\n
\n
\n \n
\n
\n\n\n","
\n
\n
\n \n \n
\n
\n
\n

\n {{'vault' | i18n}}\n \n \n \n

\n \n
\n \n \n
\n
\n
\n\n\n\n\n","export enum EventType {\r\n User_LoggedIn = 1000,\r\n User_ChangedPassword = 1001,\r\n User_Updated2fa = 1002,\r\n User_Disabled2fa = 1003,\r\n User_Recovered2fa = 1004,\r\n User_FailedLogIn = 1005,\r\n User_FailedLogIn2fa = 1006,\r\n\r\n Cipher_Created = 1100,\r\n Cipher_Updated = 1101,\r\n Cipher_Deleted = 1102,\r\n Cipher_AttachmentCreated = 1103,\r\n Cipher_AttachmentDeleted = 1104,\r\n Cipher_Shared = 1105,\r\n Cipher_UpdatedCollections = 1106,\r\n\r\n Collection_Created = 1300,\r\n Collection_Updated = 1301,\r\n Collection_Deleted = 1302,\r\n\r\n Group_Created = 1400,\r\n Group_Updated = 1401,\r\n Group_Deleted = 1402,\r\n\r\n OrganizationUser_Invited = 1500,\r\n OrganizationUser_Confirmed = 1501,\r\n OrganizationUser_Updated = 1502,\r\n OrganizationUser_Removed = 1503,\r\n OrganizationUser_UpdatedGroups = 1504,\r\n\r\n Organization_Updated = 1600,\r\n Organization_PurgedVault = 1601,\r\n}\r\n","\n","\n","
\n

{{'collections' | i18n}}

\n
\n
\n \n \n
\n \n
\n
\n\n\n

{{'noCollectionsInList' | i18n}}

\n \n \n \n \n \n \n \n
\n {{c.name}}\n \n \n
\n
\n\n\n","
\n

{{'eventLogs' | i18n}}

\n
\n
\n \n \n -\n \n \n
\n \n
\n
\n\n\n

{{'noEventsInList' | i18n}}

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{'timestamp' | i18n}}\n {{'device' | i18n}}\n {{'user' | i18n}}{{'event' | i18n}}
{{e.date | date:'medium'}}\n \n \n {{e.userName}}\n
\n \n
\n","
\n

{{'groups' | i18n}}

\n
\n
\n \n \n
\n \n
\n
\n\n\n

{{'noGroupsInList' | i18n}}

\n \n \n \n \n \n \n \n
\n {{g.name}}\n \n \n
\n
\n\n\n","import { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class GroupRequest {\n name: string;\n accessAll: boolean;\n externalId: string;\n collections: SelectionReadOnlyRequest[] = [];\n}\n","
\n

{{'people' | i18n}}

\n
\n
\n \n \n \n
\n
\n \n \n
\n \n
\n
\n\n\n

{{'noUsersInList' | i18n}}

\n \n \n {{'usersNeedConfirmed' | i18n}}\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n {{u.email}}\n {{'invited' | i18n}}\n {{'accepted' | i18n}}\n {{u.name}}\n \n \n \n {{'owner' | i18n}}\n {{'admin' | i18n}}\n {{'manager' | i18n}}\n {{'user' | i18n}}\n \n \n
\n
\n
\n\n\n\n\n","import { OrganizationUserType } from '../../enums/organizationUserType';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class OrganizationUserInviteRequest {\n emails: string[] = [];\n type: OrganizationUserType;\n accessAll: boolean;\n collections: SelectionReadOnlyRequest[] = [];\n}\n","import { OrganizationUserType } from '../../enums/organizationUserType';\n\nimport { SelectionReadOnlyRequest } from './selectionReadOnlyRequest';\n\nexport class OrganizationUserUpdateRequest {\n type: OrganizationUserType;\n accessAll: boolean;\n collections: SelectionReadOnlyRequest[] = [];\n}\n","export class OrganizationUserUpdateGroupsRequest {\n groupIds: string[] = [];\n}\n","
\n \n
\n","
\n

{{'myOrganization' | i18n}}

\n
\n
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n
\n
\n \n
\n
\n

{{'taxInformation' | i18n}}

\n
\n

{{'taxInformationDesc' | i18n}}

\n\n {{'contactSupport' | i18n}}\n\n
\n

{{'dangerZone' | i18n}}

\n
\n
\n
\n

{{'dangerZoneDesc' | i18n}}

\n \n \n
\n
\n\n\n","export class OrganizationUpdateRequest {\n name: string;\n businessName: string;\n billingEmail: string;\n}\n","
\n

\n {{'billingAndLicensing' | i18n}}\n \n \n \n

\n
\n\n\n {{'subscriptionCanceled' | i18n}}\n \n

{{'subscriptionPendingCanceled' | i18n}}

\n \n
\n
\n
{{'billingPlan' | i18n}}
\n
{{billing.plan}}
\n
{{'expiration' | i18n}}
\n
\n {{billing.expiration | date:'mediumDate'}}\n \n \n {{'licenseIsExpired' | i18n}}\n \n
\n
{{'neverExpires' | i18n}}
\n
\n
\n
\n
\n
{{'billingPlan' | i18n}}
\n
{{billing.plan}}
\n \n
{{'status' | i18n}}
\n
\n {{subscription.status || '-'}}\n {{'pendingCancellation' | i18n}}\n
\n
{{'nextCharge' | i18n}}
\n
{{nextInvoice ? ((nextInvoice.date | date: 'mediumDate') + ', ' + (nextInvoice.amount | currency:'$'))\n : '-'}}\n
\n
\n
\n
\n
\n {{'details' | i18n}}\n \n \n \n \n \n \n \n
\n {{i.name}} {{i.quantity > 1 ? '×' + i.quantity : ''}} @ {{i.amount | currency:'$'}}\n \n {{(i.quantity * i.amount) | currency:'$'}} /{{i.interval | i18n}}\n
\n
\n
\n \n
\n \n \n {{'manageSubscription' | i18n}}\n \n
\n
\n
\n

{{'updateLicense' | i18n}}

\n \n
\n
\n
\n \n
\n \n \n \n
\n

{{'userSeats' | i18n}}

\n

{{'subscriptionUserSeats' | i18n : billing.seats}}

\n \n
\n
\n \n \n
\n \n
\n
\n

{{'storage' | i18n}}

\n

{{'subscriptionStorage' | i18n : billing.maxStorageGb || 0 : billing.storageName || '0 MB'}}

\n
\n
{{(storagePercentage / 100) | percent}}
\n
\n \n
\n
\n \n \n
\n \n
\n
\n

{{'paymentMethod' | i18n}}

\n

{{'noPaymentMethod' | i18n}}

\n \n \n

{{'verifyBankAccountDesc' | i18n}} {{'verifyBankAccountFailureWarning' | i18n}}

\n
\n \n
\n
\n
$0.
\n
\n \n
\n \n
\n
\n
$0.
\n
\n \n
\n \n
\n
\n

\n \n {{paymentSource.description}}\n

\n
\n \n \n \n

{{'charges' | i18n}}

\n

{{'noCharges' | i18n}}

\n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n {{c.createdDate | date:'mediumDate'}}{{c.paymentSource ? c.paymentSource.description : '-'}}{{c.status}}{{c.amount | currency:'$'}}
\n * {{'chargesStatement' | i18n : 'BITWARDEN'}}\n
\n
\n","
\n
\n

{{(add ? 'addSeats' : 'removeSeats') | i18n}}

\n
\n
\n \n \n
\n
\n
\n {{'total' | i18n}}: {{seatAdjustment || 0}} × {{seatPrice | currency:'$'}} = {{adjustedSeatTotal\n | currency:'$'}} /{{interval | i18n}}\n
\n \n \n \n {{(add ? 'seatsAddNote' : 'seatsRemoveNote') | i18n}}\n \n
\n
\n","export class SeatRequest {\n seatAdjustment: number;\n}\n","export class VerifyBankRequest {\n amount1: number;\n amount2: number;\n}\n","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n \n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n \n {{totpSec}}\n \n \n \n \n \n \n \n {{totpCodeFormatted}}\n \n
\n
\n
\n \n
\n
\n \n
\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n \n \n
\n
\n
\n
\n \n {{'newUri' | i18n}}\n \n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n
\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n

{{'customFields' | i18n}}

\n \n
\n
\n
\n \n \n \n \n
\n \n
\n
\n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n \n
\n \n
\n
\n
\n
\n \n {{'newCustomField' | i18n}}\n \n
\n
\n \n \n
\n
\n 1\">\n

{{'ownership' | i18n}}

\n
\n
\n \n \n
\n
\n
\n \n

{{'collections' | i18n}}

\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n
\n \n \n
\n
\n
\n \n
\n
\n {{'dateUpdated' | i18n}}:\n {{cipher.revisionDate | date:'medium'}}\n
\n
\n {{'datePasswordUpdated' | i18n}}:\n {{cipher.passwordRevisionDisplayDate | date:'medium'}}\n
\n
\n {{'passwordHistory' | i18n}}:\n \n {{cipher.passwordHistory.length}}\n \n
\n
\n
\n {{ph.lastUsedDate | date:'short'}} -\n {{ph.password}}\n
\n
\n
\n
\n
\n
\n \n \n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'attachments' | i18n}}\n {{cipher.name}}\n

\n \n
\n
\n \n \n \n \n \n \n \n \n
\n \n \n \n
\n {{a.fileName}}\n
\n \n \n \n
\n
\n {{a.sizeName}}\n
\n \n
\n

{{'newAttachment' | i18n}}

\n \n \n {{'maxFileSize' | i18n}}\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'deleteSelected' | i18n}}\n

\n \n
\n
\n {{'deleteSelectedItemsDesc' | i18n: cipherIds.length}}\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'moveSelected' | i18n}}\n

\n \n
\n
\n

{{'moveSelectedItemsDesc' | i18n: cipherIds.length}}

\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'shareSelected' | i18n}}\n

\n \n
\n
\n

{{'shareManyDesc' | i18n}}

\n

{{'shareSelectedItemsCountDesc' | i18n: this.ciphers.length : shareableCiphers.length : nonShareableCount}}

\n
\n \n \n
\n
\n

{{'collections' | i18n}}

\n
\n \n \n
\n
\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'collections' | i18n}}\n {{cipher.name}}\n

\n \n
\n
\n

{{'collectionsDesc' | i18n}}

\n
\n

{{'collections' | i18n}}

\n
\n \n \n
\n
\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'deauthorizeSessions' | i18n}}

\n \n
\n
\n

{{'deauthorizeSessionsDesc' | i18n}}

\n {{'deauthorizeSessionsWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'deleteAccount' | i18n}}

\n \n
\n
\n

{{'deleteAccountDesc' | i18n}}

\n {{'deleteAccountWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'deleteOrganization' | i18n}}

\n \n
\n
\n

{{'deleteOrganizationDesc' | i18n}}

\n {{'deleteOrganizationWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n \n \n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n \n
\n
\n
\n \n \n
\n \n

\n {{'groupAccess' | i18n}}\n
\n \n \n
\n

\n
\n {{'noGroupsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
 {{'name' | i18n}}{{'readOnly' | i18n}}
\n \n \n {{g.name}}\n \n \n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'eventLogs' | i18n}}\n {{name}}\n

\n \n
\n
\n \n
\n
\n
\n
\n \n \n -\n \n \n
\n \n
\n
\n
\n {{'noEventsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{'timestamp' | i18n}}\n {{'device' | i18n}}\n {{'user' | i18n}}{{'event' | i18n}}
{{e.date | date:'medium'}}\n \n \n {{e.userName}}\n
\n \n
\n
\n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'userAccess' | i18n}}\n {{entityName}}\n

\n \n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n {{'noUsersInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
  {{'name' | i18n}} {{'userType' | i18n}}{{'readOnly' |\n i18n}}
\n \n \n \n \n {{u.email}}\n {{'invited'\n | i18n}}\n {{'accepted'\n | i18n}}\n {{u.name}}\n \n \n \n {{'owner' | i18n}}\n {{'admin' | i18n}}\n {{'manager' | i18n}}\n {{'user' | i18n}}\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{title}}

\n \n
\n
\n \n
\n
\n
\n \n \n
\n
\n \n \n {{'externalIdGroupDesc' | i18n}}\n
\n

\n
\n {{'accessControl' | i18n}}\n
\n
\n \n \n
\n

\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
 {{'name' | i18n}}{{'readOnly' | i18n}}
\n \n \n {{c.name}}\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{title}}\n {{name}}\n

\n \n
\n
\n \n
\n
\n \n

{{'inviteUserDesc' | i18n}}

\n
\n \n \n {{'inviteMultipleEmailDesc' | i18n : '20'}}\n
\n
\n

{{'userType' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n

\n
\n {{'accessControl' | i18n}}\n
\n
\n \n \n
\n

\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
 {{'name' | i18n}}{{'readOnly' | i18n}}
\n \n \n {{c.name}}\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'confirmUser' | i18n}}\n {{name}}\n

\n \n
\n
\n

\n {{'fingerprintEnsureIntegrityVerify' | i18n}}\n \n {{'learnMore' | i18n}}\n

\n

{{fingerprint}}

\n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'groupAccess' | i18n}}\n {{name}}\n

\n \n
\n
\n \n
\n
\n

{{'groupAccessUserDesc' | i18n}}

\n
\n {{'noGroupsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{g.name}}\n
\n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'passwordHistory' | i18n}}

\n \n
\n
    \n
  • \n
    \n
    \n {{h.date | date:'medium'}}\n
    \n
    \n \n
    \n
  • \n
\n
\n {{'noPasswordsInList' | i18n}}\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'purgeVault' | i18n}}

\n \n
\n
\n

{{(organizationId ? 'purgeOrgVaultDesc' : 'purgeVaultDesc') | i18n}}

\n {{'purgeVaultWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'share' | i18n}}\n {{cipher.name}}\n

\n \n
\n
\n {{'noOrganizationsList' | i18n}}\n
\n
\n

{{'shareDesc' | i18n}}

\n
\n \n \n
\n
\n

{{'collections' | i18n}}

\n
\n \n \n
\n
\n
\n {{'noCollectionsInList' | i18n}}\n
\n \n \n \n \n \n \n \n
\n \n \n {{c.name}}\n
\n
\n
\n \n \n {{'newOrganization' | i18n}}\n \n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n {{'authenticatorAppTitle' | i18n}}\n

\n \n
\n \n \n
\n
\n \n \"\"\n

{{'twoStepAuthenticatorDesc' | i18n}}

\n

\n 1. {{'twoStepAuthenticatorDownloadApp' | i18n}}\n

\n
\n \n \n

{{'twoStepLoginProviderEnabled' | i18n}}

\n {{'twoStepAuthenticatorReaddDesc' | i18n}}\n
\n \"\"\n

{{'twoStepAuthenticatorNeedApp' | i18n}}

\n
\n \n

{{'twoStepAuthenticatorAppsRecommended' | i18n}}

\n

\n 2. {{'twoStepAuthenticatorScanCode' | i18n}}\n

\n
\n

\n
\n {{key}}\n

\n \n \n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n Duo\n

\n \n
\n \n \n
\n
\n \n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n \"\"\n {{'twoFactorDuoIntegrationKey' | i18n}}: {{ikey}}\n
\n {{'twoFactorDuoSecretKey' | i18n}}: {{skey}}\n
\n {{'twoFactorDuoApiHostname' | i18n}}: {{host}}\n
\n \n \"\"\n

{{'twoFactorDuoDesc' | i18n}}

\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n {{'emailTitle' | i18n}}\n

\n \n
\n \n \n
\n
\n \n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n {{'email' | i18n}}: {{email}}\n \n \n

\n {{'twoFactorEmailDesc' | i18n}}\n \"\"\n

\n
\n \n \n
\n
\n \n \n {{'verificationCodeEmailSent' | i18n : sentEmail}}\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'twoStepOptions' | i18n}}

\n \n
\n \n
\n \n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n {{'recoveryCodeTitle' | i18n}}\n

\n \n
\n \n \n \n
\n \n

{{'twoFactorRecoveryYourCode' | i18n}}:

\n {{code}}\n
\n \n {{'twoFactorRecoveryNoCode' | i18n}}\n \n
\n
\n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n FIDO U2F\n

\n \n
\n \n \n
\n
\n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n \n

{{'twoFactorU2fWarning' | i18n}}

\n
    \n
  • {{'twoFactorU2fSupportWeb' | i18n}}
  • \n
\n
\n \"\"\n
    \n
  • \n \n {{'u2fkeyX' | i18n : i + 1}}\n {{k.name}}\n \n 1 && k.configured\">\n \n -\n {{'remove' | i18n}}\n \n
  • \n
\n
\n

{{'twoFactorU2fAdd' | i18n}}:

\n
    \n
  1. {{'twoFactorU2fGiveName' | i18n}}
  2. \n
  3. {{'twoFactorU2fPlugInReadKey' | i18n}}
  4. \n
  5. {{'twoFactorU2fTouchButton' | i18n}}
  6. \n
  7. {{'twoFactorU2fSaveForm' | i18n}}
  8. \n
\n
\n
\n \n \n
\n
\n \n \n \n \n \n \n \n {{'twoFactorU2fWaiting' | i18n}}...\n \n \n \n {{'twoFactorU2fClickSave' | i18n}}\n \n \n \n {{'twoFactorU2fProblemReadingTryAgain' | i18n}}\n \n \n
\n
\n \n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

\n {{'twoStepLogin' | i18n}}\n YubiKey\n

\n \n
\n \n \n
\n
\n \n {{'twoStepLoginProviderEnabled' | i18n}}\n \n \n

{{'twoFactorYubikeyWarning' | i18n}}

\n
    \n
  • {{'twoFactorYubikeySupportUsb' | i18n}}
  • \n
  • {{'twoFactorYubikeySupportMobile' | i18n}}
  • \n
\n
\n \"\"\n

{{'twoFactorYubikeyAdd' | i18n}}:

\n
    \n
  1. {{'twoFactorYubikeyPlugIn' | i18n}}
  2. \n
  3. {{'twoFactorYubikeySelectKey' | i18n}}
  4. \n
  5. {{'twoFactorYubikeyTouchButton' | i18n}}
  6. \n
  7. {{'twoFactorYubikeySaveForm' | i18n}}
  8. \n
\n
\n
\n
\n \n \n
\n {{k.existingKey}}\n \n
\n
\n
\n {{'nfcSupport' | i18n}}\n
\n \n \n
\n {{'twoFactorYubikeySupportsNfcDesc' | i18n}}\n
\n
\n \n \n \n
\n
\n
\n
\n
\n","
\n
\n
\n
\n

{{'updateEncryptionKey' | i18n}}

\n \n
\n
\n

{{'updateEncryptionKeyShortDesc' | i18n}} {{'updateEncryptionKeyDesc' | i18n}}\n {{'learnMore' | i18n}}\n

\n {{'updateEncryptionKeyWarning' | i18n}}\n \n \n
\n
\n \n \n
\n
\n
\n
\n","\r\n\r\n","import {\r\n APP_INITIALIZER,\r\n LOCALE_ID,\r\n NgModule,\r\n} from '@angular/core';\r\n\r\nimport { ToasterModule } from 'angular2-toaster';\r\n\r\nimport { BroadcasterMessagingService } from '../../services/broadcasterMessaging.service';\r\nimport { HtmlStorageService } from '../../services/htmlStorage.service';\r\nimport { I18nService } from '../../services/i18n.service';\r\nimport { MemoryStorageService } from '../../services/memoryStorage.service';\r\nimport { WebPlatformUtilsService } from '../../services/webPlatformUtils.service';\r\n\r\nimport { EventService } from './event.service';\r\nimport { OrganizationGuardService } from './organization-guard.service';\r\nimport { OrganizationTypeGuardService } from './organization-type-guard.service';\r\nimport { RouterService } from './router.service';\r\nimport { UnauthGuardService } from './unauth-guard.service';\r\n\r\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\r\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\r\nimport { ValidationService } from 'jslib/angular/services/validation.service';\r\n\r\nimport { Analytics } from 'jslib/misc/analytics';\r\n\r\nimport { ApiService } from 'jslib/services/api.service';\r\nimport { AppIdService } from 'jslib/services/appId.service';\r\nimport { AuditService } from 'jslib/services/audit.service';\r\nimport { AuthService } from 'jslib/services/auth.service';\r\nimport { CipherService } from 'jslib/services/cipher.service';\r\nimport { CollectionService } from 'jslib/services/collection.service';\r\nimport { ConstantsService } from 'jslib/services/constants.service';\r\nimport { ContainerService } from 'jslib/services/container.service';\r\nimport { CryptoService } from 'jslib/services/crypto.service';\r\nimport { EnvironmentService } from 'jslib/services/environment.service';\r\nimport { ExportService } from 'jslib/services/export.service';\r\nimport { FolderService } from 'jslib/services/folder.service';\r\nimport { ImportService } from 'jslib/services/import.service';\r\nimport { LockService } from 'jslib/services/lock.service';\r\nimport { NotificationsService } from 'jslib/services/notifications.service';\r\nimport { PasswordGenerationService } from 'jslib/services/passwordGeneration.service';\r\nimport { SearchService } from 'jslib/services/search.service';\r\nimport { SettingsService } from 'jslib/services/settings.service';\r\nimport { StateService } from 'jslib/services/state.service';\r\nimport { SyncService } from 'jslib/services/sync.service';\r\nimport { TokenService } from 'jslib/services/token.service';\r\nimport { TotpService } from 'jslib/services/totp.service';\r\nimport { UserService } from 'jslib/services/user.service';\r\nimport { WebCryptoFunctionService } from 'jslib/services/webCryptoFunction.service';\r\n\r\nimport { ApiService as ApiServiceAbstraction } from 'jslib/abstractions/api.service';\r\nimport { AppIdService as AppIdServiceAbstraction } from 'jslib/abstractions/appId.service';\r\nimport { AuditService as AuditServiceAbstraction } from 'jslib/abstractions/audit.service';\r\nimport { AuthService as AuthServiceAbstraction } from 'jslib/abstractions/auth.service';\r\nimport { CipherService as CipherServiceAbstraction } from 'jslib/abstractions/cipher.service';\r\nimport { CollectionService as CollectionServiceAbstraction } from 'jslib/abstractions/collection.service';\r\nimport { CryptoService as CryptoServiceAbstraction } from 'jslib/abstractions/crypto.service';\r\nimport { CryptoFunctionService as CryptoFunctionServiceAbstraction } from 'jslib/abstractions/cryptoFunction.service';\r\nimport { EnvironmentService as EnvironmentServiceAbstraction } from 'jslib/abstractions/environment.service';\r\nimport { ExportService as ExportServiceAbstraction } from 'jslib/abstractions/export.service';\r\nimport { FolderService as FolderServiceAbstraction } from 'jslib/abstractions/folder.service';\r\nimport { I18nService as I18nServiceAbstraction } from 'jslib/abstractions/i18n.service';\r\nimport { ImportService as ImportServiceAbstraction } from 'jslib/abstractions/import.service';\r\nimport { LockService as LockServiceAbstraction } from 'jslib/abstractions/lock.service';\r\nimport { LogService as LogServiceAbstraction } from 'jslib/abstractions/log.service';\r\nimport { MessagingService as MessagingServiceAbstraction } from 'jslib/abstractions/messaging.service';\r\nimport { NotificationsService as NotificationsServiceAbstraction } from 'jslib/abstractions/notifications.service';\r\nimport {\r\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\r\n} from 'jslib/abstractions/passwordGeneration.service';\r\nimport { PlatformUtilsService as PlatformUtilsServiceAbstraction } from 'jslib/abstractions/platformUtils.service';\r\nimport { SearchService as SearchServiceAbstraction } from 'jslib/abstractions/search.service';\r\nimport { SettingsService as SettingsServiceAbstraction } from 'jslib/abstractions/settings.service';\r\nimport { StateService as StateServiceAbstraction } from 'jslib/abstractions/state.service';\r\nimport { StorageService as StorageServiceAbstraction } from 'jslib/abstractions/storage.service';\r\nimport { SyncService as SyncServiceAbstraction } from 'jslib/abstractions/sync.service';\r\nimport { TokenService as TokenServiceAbstraction } from 'jslib/abstractions/token.service';\r\nimport { TotpService as TotpServiceAbstraction } from 'jslib/abstractions/totp.service';\r\nimport { UserService as UserServiceAbstraction } from 'jslib/abstractions/user.service';\r\n\r\nconst i18nService = new I18nService(window.navigator.language, 'locales');\r\nconst stateService = new StateService();\r\nconst broadcasterService = new BroadcasterService();\r\nconst messagingService = new BroadcasterMessagingService(broadcasterService);\r\nconst platformUtilsService = new WebPlatformUtilsService(i18nService, messagingService);\r\nconst storageService: StorageServiceAbstraction = new HtmlStorageService(platformUtilsService);\r\nconst secureStorageService: StorageServiceAbstraction = new MemoryStorageService();\r\nconst cryptoFunctionService: CryptoFunctionServiceAbstraction = new WebCryptoFunctionService(window,\r\n platformUtilsService);\r\nconst cryptoService = new CryptoService(storageService,\r\n platformUtilsService.isDev() ? storageService : secureStorageService, cryptoFunctionService);\r\nconst tokenService = new TokenService(storageService);\r\nconst appIdService = new AppIdService(storageService);\r\nconst apiService = new ApiService(tokenService, platformUtilsService,\r\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\r\nconst userService = new UserService(tokenService, storageService);\r\nconst settingsService = new SettingsService(userService, storageService);\r\nexport let searchService: SearchService = null;\r\nconst cipherService = new CipherService(cryptoService, userService, settingsService,\r\n apiService, storageService, i18nService, () => searchService);\r\nconst folderService = new FolderService(cryptoService, userService, apiService, storageService,\r\n i18nService, cipherService);\r\nconst collectionService = new CollectionService(cryptoService, userService, storageService, i18nService);\r\nsearchService = new SearchService(cipherService, platformUtilsService);\r\nconst lockService = new LockService(cipherService, folderService, collectionService,\r\n cryptoService, platformUtilsService, storageService, messagingService, searchService, null);\r\nconst syncService = new SyncService(userService, apiService, settingsService,\r\n folderService, cipherService, cryptoService, collectionService, storageService, messagingService,\r\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\r\nconst passwordGenerationService = new PasswordGenerationService(cryptoService, storageService);\r\nconst totpService = new TotpService(storageService, cryptoFunctionService);\r\nconst containerService = new ContainerService(cryptoService);\r\nconst authService = new AuthService(cryptoService, apiService,\r\n userService, tokenService, appIdService, i18nService, platformUtilsService, messagingService);\r\nconst exportService = new ExportService(folderService, cipherService, apiService);\r\nconst importService = new ImportService(cipherService, folderService, apiService, i18nService, collectionService);\r\nconst notificationsService = new NotificationsService(userService, syncService, appIdService,\r\n apiService, cryptoService, async () => messagingService.send('logout', { expired: true }));\r\nconst environmentService = new EnvironmentService(apiService, storageService, notificationsService);\r\nconst auditService = new AuditService(cryptoFunctionService, apiService);\r\n\r\nconst analytics = new Analytics(window, () => platformUtilsService.isDev() || platformUtilsService.isSelfHost(),\r\n platformUtilsService, storageService, appIdService);\r\ncontainerService.attachToWindow(window);\r\n\r\nexport function initFactory(): Function {\r\n return async () => {\r\n await (storageService as HtmlStorageService).init();\r\n const isDev = platformUtilsService.isDev();\r\n if (!isDev && platformUtilsService.isSelfHost()) {\r\n environmentService.baseUrl = window.location.origin;\r\n } else {\r\n environmentService.notificationsUrl = isDev ? 'http://localhost:61840' :\r\n 'https://notifications.bitwarden.com'; // window.location.origin + '/notifications';\r\n }\r\n apiService.setUrls({\r\n base: isDev ? null : window.location.origin,\r\n api: isDev ? 'http://localhost:4000' : null,\r\n identity: isDev ? 'http://localhost:33656' : null,\r\n\r\n // Uncomment these (and comment out the above) if you want to target production\r\n // servers for local development.\r\n\r\n // base: null,\r\n // api: 'https://api.bitwarden.com',\r\n // identity: 'https://identity.bitwarden.com',\r\n });\r\n setTimeout(() => notificationsService.init(environmentService), 3000);\r\n\r\n lockService.init(true);\r\n const locale = await storageService.get(ConstantsService.localeKey);\r\n await i18nService.init(locale);\r\n authService.init();\r\n const htmlEl = window.document.documentElement;\r\n htmlEl.classList.add('locale_' + i18nService.translationLocale);\r\n let theme = await storageService.get(ConstantsService.themeKey);\r\n if (theme == null) {\r\n theme = 'light';\r\n }\r\n htmlEl.classList.add('theme_' + theme);\r\n stateService.save(ConstantsService.disableFaviconKey,\r\n await storageService.get(ConstantsService.disableFaviconKey));\r\n stateService.save('enableGravatars', await storageService.get('enableGravatars'));\r\n };\r\n}\r\n\r\n@NgModule({\r\n imports: [\r\n ToasterModule,\r\n ],\r\n declarations: [],\r\n providers: [\r\n ValidationService,\r\n AuthGuardService,\r\n OrganizationGuardService,\r\n OrganizationTypeGuardService,\r\n UnauthGuardService,\r\n RouterService,\r\n EventService,\r\n { provide: AuditServiceAbstraction, useValue: auditService },\r\n { provide: AuthServiceAbstraction, useValue: authService },\r\n { provide: CipherServiceAbstraction, useValue: cipherService },\r\n { provide: FolderServiceAbstraction, useValue: folderService },\r\n { provide: CollectionServiceAbstraction, useValue: collectionService },\r\n { provide: EnvironmentServiceAbstraction, useValue: environmentService },\r\n { provide: TotpServiceAbstraction, useValue: totpService },\r\n { provide: TokenServiceAbstraction, useValue: tokenService },\r\n { provide: I18nServiceAbstraction, useValue: i18nService },\r\n { provide: CryptoServiceAbstraction, useValue: cryptoService },\r\n { provide: PlatformUtilsServiceAbstraction, useValue: platformUtilsService },\r\n { provide: PasswordGenerationServiceAbstraction, useValue: passwordGenerationService },\r\n { provide: ApiServiceAbstraction, useValue: apiService },\r\n { provide: SyncServiceAbstraction, useValue: syncService },\r\n { provide: UserServiceAbstraction, useValue: userService },\r\n { provide: MessagingServiceAbstraction, useValue: messagingService },\r\n { provide: BroadcasterService, useValue: broadcasterService },\r\n { provide: SettingsServiceAbstraction, useValue: settingsService },\r\n { provide: LockServiceAbstraction, useValue: lockService },\r\n { provide: StorageServiceAbstraction, useValue: storageService },\r\n { provide: StateServiceAbstraction, useValue: stateService },\r\n { provide: ExportServiceAbstraction, useValue: exportService },\r\n { provide: SearchServiceAbstraction, useValue: searchService },\r\n { provide: ImportServiceAbstraction, useValue: importService },\r\n { provide: NotificationsServiceAbstraction, useValue: notificationsService },\r\n { provide: CryptoFunctionServiceAbstraction, useValue: cryptoFunctionService },\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: initFactory,\r\n deps: [],\r\n multi: true,\r\n },\r\n {\r\n provide: LOCALE_ID,\r\n useFactory: () => i18nService.translationLocale,\r\n deps: [],\r\n },\r\n ],\r\n})\r\nexport class ServicesModule {\r\n}\r\n","import { MessagingService } from 'jslib/abstractions/messaging.service';\r\n\r\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\r\n\r\nexport class BroadcasterMessagingService implements MessagingService {\r\n constructor(private broadcasterService: BroadcasterService) { }\r\n\r\n send(subscriber: string, arg: any = {}) {\r\n const message = Object.assign({}, { command: subscriber }, arg);\r\n this.broadcasterService.send(message);\r\n }\r\n}\r\n","import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\nimport { StorageService } from 'jslib/abstractions/storage.service';\nimport { ConstantsService } from 'jslib/services';\n\nexport class HtmlStorageService implements StorageService {\n private localStorageKeys = new Set(['appId', 'anonymousAppId', 'rememberedEmail', 'passwordGenerationOptions',\n ConstantsService.disableFaviconKey, ConstantsService.lockOptionKey, 'rememberEmail', 'enableGravatars',\n ConstantsService.localeKey, ConstantsService.lockOptionKey, ConstantsService.autoConfirmFingerprints]);\n private localStorageStartsWithKeys = ['twoFactorToken_', ConstantsService.collapsedGroupingsKey + '_'];\n\n constructor(private platformUtilsService: PlatformUtilsService) { }\n\n async init() {\n const lockOption = await this.get(ConstantsService.lockOptionKey);\n if (lockOption == null && !this.platformUtilsService.isDev()) {\n await this.save(ConstantsService.lockOptionKey, 15);\n }\n }\n\n get(key: string): Promise {\n let json: string = null;\n if (this.isLocalStorage(key)) {\n json = window.localStorage.getItem(key);\n } else {\n json = window.sessionStorage.getItem(key);\n }\n if (json != null) {\n const obj = JSON.parse(json);\n return Promise.resolve(obj as T);\n }\n return Promise.resolve(null);\n }\n\n save(key: string, obj: any): Promise {\n if (obj == null) {\n return this.remove(key);\n }\n\n const json = JSON.stringify(obj);\n if (this.isLocalStorage(key)) {\n window.localStorage.setItem(key, json);\n } else {\n window.sessionStorage.setItem(key, json);\n }\n return Promise.resolve();\n }\n\n remove(key: string): Promise {\n if (this.isLocalStorage(key)) {\n window.localStorage.removeItem(key);\n } else {\n window.sessionStorage.removeItem(key);\n }\n return Promise.resolve();\n }\n\n private isLocalStorage(key: string): boolean {\n if (this.localStorageKeys.has(key)) {\n return true;\n }\n for (const swKey of this.localStorageStartsWithKeys) {\n if (key.startsWith(swKey)) {\n return true;\n }\n }\n return false;\n }\n}\n","export { ApiService } from './api.service';\nexport { AppIdService } from './appId.service';\nexport { AuditService } from './audit.service';\nexport { AuthService } from './auth.service';\nexport { CipherService } from './cipher.service';\nexport { CollectionService } from './collection.service';\nexport { ConstantsService } from './constants.service';\nexport { ContainerService } from './container.service';\nexport { CryptoService } from './crypto.service';\nexport { EnvironmentService } from './environment.service';\nexport { FolderService } from './folder.service';\nexport { I18nService } from './i18n.service';\nexport { LockService } from './lock.service';\nexport { PasswordGenerationService } from './passwordGeneration.service';\nexport { SettingsService } from './settings.service';\nexport { StateService } from './state.service';\nexport { SyncService } from './sync.service';\nexport { TokenService } from './token.service';\nexport { TotpService } from './totp.service';\nexport { UserService } from './user.service';\n","export class AttachmentResponse {\r\n id: string;\r\n url: string;\r\n fileName: string;\r\n key: string;\r\n size: number;\r\n sizeName: string;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.url = response.Url;\r\n this.fileName = response.FileName;\r\n this.key = response.Key;\r\n this.size = response.Size;\r\n this.sizeName = response.SizeName;\r\n }\r\n}\r\n","export class PasswordHistoryResponse {\r\n password: string;\r\n lastUsedDate: string;\r\n\r\n constructor(response: any) {\r\n this.password = response.Password;\r\n this.lastUsedDate = response.LastUsedDate;\r\n }\r\n}\r\n","export class CardApi {\r\n cardholderName: string;\r\n brand: string;\r\n number: string;\r\n expMonth: string;\r\n expYear: string;\r\n code: string;\r\n\r\n constructor(data: any) {\r\n this.cardholderName = data.CardholderName;\r\n this.brand = data.Brand;\r\n this.number = data.Number;\r\n this.expMonth = data.ExpMonth;\r\n this.expYear = data.ExpYear;\r\n this.code = data.Code;\r\n }\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nexport class FieldApi {\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.name = response.Name;\r\n this.value = response.Value;\r\n }\r\n}\r\n","export class IdentityApi {\r\n title: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n constructor(data: any) {\r\n this.title = data.Title;\r\n this.firstName = data.FirstName;\r\n this.middleName = data.MiddleName;\r\n this.lastName = data.LastName;\r\n this.address1 = data.Address1;\r\n this.address2 = data.Address2;\r\n this.address3 = data.Address3;\r\n this.city = data.City;\r\n this.state = data.State;\r\n this.postalCode = data.PostalCode;\r\n this.country = data.Country;\r\n this.company = data.Company;\r\n this.email = data.Email;\r\n this.phone = data.Phone;\r\n this.ssn = data.SSN;\r\n this.username = data.Username;\r\n this.passportNumber = data.PassportNumber;\r\n this.licenseNumber = data.LicenseNumber;\r\n }\r\n}\r\n","import { LoginUriApi } from './loginUriApi';\r\n\r\nexport class LoginApi {\r\n uris: LoginUriApi[];\r\n username: string;\r\n password: string;\r\n passwordRevisionDate: string;\r\n totp: string;\r\n\r\n constructor(data: any) {\r\n this.username = data.Username;\r\n this.password = data.Password;\r\n this.passwordRevisionDate = data.PasswordRevisionDate;\r\n this.totp = data.Totp;\r\n\r\n if (data.Uris) {\r\n this.uris = [];\r\n data.Uris.forEach((u: any) => {\r\n this.uris.push(new LoginUriApi(u));\r\n });\r\n }\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nexport class LoginUriApi {\r\n uri: string;\r\n match: UriMatchType = null;\r\n\r\n constructor(data: any) {\r\n this.uri = data.Uri;\r\n this.match = data.Match != null ? data.Match : null;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nexport class SecureNoteApi {\r\n type: SecureNoteType;\r\n\r\n constructor(data: any) {\r\n this.type = data.Type;\r\n }\r\n}\r\n","export class GlobalDomainResponse {\r\n type: number;\r\n domains: string[];\r\n excluded: number[];\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.domains = response.Domains;\r\n this.excluded = response.Excluded;\r\n }\r\n}\r\n","export class ErrorResponse {\n message: string;\n validationErrors: { [key: string]: string[]; };\n statusCode: number;\n\n constructor(response: any, status: number, identityResponse?: boolean) {\n let errorModel = null;\n if (identityResponse && response && response.ErrorModel) {\n errorModel = response.ErrorModel;\n } else if (response) {\n errorModel = response;\n }\n\n if (errorModel) {\n this.message = errorModel.Message;\n this.validationErrors = errorModel.ValidationErrors;\n } else {\n if (status === 429) {\n this.message = 'Rate limit exceeded. Try again later.';\n }\n }\n this.statusCode = status;\n }\n\n getSingleMessage(): string {\n if (this.validationErrors) {\n for (const key in this.validationErrors) {\n if (!this.validationErrors.hasOwnProperty(key)) {\n continue;\n }\n if (this.validationErrors[key].length) {\n return this.validationErrors[key][0];\n }\n }\n }\n return this.message;\n }\n}\n","import { DeviceType } from '../../enums/deviceType';\r\nimport { EventType } from '../../enums/eventType';\r\n\r\nexport class EventResponse {\r\n type: EventType;\r\n userId: string;\r\n organizationId: string;\r\n cipherId: string;\r\n collectionId: string;\r\n groupId: string;\r\n organizationUserId: string;\r\n actingUserId: string;\r\n date: string;\r\n deviceType: DeviceType;\r\n ipAddress: string;\r\n\r\n constructor(response: any) {\r\n this.type = response.Type;\r\n this.userId = response.UserId;\r\n this.organizationId = response.OrganizationId;\r\n this.cipherId = response.CipherId;\r\n this.collectionId = response.CollectionId;\r\n this.groupId = response.GroupId;\r\n this.organizationUserId = response.OrganizationUserId;\r\n this.actingUserId = response.ActingUserId;\r\n this.date = response.Date;\r\n this.deviceType = response.DeviceType;\r\n this.ipAddress = response.IpAddress;\r\n }\r\n}\r\n","import { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\n\nexport class GroupResponse {\n id: string;\n organizationId: string;\n name: string;\n accessAll: boolean;\n externalId: string;\n\n constructor(response: any) {\n this.id = response.Id;\n this.organizationId = response.OrganizationId;\n this.name = response.Name;\n this.accessAll = response.AccessAll;\n this.externalId = response.ExternalId;\n }\n}\n\nexport class GroupDetailsResponse extends GroupResponse {\n collections: SelectionReadOnlyResponse[] = [];\n\n constructor(response: any) {\n super(response);\n if (response.Collections != null) {\n this.collections = response.Collections.map((c: any) => new SelectionReadOnlyResponse(c));\n }\n }\n}\n","export class IdentityTokenResponse {\r\n accessToken: string;\r\n expiresIn: number;\r\n refreshToken: string;\r\n tokenType: string;\r\n\r\n privateKey: string;\r\n key: string;\r\n twoFactorToken: string;\r\n\r\n constructor(response: any) {\r\n this.accessToken = response.access_token;\r\n this.expiresIn = response.expires_in;\r\n this.refreshToken = response.refresh_token;\r\n this.tokenType = response.token_type;\r\n\r\n this.privateKey = response.PrivateKey;\r\n this.key = response.Key;\r\n this.twoFactorToken = response.TwoFactorToken;\r\n }\r\n}\r\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\r\n\r\nexport class IdentityTwoFactorResponse {\r\n twoFactorProviders: TwoFactorProviderType[];\r\n twoFactorProviders2 = new Map();\r\n\r\n constructor(response: any) {\r\n this.twoFactorProviders = response.TwoFactorProviders;\r\n if (response.TwoFactorProviders2 != null) {\r\n for (const prop in response.TwoFactorProviders2) {\r\n if (response.TwoFactorProviders2.hasOwnProperty(prop)) {\r\n this.twoFactorProviders2.set(parseInt(prop, null), response.TwoFactorProviders2[prop]);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","export class ListResponse {\n data: T[];\n continuationToken: string;\n\n constructor(response: any, t: new (dataResponse: any) => T) {\n this.data = response.Data == null ? [] : response.Data.map((dr: any) => new t(dr));\n this.continuationToken = response.ContinuationToken;\n }\n}\n","import {\r\n BillingChargeResponse,\r\n BillingInvoiceResponse,\r\n BillingSourceResponse,\r\n BillingSubscriptionResponse,\r\n} from './billingResponse';\r\nimport { OrganizationResponse } from './organizationResponse';\r\n\r\nexport class OrganizationBillingResponse extends OrganizationResponse {\r\n storageName: string;\r\n storageGb: number;\r\n paymentSource: BillingSourceResponse;\r\n subscription: BillingSubscriptionResponse;\r\n upcomingInvoice: BillingInvoiceResponse;\r\n charges: BillingChargeResponse[] = [];\r\n expiration: string;\r\n\r\n constructor(response: any) {\r\n super(response);\r\n this.storageName = response.StorageName;\r\n this.storageGb = response.StorageGb;\r\n this.paymentSource = response.PaymentSource == null ? null : new BillingSourceResponse(response.PaymentSource);\r\n this.subscription = response.Subscription == null ?\r\n null : new BillingSubscriptionResponse(response.Subscription);\r\n this.upcomingInvoice = response.UpcomingInvoice == null ?\r\n null : new BillingInvoiceResponse(response.UpcomingInvoice);\r\n if (response.Charges != null) {\r\n this.charges = response.Charges.map((c: any) => new BillingChargeResponse(c));\r\n }\r\n this.expiration = response.Expiration;\r\n }\r\n}\r\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { OrganizationUserType } from '../../enums/organizationUserType';\r\nimport { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\r\n\r\nexport class OrganizationUserResponse {\r\n id: string;\r\n userId: string;\r\n type: OrganizationUserType;\r\n status: OrganizationUserStatusType;\r\n accessAll: boolean;\r\n\r\n constructor(response: any) {\r\n this.id = response.Id;\r\n this.userId = response.UserId;\r\n this.type = response.Type;\r\n this.status = response.Status;\r\n this.accessAll = response.AccessAll;\r\n }\r\n}\r\n\r\nexport class OrganizationUserUserDetailsResponse extends OrganizationUserResponse {\r\n name: string;\r\n email: string;\r\n twoFactorEnabled: string;\r\n\r\n constructor(response: any) {\r\n super(response);\r\n this.name = response.Name;\r\n this.email = response.Email;\r\n this.twoFactorEnabled = response.TwoFactorEnabled;\r\n }\r\n}\r\n\r\nexport class OrganizationUserDetailsResponse extends OrganizationUserResponse {\r\n collections: SelectionReadOnlyResponse[] = [];\r\n\r\n constructor(response: any) {\r\n super(response);\r\n if (response.Collections != null) {\r\n this.collections = response.Collections.map((c: any) => new SelectionReadOnlyResponse(c));\r\n }\r\n }\r\n}\r\n","import { KdfType } from '../../enums/kdfType';\n\nexport class PreloginResponse {\n kdf: KdfType;\n kdfIterations: number;\n\n constructor(response: any) {\n this.kdf = response.Kdf;\n this.kdfIterations = response.KdfIterations;\n }\n}\n","import { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\n\nexport class ProfileOrganizationResponse {\n id: string;\n name: string;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n selfHost: boolean;\n usersGetPremium: boolean;\n seats: number;\n maxCollections: number;\n maxStorageGb?: number;\n key: string;\n status: OrganizationUserStatusType;\n type: OrganizationUserType;\n enabled: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.name = response.Name;\n this.useGroups = response.UseGroups;\n this.useDirectory = response.UseDirectory;\n this.useEvents = response.UseEvents;\n this.useTotp = response.UseTotp;\n this.use2fa = response.Use2fa;\n this.selfHost = response.SelfHost;\n this.usersGetPremium = response.UsersGetPremium;\n this.seats = response.Seats;\n this.maxCollections = response.MaxCollections;\n this.maxStorageGb = response.MaxStorageGb;\n this.key = response.Key;\n this.status = response.Status;\n this.type = response.Type;\n this.enabled = response.Enabled;\n }\n}\n","import { CipherResponse } from './cipherResponse';\nimport { CollectionDetailsResponse } from './collectionResponse';\nimport { DomainsResponse } from './domainsResponse';\nimport { FolderResponse } from './folderResponse';\nimport { ProfileResponse } from './profileResponse';\n\nexport class SyncResponse {\n profile?: ProfileResponse;\n folders: FolderResponse[] = [];\n collections: CollectionDetailsResponse[] = [];\n ciphers: CipherResponse[] = [];\n domains?: DomainsResponse;\n\n constructor(response: any) {\n if (response.Profile) {\n this.profile = new ProfileResponse(response.Profile);\n }\n\n if (response.Folders) {\n response.Folders.forEach((folder: any) => {\n this.folders.push(new FolderResponse(folder));\n });\n }\n\n if (response.Collections) {\n response.Collections.forEach((collection: any) => {\n this.collections.push(new CollectionDetailsResponse(collection));\n });\n }\n\n if (response.Ciphers) {\n response.Ciphers.forEach((cipher: any) => {\n this.ciphers.push(new CipherResponse(cipher));\n });\n }\n\n if (response.Domains) {\n this.domains = new DomainsResponse(response.Domains);\n }\n }\n}\n","export class TwoFactorAuthenticatorResponse {\n enabled: boolean;\n key: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key = response.Key;\n }\n}\n","export class TwoFactorDuoResponse {\n enabled: boolean;\n host: string;\n secretKey: string;\n integrationKey: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.host = response.Host;\n this.secretKey = response.SecretKey;\n this.integrationKey = response.IntegrationKey;\n }\n}\n","export class TwoFactorEmailResponse {\n enabled: boolean;\n email: string;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.email = response.Email;\n }\n}\n","import { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nexport class TwoFactorProviderResponse {\n enabled: boolean;\n type: TwoFactorProviderType;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.type = response.Type;\n }\n}\n","export class TwoFactorRecoverResponse {\n code: string;\n\n constructor(response: any) {\n this.code = response.Code;\n }\n}\n","export class TwoFactorU2fResponse {\n enabled: boolean;\n keys: KeyResponse[];\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.keys = response.Keys == null ? null : response.Keys.map((k: any) => new KeyResponse(k));\n }\n}\n\nexport class KeyResponse {\n name: string;\n id: number;\n compromised: boolean;\n\n constructor(response: any) {\n this.name = response.Name;\n this.id = response.Id;\n this.compromised = response.Compromised;\n }\n}\n\nexport class ChallengeResponse {\n userId: string;\n appId: string;\n challenge: string;\n version: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.appId = response.AppId;\n this.challenge = response.Challenge;\n this.version = response.Version;\n }\n}\n","export class TwoFactorYubiKeyResponse {\n enabled: boolean;\n key1: string;\n key2: string;\n key3: string;\n key4: string;\n key5: string;\n nfc: boolean;\n\n constructor(response: any) {\n this.enabled = response.Enabled;\n this.key1 = response.Key1;\n this.key2 = response.Key2;\n this.key3 = response.Key3;\n this.key4 = response.Key4;\n this.key5 = response.Key5;\n this.nfc = response.Nfc;\n }\n}\n","export class UserKeyResponse {\n userId: string;\n publicKey: string;\n\n constructor(response: any) {\n this.userId = response.UserId;\n this.publicKey = response.PublicKey;\n }\n}\n","export class BreachAccountResponse {\r\n addedDate: string;\r\n breachDate: string;\r\n dataClasses: string[];\r\n description: string;\r\n domain: string;\r\n isActive: boolean;\r\n isVerified: boolean;\r\n logoPath: string;\r\n modifiedDate: string;\r\n name: string;\r\n pwnCount: number;\r\n title: string;\r\n\r\n constructor(response: any) {\r\n this.addedDate = response.AddedDate;\r\n this.breachDate = response.BreachDate;\r\n this.dataClasses = response.DataClasses;\r\n this.description = response.Description;\r\n this.domain = response.Domain;\r\n this.isActive = response.IsActive;\r\n this.isVerified = response.IsVerified;\r\n this.logoPath = response.LogoPath;\r\n this.modifiedDate = response.ModifiedDate;\r\n this.name = response.Name;\r\n this.pwnCount = response.PwnCount;\r\n this.title = response.Title;\r\n }\r\n}\r\n","export class CipherBulkDeleteRequest {\n ids: string[];\n\n constructor(ids: string[]) {\n this.ids = ids == null ? [] : ids;\n }\n}\n","export class CipherBulkMoveRequest {\n ids: string[];\n folderId: string;\n\n constructor(ids: string[], folderId: string) {\n this.ids = ids == null ? [] : ids;\n this.folderId = folderId;\n }\n}\n","import { CipherWithIdRequest } from './cipherWithIdRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherBulkShareRequest {\n ciphers: CipherWithIdRequest[];\n collectionIds: string[];\n\n constructor(ciphers: Cipher[], collectionIds: string[]) {\n if (ciphers != null) {\n this.ciphers = [];\n ciphers.forEach((c) => {\n this.ciphers.push(new CipherWithIdRequest(c));\n });\n }\n this.collectionIds = collectionIds;\n }\n}\n","import { CipherRequest } from './cipherRequest';\n\nimport { Cipher } from '../domain/cipher';\n\nexport class CipherShareRequest {\n cipher: CipherRequest;\n collectionIds: string[];\n\n constructor(cipher: Cipher) {\n this.cipher = new CipherRequest(cipher);\n this.collectionIds = cipher.collectionIds;\n }\n}\n","export class TreeNode {\r\n parent: T;\r\n node: T;\r\n children: Array> = [];\r\n\r\n constructor(node: T, name: string, parent: T) {\r\n this.parent = parent;\r\n this.node = node;\r\n this.node.name = name;\r\n }\r\n}\r\n\r\nexport interface ITreeNodeObject {\r\n id: string;\r\n name: string;\r\n}\r\n","import { SymmetricCryptoKey } from './symmetricCryptoKey';\n\nexport class EncryptedObject {\n iv: ArrayBuffer;\n data: ArrayBuffer;\n mac: ArrayBuffer;\n key: SymmetricCryptoKey;\n}\n","export class EnvironmentUrls {\n base: string;\n api: string;\n identity: string;\n}\n","import { FolderData } from '../data/folderData';\n\nimport { FolderView } from '../view/folderView';\n\nimport { CipherString } from './cipherString';\nimport Domain from './domainBase';\n\nexport class Folder extends Domain {\n id: string;\n name: CipherString;\n revisionDate: Date;\n\n constructor(obj?: FolderData, alreadyEncrypted: boolean = false) {\n super();\n if (obj == null) {\n return;\n }\n\n this.buildDomainModel(this, obj, {\n id: null,\n name: null,\n }, alreadyEncrypted, ['id']);\n\n this.revisionDate = obj.revisionDate != null ? new Date(obj.revisionDate) : null;\n }\n\n decrypt(): Promise {\n return this.decryptObj(new FolderView(this), {\n name: null,\n }, null);\n }\n}\n","export class GeneratedPasswordHistory {\r\n password: string;\r\n date: number;\r\n\r\n constructor(password: string, date: number) {\r\n this.password = password;\r\n this.date = date;\r\n }\r\n}\r\n","import { ProfileOrganizationResponse } from '../response/profileOrganizationResponse';\n\nimport { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\n\nexport class OrganizationData {\n id: string;\n name: string;\n status: OrganizationUserStatusType;\n type: OrganizationUserType;\n enabled: boolean;\n useGroups: boolean;\n useDirectory: boolean;\n useEvents: boolean;\n useTotp: boolean;\n use2fa: boolean;\n selfHost: boolean;\n usersGetPremium: boolean;\n seats: number;\n maxCollections: number;\n maxStorageGb?: number;\n\n constructor(response: ProfileOrganizationResponse) {\n this.id = response.id;\n this.name = response.name;\n this.status = response.status;\n this.type = response.type;\n this.enabled = response.enabled;\n this.useGroups = response.useGroups;\n this.useDirectory = response.useDirectory;\n this.useEvents = response.useEvents;\n this.useTotp = response.useTotp;\n this.use2fa = response.use2fa;\n this.selfHost = response.selfHost;\n this.usersGetPremium = response.usersGetPremium;\n this.seats = response.seats;\n this.maxCollections = response.maxCollections;\n this.maxStorageGb = response.maxStorageGb;\n }\n}\n","import { OrganizationData } from '../data/organizationData';\r\n\r\nimport { OrganizationUserStatusType } from '../../enums/organizationUserStatusType';\r\nimport { OrganizationUserType } from '../../enums/organizationUserType';\r\n\r\nexport class Organization {\r\n id: string;\r\n name: string;\r\n status: OrganizationUserStatusType;\r\n type: OrganizationUserType;\r\n enabled: boolean;\r\n useGroups: boolean;\r\n useDirectory: boolean;\r\n useEvents: boolean;\r\n useTotp: boolean;\r\n use2fa: boolean;\r\n selfHost: boolean;\r\n usersGetPremium: boolean;\r\n seats: number;\r\n maxCollections: number;\r\n maxStorageGb?: number;\r\n\r\n constructor(obj?: OrganizationData) {\r\n if (obj == null) {\r\n return;\r\n }\r\n\r\n this.id = obj.id;\r\n this.name = obj.name;\r\n this.status = obj.status;\r\n this.type = obj.type;\r\n this.enabled = obj.enabled;\r\n this.useGroups = obj.useGroups;\r\n this.useDirectory = obj.useDirectory;\r\n this.useEvents = obj.useEvents;\r\n this.useTotp = obj.useTotp;\r\n this.use2fa = obj.use2fa;\r\n this.selfHost = obj.selfHost;\r\n this.usersGetPremium = obj.usersGetPremium;\r\n this.seats = obj.seats;\r\n this.maxCollections = obj.maxCollections;\r\n this.maxStorageGb = obj.maxStorageGb;\r\n }\r\n\r\n get canAccess() {\r\n if (this.type === OrganizationUserType.Owner) {\r\n return true;\r\n }\r\n return this.enabled && this.status === OrganizationUserStatusType.Confirmed;\r\n }\r\n\r\n get isManager() {\r\n return this.type === OrganizationUserType.Manager || this.type === OrganizationUserType.Owner ||\r\n this.type === OrganizationUserType.Admin;\r\n }\r\n\r\n get isAdmin() {\r\n return this.type === OrganizationUserType.Owner || this.type === OrganizationUserType.Admin;\r\n }\r\n\r\n get isOwner() {\r\n return this.type === OrganizationUserType.Owner;\r\n }\r\n}\r\n","import { I18nService as BaseI18nService } from 'jslib/services/i18n.service';\n\nexport class I18nService extends BaseI18nService {\n constructor(systemLanguage: string, localesDirectory: string) {\n super(systemLanguage || 'en-US', localesDirectory, async (formattedLocale: string) => {\n const filePath = this.localesDirectory + '/' + formattedLocale + '/messages.json?cache=' +\n process.env.CACHE_TAG;\n const localesResult = await fetch(filePath);\n const locales = await localesResult.json();\n return locales;\n });\n\n this.supportedTranslationLocales = [\n 'en', 'cs', 'da', 'de', 'es', 'et', 'fr', 'it', 'ja', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR',\n 'ru', 'sk', 'sv', 'uk', 'zh-CN', 'zh-TW',\n ];\n }\n}\n","import { StorageService } from 'jslib/abstractions/storage.service';\r\n\r\nexport class MemoryStorageService implements StorageService {\r\n private store = new Map();\r\n\r\n get(key: string): Promise {\r\n if (this.store.has(key)) {\r\n const obj = this.store.get(key);\r\n return Promise.resolve(obj as T);\r\n }\r\n return Promise.resolve(null);\r\n }\r\n\r\n save(key: string, obj: any): Promise {\r\n if (obj == null) {\r\n return this.remove(key);\r\n }\r\n this.store.set(key, obj);\r\n return Promise.resolve();\r\n }\r\n\r\n remove(key: string): Promise {\r\n this.store.delete(key);\r\n return Promise.resolve();\r\n }\r\n}\r\n","import * as _swal from 'sweetalert';\nimport { SweetAlert } from 'sweetalert/typings/core';\n\nimport { DeviceType } from 'jslib/enums/deviceType';\n\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { MessagingService } from 'jslib/abstractions/messaging.service';\nimport { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';\n\nimport { Utils } from 'jslib/misc/utils';\n\n// Hack due to Angular 5.2 bug\nconst swal: SweetAlert = _swal as any;\n\nexport class WebPlatformUtilsService implements PlatformUtilsService {\n identityClientId: string = 'web';\n\n private browserCache: DeviceType = null;\n\n constructor(private i18nService: I18nService, private messagingService: MessagingService) { }\n\n getDevice(): DeviceType {\n if (this.browserCache != null) {\n return this.browserCache;\n }\n\n if (navigator.userAgent.indexOf(' Firefox/') !== -1 || navigator.userAgent.indexOf(' Gecko/') !== -1) {\n this.browserCache = DeviceType.FirefoxBrowser;\n } else if (navigator.userAgent.indexOf(' OPR/') >= 0) {\n this.browserCache = DeviceType.OperaBrowser;\n } else if (navigator.userAgent.indexOf(' Edge/') !== -1) {\n this.browserCache = DeviceType.EdgeBrowser;\n } else if (navigator.userAgent.indexOf(' Vivaldi/') !== -1) {\n this.browserCache = DeviceType.VivaldiBrowser;\n } else if (navigator.userAgent.indexOf(' Safari/') !== -1 && navigator.userAgent.indexOf('Chrome') === -1) {\n this.browserCache = DeviceType.SafariBrowser;\n } else if ((window as any).chrome && navigator.userAgent.indexOf(' Chrome/') !== -1) {\n this.browserCache = DeviceType.ChromeBrowser;\n } else if (navigator.userAgent.indexOf(' Trident/') !== -1) {\n this.browserCache = DeviceType.IEBrowser;\n } else {\n this.browserCache = DeviceType.UnknownBrowser;\n }\n\n return this.browserCache;\n }\n\n getDeviceString(): string {\n const device = DeviceType[this.getDevice()].toLowerCase();\n return device.replace('browser', '');\n }\n\n isFirefox(): boolean {\n return this.getDevice() === DeviceType.FirefoxBrowser;\n }\n\n isChrome(): boolean {\n return this.getDevice() === DeviceType.ChromeBrowser;\n }\n\n isEdge(): boolean {\n return this.getDevice() === DeviceType.EdgeBrowser;\n }\n\n isOpera(): boolean {\n return this.getDevice() === DeviceType.OperaBrowser;\n }\n\n isVivaldi(): boolean {\n return this.getDevice() === DeviceType.VivaldiBrowser;\n }\n\n isSafari(): boolean {\n return this.getDevice() === DeviceType.SafariBrowser;\n }\n\n isIE(): boolean {\n return this.getDevice() === DeviceType.IEBrowser;\n }\n\n isMacAppStore(): boolean {\n return false;\n }\n\n analyticsId(): string {\n return 'UA-81915606-3';\n }\n\n isViewOpen(): boolean {\n return false;\n }\n\n lockTimeout(): number {\n return null;\n }\n\n launchUri(uri: string, options?: any): void {\n const a = document.createElement('a');\n a.href = uri;\n a.target = '_blank';\n a.rel = 'noreferrer noopener';\n a.classList.add('d-none');\n document.body.appendChild(a);\n a.click();\n document.body.removeChild(a);\n }\n\n saveFile(win: Window, blobData: any, blobOptions: any, fileName: string): void {\n let blob: Blob = null;\n let type: string = null;\n const fileNameLower = fileName.toLowerCase();\n let doDownload = true;\n if (fileNameLower.endsWith('.pdf')) {\n type = 'application/pdf';\n doDownload = false;\n } else if (fileNameLower.endsWith('.xlsx')) {\n type = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\n } else if (fileNameLower.endsWith('.docx')) {\n type = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';\n } else if (fileNameLower.endsWith('.pptx')) {\n type = 'application/vnd.openxmlformats-officedocument.presentationml.presentation';\n } else if (fileNameLower.endsWith('.csv')) {\n type = 'text/csv';\n } else if (fileNameLower.endsWith('.png')) {\n type = 'image/png';\n } else if (fileNameLower.endsWith('.jpg') || fileNameLower.endsWith('.jpeg')) {\n type = 'image/jpeg';\n } else if (fileNameLower.endsWith('.gif')) {\n type = 'image/gif';\n }\n if (type != null) {\n blobOptions = blobOptions || {};\n if (blobOptions.type == null) {\n blobOptions.type = type;\n }\n }\n if (blobOptions != null && !this.isIE()) {\n blob = new Blob([blobData], blobOptions);\n } else {\n blob = new Blob([blobData]);\n }\n if (navigator.msSaveOrOpenBlob) {\n navigator.msSaveBlob(blob, fileName);\n } else {\n const a = win.document.createElement('a');\n if (doDownload) {\n a.download = fileName;\n } else {\n a.target = '_blank';\n }\n a.href = win.URL.createObjectURL(blob);\n a.style.position = 'fixed';\n win.document.body.appendChild(a);\n a.click();\n win.document.body.removeChild(a);\n }\n }\n\n getApplicationVersion(): string {\n return process.env.APPLICATION_VERSION || '-';\n }\n\n supportsU2f(win: Window): boolean {\n if (win != null && (win as any).u2f != null) {\n return true;\n }\n return (this.isChrome() || this.isOpera() || this.isVivaldi()) && !Utils.isMobileBrowser;\n }\n\n supportsDuo(): boolean {\n return true;\n }\n\n showToast(type: 'error' | 'success' | 'warning' | 'info', title: string, text: string | string[],\n options?: any): void {\n this.messagingService.send('showToast', {\n text: text,\n title: title,\n type: type,\n options: options,\n });\n }\n\n async showDialog(text: string, title?: string, confirmText?: string, cancelText?: string, type?: string) {\n const buttons = [confirmText == null ? this.i18nService.t('ok') : confirmText];\n if (cancelText != null) {\n buttons.unshift(cancelText);\n }\n\n const contentDiv = document.createElement('div');\n if (type != null) {\n const icon = document.createElement('i');\n icon.classList.add('swal-custom-icon');\n switch (type) {\n case 'success':\n icon.classList.add('fa', 'fa-check', 'text-success');\n break;\n case 'warning':\n icon.classList.add('fa', 'fa-warning', 'text-warning');\n break;\n case 'error':\n icon.classList.add('fa', 'fa-bolt', 'text-danger');\n break;\n case 'info':\n icon.classList.add('fa', 'fa-info-circle', 'text-info');\n break;\n default:\n break;\n }\n if (icon.classList.contains('fa')) {\n contentDiv.appendChild(icon);\n }\n }\n\n if (title != null) {\n const titleDiv = document.createElement('div');\n titleDiv.classList.add('swal-title');\n titleDiv.appendChild(document.createTextNode(title));\n contentDiv.appendChild(titleDiv);\n }\n\n if (text != null) {\n const textDiv = document.createElement('div');\n textDiv.classList.add('swal-text');\n textDiv.appendChild(document.createTextNode(text));\n contentDiv.appendChild(textDiv);\n }\n\n const confirmed = buttons.length > 1 ? await swal({\n content: { element: contentDiv },\n buttons: buttons,\n }) : await (swal as any)({\n content: { element: contentDiv },\n button: buttons[0],\n });\n return confirmed;\n }\n\n eventTrack(action: string, label?: string, options?: any) {\n this.messagingService.send('analyticsEventTrack', {\n action: action,\n label: label,\n options: options,\n });\n }\n\n isDev(): boolean {\n return process.env.ENV === 'development';\n }\n\n isSelfHost(): boolean {\n return process.env.SELF_HOST.toString() === 'true';\n }\n\n copyToClipboard(text: string, options?: any): void {\n let win = window;\n let doc = window.document;\n if (options && (options.window || options.win)) {\n win = options.window || options.win;\n doc = win.document;\n } else if (options && options.doc) {\n doc = options.doc;\n }\n if ((win as any).clipboardData && (win as any).clipboardData.setData) {\n // IE specific code path to prevent textarea being shown while dialog is visible.\n (win as any).clipboardData.setData('Text', text);\n } else if (doc.queryCommandSupported && doc.queryCommandSupported('copy')) {\n const textarea = doc.createElement('textarea');\n textarea.textContent = text;\n // Prevent scrolling to bottom of page in MS Edge.\n textarea.style.position = 'fixed';\n let copyEl = doc.body;\n // For some reason copy command won't work in Firefox when modal is open if appending to body\n if (this.isFirefox() && doc.body.classList.contains('modal-open')) {\n copyEl = doc.body.querySelector('.modal');\n }\n copyEl.appendChild(textarea);\n textarea.select();\n try {\n // Security exception may be thrown by some browsers.\n doc.execCommand('copy');\n } catch (e) {\n // tslint:disable-next-line\n console.warn('Copy to clipboard failed.', e);\n } finally {\n copyEl.removeChild(textarea);\n }\n }\n }\n}\n","import { AppIdService } from '../abstractions/appId.service';\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\nimport { StorageService } from '../abstractions/storage.service';\n\nimport { ConstantsService } from '../services/constants.service';\n\nimport { DeviceType } from '../enums/deviceType';\n\nconst GaObj = 'ga';\n\nexport const AnalyticsIds = {\n [DeviceType.ChromeExtension]: 'UA-81915606-6',\n [DeviceType.FirefoxExtension]: 'UA-81915606-7',\n [DeviceType.OperaExtension]: 'UA-81915606-8',\n [DeviceType.EdgeExtension]: 'UA-81915606-9',\n [DeviceType.VivaldiExtension]: 'UA-81915606-15',\n [DeviceType.SafariExtension]: 'UA-81915606-16',\n [DeviceType.WindowsDesktop]: 'UA-81915606-17',\n [DeviceType.LinuxDesktop]: 'UA-81915606-19',\n [DeviceType.MacOsDesktop]: 'UA-81915606-18',\n};\n\nexport class Analytics {\n private gaTrackingId: string = null;\n private defaultDisabled = false;\n private appVersion: string;\n\n constructor(win: Window, private gaFilter?: () => boolean,\n private platformUtilsService?: PlatformUtilsService, private storageService?: StorageService,\n private appIdService?: AppIdService, private dependencyResolver?: () => any) {\n if (dependencyResolver != null) {\n const deps = dependencyResolver();\n if (platformUtilsService == null && deps.platformUtilsService) {\n this.platformUtilsService = deps.platformUtilsService as PlatformUtilsService;\n }\n if (storageService == null && deps.storageService) {\n this.storageService = deps.storageService as StorageService;\n }\n if (appIdService == null && deps.appIdService) {\n this.appIdService = deps.appIdService as AppIdService;\n }\n }\n\n this.appVersion = this.platformUtilsService.getApplicationVersion();\n this.defaultDisabled = this.platformUtilsService.getDevice() === DeviceType.FirefoxExtension ||\n this.platformUtilsService.isMacAppStore();\n this.gaTrackingId = this.platformUtilsService.analyticsId();\n\n (win as any).GoogleAnalyticsObject = GaObj;\n (win as any)[GaObj] = async (action: string, param1: any, param2?: any) => {\n await this.ga(action, param1, param2);\n };\n }\n\n async ga(action: string, param1: any, param2?: any) {\n if (this.gaFilter != null && this.gaFilter()) {\n return;\n }\n\n const disabled = await this.storageService.get(ConstantsService.disableGaKey);\n if ((this.defaultDisabled && disabled == null) || disabled != null && disabled) {\n return;\n }\n\n if (action !== 'send' || !param1) {\n return;\n }\n\n const gaAnonAppId = await this.appIdService.getAnonymousAppId();\n const version = encodeURIComponent(this.appVersion);\n let message = 'v=1&tid=' + this.gaTrackingId + '&cid=' + gaAnonAppId + '&cd1=' + version;\n\n if (param1 === 'pageview' && param2) {\n message += this.gaTrackPageView(param2);\n } else if (typeof param1 === 'object' && param1.hitType === 'pageview') {\n message += this.gaTrackPageView(param1.page);\n } else if (param1 === 'event' && param2) {\n message += this.gaTrackEvent(param2);\n } else if (typeof param1 === 'object' && param1.hitType === 'event') {\n message += this.gaTrackEvent(param1);\n }\n\n const request = new XMLHttpRequest();\n request.open('POST', 'https://www.google-analytics.com/collect', true);\n request.send(message);\n }\n\n private gaTrackEvent(options: any) {\n return '&t=event&ec=' + (options.eventCategory ? encodeURIComponent(options.eventCategory) : 'Event') +\n '&ea=' + encodeURIComponent(options.eventAction) +\n (options.eventLabel ? '&el=' + encodeURIComponent(options.eventLabel) : '') +\n (options.eventValue ? '&ev=' + encodeURIComponent(options.eventValue) : '') +\n (options.page ? '&dp=' + this.cleanPagePath(options.page) : '');\n }\n\n private gaTrackPageView(pagePath: string) {\n return '&t=pageview&dp=' + this.cleanPagePath(pagePath);\n }\n\n private cleanPagePath(pagePath: string) {\n const paramIndex = pagePath.indexOf('?');\n if (paramIndex > -1) {\n pagePath = pagePath.substring(0, paramIndex);\n }\n if (pagePath.indexOf('!/') === 0 || pagePath.indexOf('#/') === 0) {\n pagePath = pagePath.substring(1);\n }\n const pathParts = pagePath.split('/');\n const newPathParts: string[] = [];\n pathParts.forEach((p) => {\n if (p.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)) {\n newPathParts.push('__guid__');\n } else {\n newPathParts.push(p);\n }\n });\n return encodeURIComponent(newPathParts.join('/'));\n }\n}\n","import * as papa from 'papaparse';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { ExportService as ExportServiceAbstraction } from '../abstractions/export.service';\r\nimport { FolderService } from '../abstractions/folder.service';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nimport { Cipher } from '../models/domain/cipher';\r\nimport { Collection } from '../models/domain/collection';\r\n\r\nimport { CipherData } from '../models/data/cipherData';\r\nimport { CollectionData } from '../models/data/collectionData';\r\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\r\n\r\nimport { CipherWithIds as CipherExport } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId as CollectionExport } from '../models/export/collectionWithId';\r\nimport { FolderWithId as FolderExport } from '../models/export/folderWithId';\r\n\r\nexport class ExportService implements ExportServiceAbstraction {\r\n constructor(private folderService: FolderService, private cipherService: CipherService,\r\n private apiService: ApiService) { }\r\n\r\n async getExport(format: 'csv' | 'json' = 'csv'): Promise {\r\n let decFolders: FolderView[] = [];\r\n let decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.folderService.getAllDecrypted().then((folders) => {\r\n decFolders = folders;\r\n }));\r\n\r\n promises.push(this.cipherService.getAllDecrypted().then((ciphers) => {\r\n decCiphers = ciphers;\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const foldersMap = new Map();\r\n decFolders.forEach((f) => {\r\n foldersMap.set(f.id, f);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.folder = c.folderId != null && foldersMap.has(c.folderId) ?\r\n foldersMap.get(c.folderId).name : null;\r\n cipher.favorite = c.favorite ? 1 : null;\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n folders: [],\r\n items: [],\r\n };\r\n\r\n decFolders.forEach((f) => {\r\n if (f.id == null) {\r\n return;\r\n }\r\n const folder = new FolderExport();\r\n folder.build(f);\r\n jsonDoc.folders.push(folder);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n if (c.organizationId != null) {\r\n return;\r\n }\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n cipher.collectionIds = null;\r\n jsonDoc.items.push(cipher);\r\n });\r\n\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n async getOrganizationExport(organizationId: string, format: 'csv' | 'json' = 'csv'): Promise {\r\n const decCollections: CollectionView[] = [];\r\n const decCiphers: CipherView[] = [];\r\n const promises = [];\r\n\r\n promises.push(this.apiService.getCollections(organizationId).then((collections) => {\r\n const collectionPromises: any = [];\r\n if (collections != null && collections.data != null && collections.data.length > 0) {\r\n collections.data.forEach((c) => {\r\n const collection = new Collection(new CollectionData(c as CollectionDetailsResponse));\r\n collectionPromises.push(collection.decrypt().then((decCol) => {\r\n decCollections.push(decCol);\r\n }));\r\n });\r\n }\r\n return Promise.all(collectionPromises);\r\n }));\r\n\r\n promises.push(this.apiService.getCiphersOrganization(organizationId).then((ciphers) => {\r\n const cipherPromises: any = [];\r\n if (ciphers != null && ciphers.data != null && ciphers.data.length > 0) {\r\n ciphers.data.forEach((c) => {\r\n const cipher = new Cipher(new CipherData(c));\r\n cipherPromises.push(cipher.decrypt().then((decCipher) => {\r\n decCiphers.push(decCipher);\r\n }));\r\n });\r\n }\r\n return Promise.all(cipherPromises);\r\n }));\r\n\r\n await Promise.all(promises);\r\n\r\n if (format === 'csv') {\r\n const collectionsMap = new Map();\r\n decCollections.forEach((c) => {\r\n collectionsMap.set(c.id, c);\r\n });\r\n\r\n const exportCiphers: any[] = [];\r\n decCiphers.forEach((c) => {\r\n // only export logins and secure notes\r\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\r\n return;\r\n }\r\n\r\n const cipher: any = {};\r\n cipher.collections = [];\r\n if (c.collectionIds != null) {\r\n cipher.collections = c.collectionIds.filter((id) => collectionsMap.has(id))\r\n .map((id) => collectionsMap.get(id).name);\r\n }\r\n this.buildCommonCipher(cipher, c);\r\n exportCiphers.push(cipher);\r\n });\r\n\r\n return papa.unparse(exportCiphers);\r\n } else {\r\n const jsonDoc: any = {\r\n collections: [],\r\n items: [],\r\n };\r\n\r\n decCollections.forEach((c) => {\r\n const collection = new CollectionExport();\r\n collection.build(c);\r\n jsonDoc.collections.push(collection);\r\n });\r\n\r\n decCiphers.forEach((c) => {\r\n const cipher = new CipherExport();\r\n cipher.build(c);\r\n jsonDoc.items.push(cipher);\r\n });\r\n return JSON.stringify(jsonDoc, null, ' ');\r\n }\r\n }\r\n\r\n getFileName(prefix: string = null, extension: string = 'csv'): string {\r\n const now = new Date();\r\n const dateString =\r\n now.getFullYear() + '' + this.padNumber(now.getMonth() + 1, 2) + '' + this.padNumber(now.getDate(), 2) +\r\n this.padNumber(now.getHours(), 2) + '' + this.padNumber(now.getMinutes(), 2) +\r\n this.padNumber(now.getSeconds(), 2);\r\n\r\n return 'bitwarden' + (prefix ? ('_' + prefix) : '') + '_export_' + dateString + '.' + extension;\r\n }\r\n\r\n private padNumber(num: number, width: number, padCharacter: string = '0'): string {\r\n const numString = num.toString();\r\n return numString.length >= width ? numString :\r\n new Array(width - numString.length + 1).join(padCharacter) + numString;\r\n }\r\n\r\n private buildCommonCipher(cipher: any, c: CipherView) {\r\n cipher.type = null;\r\n cipher.name = c.name;\r\n cipher.notes = c.notes;\r\n cipher.fields = null;\r\n // Login props\r\n cipher.login_uri = null;\r\n cipher.login_username = null;\r\n cipher.login_password = null;\r\n cipher.login_totp = null;\r\n\r\n if (c.fields) {\r\n c.fields.forEach((f: any) => {\r\n if (!cipher.fields) {\r\n cipher.fields = '';\r\n } else {\r\n cipher.fields += '\\n';\r\n }\r\n\r\n cipher.fields += ((f.name || '') + ': ' + f.value);\r\n });\r\n }\r\n\r\n switch (c.type) {\r\n case CipherType.Login:\r\n cipher.type = 'login';\r\n cipher.login_username = c.login.username;\r\n cipher.login_password = c.login.password;\r\n cipher.login_totp = c.login.totp;\r\n\r\n if (c.login.uris) {\r\n cipher.login_uri = [];\r\n c.login.uris.forEach((u) => {\r\n cipher.login_uri.push(u.uri);\r\n });\r\n }\r\n break;\r\n case CipherType.SecureNote:\r\n cipher.type = 'note';\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n return cipher;\r\n }\r\n}\r\n","import { CipherType } from '../../enums/cipherType';\r\n\r\nimport { CipherView } from '../view/cipherView';\r\n\r\nimport { Card } from './card';\r\nimport { Field } from './field';\r\nimport { Identity } from './identity';\r\nimport { Login } from './login';\r\nimport { SecureNote } from './secureNote';\r\n\r\nexport class Cipher {\r\n static template(): Cipher {\r\n const req = new Cipher();\r\n req.organizationId = null;\r\n req.folderId = null;\r\n req.type = CipherType.Login;\r\n req.name = 'Item name';\r\n req.notes = 'Some notes about this item.';\r\n req.favorite = false;\r\n req.fields = [];\r\n req.login = null;\r\n req.secureNote = null;\r\n req.card = null;\r\n req.identity = null;\r\n return req;\r\n }\r\n\r\n static toView(req: Cipher, view = new CipherView()) {\r\n view.type = req.type;\r\n view.folderId = req.folderId;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n view.name = req.name;\r\n view.notes = req.notes;\r\n view.favorite = req.favorite;\r\n\r\n if (req.fields != null) {\r\n view.fields = req.fields.map((f) => Field.toView(f));\r\n }\r\n\r\n switch (req.type) {\r\n case CipherType.Login:\r\n view.login = Login.toView(req.login);\r\n break;\r\n case CipherType.SecureNote:\r\n view.secureNote = SecureNote.toView(req.secureNote);\r\n break;\r\n case CipherType.Card:\r\n view.card = Card.toView(req.card);\r\n break;\r\n case CipherType.Identity:\r\n view.identity = Identity.toView(req.identity);\r\n break;\r\n }\r\n\r\n return view;\r\n }\r\n\r\n type: CipherType;\r\n folderId: string;\r\n organizationId: string;\r\n name: string;\r\n notes: string;\r\n favorite: boolean;\r\n fields: Field[];\r\n login: Login;\r\n secureNote: SecureNote;\r\n card: Card;\r\n identity: Identity;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CipherView) {\r\n this.organizationId = o.organizationId;\r\n this.folderId = o.folderId;\r\n this.type = o.type;\r\n this.name = o.name;\r\n this.notes = o.notes;\r\n this.favorite = o.favorite;\r\n\r\n if (o.fields != null) {\r\n this.fields = o.fields.map((f) => new Field(f));\r\n }\r\n\r\n switch (o.type) {\r\n case CipherType.Login:\r\n this.login = new Login(o.login);\r\n break;\r\n case CipherType.SecureNote:\r\n this.secureNote = new SecureNote(o.secureNote);\r\n break;\r\n case CipherType.Card:\r\n this.card = new Card(o.card);\r\n break;\r\n case CipherType.Identity:\r\n this.identity = new Identity(o.identity);\r\n break;\r\n }\r\n }\r\n}\r\n","import { CardView } from '../view/cardView';\r\n\r\nexport class Card {\r\n static template(): Card {\r\n const req = new Card();\r\n req.cardholderName = 'John Doe';\r\n req.brand = 'visa';\r\n req.number = '4242424242424242';\r\n req.expMonth = '04';\r\n req.expYear = '2023';\r\n req.code = '123';\r\n return req;\r\n }\r\n\r\n static toView(req: Card, view = new CardView()) {\r\n view.cardholderName = req.cardholderName;\r\n view.brand = req.brand;\r\n view.number = req.number;\r\n view.expMonth = req.expMonth;\r\n view.expYear = req.expYear;\r\n view.code = req.code;\r\n return view;\r\n }\r\n\r\n cardholderName: string;\r\n brand: string;\r\n number: string;\r\n expMonth: string;\r\n expYear: string;\r\n code: string;\r\n\r\n constructor(o?: CardView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.cardholderName = o.cardholderName;\r\n this.brand = o.brand;\r\n this.number = o.number;\r\n this.expMonth = o.expMonth;\r\n this.expYear = o.expYear;\r\n this.code = o.code;\r\n }\r\n}\r\n","import { FieldType } from '../../enums/fieldType';\r\n\r\nimport { FieldView } from '../view/fieldView';\r\n\r\nexport class Field {\r\n static template(): Field {\r\n const req = new Field();\r\n req.name = 'Field name';\r\n req.value = 'Some value';\r\n req.type = FieldType.Text;\r\n return req;\r\n }\r\n\r\n static toView(req: Field, view = new FieldView()) {\r\n view.type = req.type;\r\n view.value = req.value;\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n value: string;\r\n type: FieldType;\r\n\r\n constructor(o?: FieldView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.name = o.name;\r\n this.value = o.value;\r\n this.type = o.type;\r\n }\r\n}\r\n","import { IdentityView } from '../view/identityView';\r\n\r\nexport class Identity {\r\n static template(): Identity {\r\n const req = new Identity();\r\n req.title = 'Mr';\r\n req.firstName = 'John';\r\n req.middleName = 'William';\r\n req.lastName = 'Doe';\r\n req.address1 = '123 Any St';\r\n req.address2 = 'Apt #123';\r\n req.address3 = null;\r\n req.city = 'New York';\r\n req.state = 'NY';\r\n req.postalCode = '10001';\r\n req.country = 'US';\r\n req.company = 'Acme Inc.';\r\n req.email = 'john@company.com';\r\n req.phone = '5555551234';\r\n req.ssn = '000-123-4567';\r\n req.username = 'jdoe';\r\n req.passportNumber = 'US-123456789';\r\n req.licenseNumber = 'D123-12-123-12333';\r\n return req;\r\n }\r\n\r\n static toView(req: Identity, view = new IdentityView()) {\r\n view.title = req.title;\r\n view.firstName = req.firstName;\r\n view.middleName = req.middleName;\r\n view.lastName = req.lastName;\r\n view.address1 = req.address1;\r\n view.address2 = req.address2;\r\n view.address3 = req.address3;\r\n view.city = req.city;\r\n view.state = req.state;\r\n view.postalCode = req.postalCode;\r\n view.country = req.country;\r\n view.company = req.company;\r\n view.email = req.email;\r\n view.phone = req.phone;\r\n view.ssn = req.ssn;\r\n view.username = req.username;\r\n view.passportNumber = req.passportNumber;\r\n view.licenseNumber = req.licenseNumber;\r\n return view;\r\n }\r\n\r\n title: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n address1: string;\r\n address2: string;\r\n address3: string;\r\n city: string;\r\n state: string;\r\n postalCode: string;\r\n country: string;\r\n company: string;\r\n email: string;\r\n phone: string;\r\n ssn: string;\r\n username: string;\r\n passportNumber: string;\r\n licenseNumber: string;\r\n\r\n constructor(o?: IdentityView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.title = o.title;\r\n this.firstName = o.firstName;\r\n this.middleName = o.middleName;\r\n this.lastName = o.lastName;\r\n this.address1 = o.address1;\r\n this.address2 = o.address2;\r\n this.address3 = o.address3;\r\n this.city = o.city;\r\n this.state = o.state;\r\n this.postalCode = o.postalCode;\r\n this.country = o.country;\r\n this.company = o.company;\r\n this.email = o.email;\r\n this.phone = o.phone;\r\n this.ssn = o.ssn;\r\n this.username = o.username;\r\n this.passportNumber = o.passportNumber;\r\n this.licenseNumber = o.licenseNumber;\r\n }\r\n}\r\n","import { LoginUri } from './loginUri';\r\n\r\nimport { LoginView } from '../view/loginView';\r\n\r\nexport class Login {\r\n static template(): Login {\r\n const req = new Login();\r\n req.uris = [];\r\n req.username = 'jdoe';\r\n req.password = 'myp@ssword123';\r\n req.totp = 'JBSWY3DPEHPK3PXP';\r\n return req;\r\n }\r\n\r\n static toView(req: Login, view = new LoginView()) {\r\n if (req.uris != null) {\r\n view.uris = req.uris.map((u) => LoginUri.toView(u));\r\n }\r\n view.username = req.username;\r\n view.password = req.password;\r\n view.totp = req.totp;\r\n return view;\r\n }\r\n\r\n uris: LoginUri[];\r\n username: string;\r\n password: string;\r\n totp: string;\r\n\r\n constructor(o?: LoginView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n if (o.uris != null) {\r\n this.uris = o.uris.map((u) => new LoginUri(u));\r\n }\r\n\r\n this.username = o.username;\r\n this.password = o.password;\r\n this.totp = o.totp;\r\n }\r\n}\r\n","import { UriMatchType } from '../../enums/uriMatchType';\r\n\r\nimport { LoginUriView } from '../view/loginUriView';\r\n\r\nexport class LoginUri {\r\n static template(): LoginUri {\r\n const req = new LoginUri();\r\n req.uri = 'https://google.com';\r\n req.match = null;\r\n return req;\r\n }\r\n\r\n static toView(req: LoginUri, view = new LoginUriView()) {\r\n view.uri = req.uri;\r\n view.match = req.match;\r\n return view;\r\n }\r\n\r\n uri: string;\r\n match: UriMatchType = null;\r\n\r\n constructor(o?: LoginUriView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.uri = o.uri;\r\n this.match = o.match;\r\n }\r\n}\r\n","import { SecureNoteType } from '../../enums/secureNoteType';\r\n\r\nimport { SecureNoteView } from '../view/secureNoteView';\r\n\r\nexport class SecureNote {\r\n static template(): SecureNote {\r\n const req = new SecureNote();\r\n req.type = SecureNoteType.Generic;\r\n return req;\r\n }\r\n\r\n static toView(req: SecureNote, view = new SecureNoteView()) {\r\n view.type = req.type;\r\n return view;\r\n }\r\n\r\n type: SecureNoteType;\r\n\r\n constructor(o?: SecureNoteView) {\r\n if (o == null) {\r\n return;\r\n }\r\n\r\n this.type = o.type;\r\n }\r\n}\r\n","import { CollectionView } from '../view/collectionView';\r\n\r\nexport class Collection {\r\n static template(): Collection {\r\n const req = new Collection();\r\n req.organizationId = '00000000-0000-0000-0000-000000000000';\r\n req.name = 'Collection name';\r\n return req;\r\n }\r\n\r\n static toView(req: Collection, view = new CollectionView()) {\r\n view.name = req.name;\r\n if (view.organizationId == null) {\r\n view.organizationId = req.organizationId;\r\n }\r\n return view;\r\n }\r\n\r\n organizationId: string;\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: CollectionView) {\r\n this.organizationId = o.organizationId;\r\n this.name = o.name;\r\n }\r\n}\r\n","import { FolderView } from '../view/folderView';\r\n\r\nexport class Folder {\r\n static template(): Folder {\r\n const req = new Folder();\r\n req.name = 'Folder name';\r\n return req;\r\n }\r\n\r\n static toView(req: Folder, view = new FolderView()) {\r\n view.name = req.name;\r\n return view;\r\n }\r\n\r\n name: string;\r\n\r\n // Use build method instead of ctor so that we can control order of JSON stringify for pretty print\r\n build(o: FolderView) {\r\n this.name = o.name;\r\n }\r\n}\r\n","import { ApiService } from '../abstractions/api.service';\nimport { CipherService } from '../abstractions/cipher.service';\nimport { CollectionService } from '../abstractions/collection.service';\nimport { FolderService } from '../abstractions/folder.service';\nimport { I18nService } from '../abstractions/i18n.service';\nimport {\n ImportOption,\n ImportService as ImportServiceAbstraction,\n} from '../abstractions/import.service';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherRequest } from '../models/request/cipherRequest';\nimport { CollectionRequest } from '../models/request/collectionRequest';\nimport { FolderRequest } from '../models/request/folderRequest';\nimport { ImportCiphersRequest } from '../models/request/importCiphersRequest';\nimport { ImportOrganizationCiphersRequest } from '../models/request/importOrganizationCiphersRequest';\nimport { KvpRequest } from '../models/request/kvpRequest';\n\nimport { CipherView } from '../models/view/cipherView';\n\nimport { AscendoCsvImporter } from '../importers/ascendoCsvImporter';\nimport { AvastCsvImporter } from '../importers/avastCsvImporter';\nimport { AviraCsvImporter } from '../importers/aviraCsvImporter';\nimport { BitwardenCsvImporter } from '../importers/bitwardenCsvImporter';\nimport { BitwardenJsonImporter } from '../importers/bitwardenJsonImporter';\nimport { BlurCsvImporter } from '../importers/blurCsvImporter';\nimport { ChromeCsvImporter } from '../importers/chromeCsvImporter';\nimport { ClipperzHtmlImporter } from '../importers/clipperzHtmlImporter';\nimport { DashlaneJsonImporter } from '../importers/dashlaneJsonImporter';\nimport { EnpassCsvImporter } from '../importers/enpassCsvImporter';\nimport { EnpassJsonImporter } from '../importers/enpassJsonImporter';\nimport { FirefoxCsvImporter } from '../importers/firefoxCsvImporter';\nimport { GnomeJsonImporter } from '../importers/gnomeJsonImporter';\nimport { Importer } from '../importers/importer';\nimport { KeePass2XmlImporter } from '../importers/keepass2XmlImporter';\nimport { KeePassXCsvImporter } from '../importers/keepassxCsvImporter';\nimport { KeeperCsvImporter } from '../importers/keeperCsvImporter';\nimport { LastPassCsvImporter } from '../importers/lastpassCsvImporter';\nimport { MeldiumCsvImporter } from '../importers/meldiumCsvImporter';\nimport { MSecureCsvImporter } from '../importers/msecureCsvImporter';\nimport { OnePassword1PifImporter } from '../importers/onepassword1PifImporter';\nimport { OnePasswordWinCsvImporter } from '../importers/onepasswordWinCsvImporter';\nimport { PadlockCsvImporter } from '../importers/padlockCsvImporter';\nimport { PassKeepCsvImporter } from '../importers/passkeepCsvImporter';\nimport { PassmanJsonImporter } from '../importers/passmanJsonImporter';\nimport { PasspackCsvImporter } from '../importers/passpackCsvImporter';\nimport { PasswordAgentCsvImporter } from '../importers/passwordAgentCsvImporter';\nimport { PasswordBossJsonImporter } from '../importers/passwordBossJsonImporter';\nimport { PasswordDragonXmlImporter } from '../importers/passwordDragonXmlImporter';\nimport { PasswordSafeXmlImporter } from '../importers/passwordSafeXmlImporter';\nimport { RoboFormCsvImporter } from '../importers/roboformCsvImporter';\nimport { SafeInCloudXmlImporter } from '../importers/safeInCloudXmlImporter';\nimport { SaferPassCsvImporter } from '../importers/saferpassCsvImport';\nimport { SplashIdCsvImporter } from '../importers/splashIdCsvImporter';\nimport { StickyPasswordXmlImporter } from '../importers/stickyPasswordXmlImporter';\nimport { TrueKeyCsvImporter } from '../importers/truekeyCsvImporter';\nimport { UpmCsvImporter } from '../importers/upmCsvImporter';\nimport { ZohoVaultCsvImporter } from '../importers/zohoVaultCsvImporter';\n\nexport class ImportService implements ImportServiceAbstraction {\n featuredImportOptions = [\n { id: 'bitwardenjson', name: 'Bitwarden (json)' },\n { id: 'bitwardencsv', name: 'Bitwarden (csv)' },\n { id: 'lastpasscsv', name: 'LastPass (csv)' },\n { id: 'chromecsv', name: 'Chrome (csv)' },\n { id: 'firefoxcsv', name: 'Firefox (csv)' },\n { id: 'keepass2xml', name: 'KeePass 2 (xml)' },\n { id: '1password1pif', name: '1Password (1pif)' },\n { id: 'dashlanejson', name: 'Dashlane (json)' },\n ];\n\n regularImportOptions: ImportOption[] = [\n { id: 'keepassxcsv', name: 'KeePassX (csv)' },\n { id: '1passwordwincsv', name: '1Password 6 and 7 Windows (csv)' },\n { id: 'roboformcsv', name: 'RoboForm (csv)' },\n { id: 'keepercsv', name: 'Keeper (csv)' },\n { id: 'enpasscsv', name: 'Enpass (csv)' },\n { id: 'enpassjson', name: 'Enpass (json)' },\n { id: 'safeincloudxml', name: 'SafeInCloud (xml)' },\n { id: 'pwsafexml', name: 'Password Safe (xml)' },\n { id: 'stickypasswordxml', name: 'Sticky Password (xml)' },\n { id: 'msecurecsv', name: 'mSecure (csv)' },\n { id: 'truekeycsv', name: 'True Key (csv)' },\n { id: 'passwordbossjson', name: 'Password Boss (json)' },\n { id: 'zohovaultcsv', name: 'Zoho Vault (csv)' },\n { id: 'splashidcsv', name: 'SplashID (csv)' },\n { id: 'passworddragonxml', name: 'Password Dragon (xml)' },\n { id: 'padlockcsv', name: 'Padlock (csv)' },\n { id: 'passboltcsv', name: 'Passbolt (csv)' },\n { id: 'clipperzhtml', name: 'Clipperz (html)' },\n { id: 'aviracsv', name: 'Avira (csv)' },\n { id: 'saferpasscsv', name: 'SaferPass (csv)' },\n { id: 'upmcsv', name: 'Universal Password Manager (csv)' },\n { id: 'ascendocsv', name: 'Ascendo DataVault (csv)' },\n { id: 'meldiumcsv', name: 'Meldium (csv)' },\n { id: 'passkeepcsv', name: 'PassKeep (csv)' },\n { id: 'operacsv', name: 'Opera (csv)' },\n { id: 'vivaldicsv', name: 'Vivaldi (csv)' },\n { id: 'gnomejson', name: 'GNOME Passwords and Keys/Seahorse (json)' },\n { id: 'blurcsv', name: 'Blur (csv)' },\n { id: 'passwordagentcsv', name: 'Password Agent (csv)' },\n { id: 'passpackcsv', name: 'Passpack (csv)' },\n { id: 'passmanjson', name: 'Passman (json)' },\n { id: 'avastcsv', name: 'Avast Passwords (csv)' },\n ];\n\n constructor(private cipherService: CipherService, private folderService: FolderService,\n private apiService: ApiService, private i18nService: I18nService,\n private collectionService: CollectionService) { }\n\n getImportOptions(): ImportOption[] {\n return this.featuredImportOptions.concat(this.regularImportOptions);\n }\n\n async import(importer: Importer, fileContents: string, organizationId: string = null): Promise {\n const importResult = await importer.parse(fileContents);\n if (importResult.success) {\n if (importResult.folders.length === 0 && importResult.ciphers.length === 0) {\n return new Error(this.i18nService.t('importNothingError'));\n } else if (importResult.ciphers.length > 0) {\n const halfway = Math.floor(importResult.ciphers.length / 2);\n const last = importResult.ciphers.length - 1;\n\n if (this.badData(importResult.ciphers[0]) &&\n this.badData(importResult.ciphers[halfway]) &&\n this.badData(importResult.ciphers[last])) {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n await this.postImport(importResult, organizationId);\n return null;\n } else {\n return new Error(this.i18nService.t('importFormatError'));\n }\n }\n\n getImporter(format: string, organization = false): Importer {\n const importer = this.getImporterInstance(format);\n if (importer == null) {\n return null;\n }\n importer.organization = organization;\n return importer;\n }\n\n private getImporterInstance(format: string) {\n if (format == null || format === '') {\n return null;\n }\n\n switch (format) {\n case 'bitwardencsv':\n return new BitwardenCsvImporter();\n case 'bitwardenjson':\n return new BitwardenJsonImporter();\n case 'lastpasscsv':\n case 'passboltcsv':\n return new LastPassCsvImporter();\n case 'keepassxcsv':\n return new KeePassXCsvImporter();\n case 'aviracsv':\n return new AviraCsvImporter();\n case 'blurcsv':\n return new BlurCsvImporter();\n case 'safeincloudxml':\n return new SafeInCloudXmlImporter();\n case 'padlockcsv':\n return new PadlockCsvImporter();\n case 'keepass2xml':\n return new KeePass2XmlImporter();\n case 'chromecsv':\n case 'operacsv':\n case 'vivaldicsv':\n return new ChromeCsvImporter();\n case 'firefoxcsv':\n return new FirefoxCsvImporter();\n case 'upmcsv':\n return new UpmCsvImporter();\n case 'saferpasscsv':\n return new SaferPassCsvImporter();\n case 'meldiumcsv':\n return new MeldiumCsvImporter();\n case '1password1pif':\n return new OnePassword1PifImporter();\n case '1passwordwincsv':\n return new OnePasswordWinCsvImporter();\n case 'keepercsv':\n return new KeeperCsvImporter();\n case 'passworddragonxml':\n return new PasswordDragonXmlImporter();\n case 'enpasscsv':\n return new EnpassCsvImporter();\n case 'enpassjson':\n return new EnpassJsonImporter();\n case 'pwsafexml':\n return new PasswordSafeXmlImporter();\n case 'dashlanejson':\n return new DashlaneJsonImporter();\n case 'msecurecsv':\n return new MSecureCsvImporter();\n case 'stickypasswordxml':\n return new StickyPasswordXmlImporter();\n case 'truekeycsv':\n return new TrueKeyCsvImporter();\n case 'clipperzhtml':\n return new ClipperzHtmlImporter();\n case 'roboformcsv':\n return new RoboFormCsvImporter();\n case 'ascendocsv':\n return new AscendoCsvImporter();\n case 'passwordbossjson':\n return new PasswordBossJsonImporter();\n case 'zohovaultcsv':\n return new ZohoVaultCsvImporter();\n case 'splashidcsv':\n return new SplashIdCsvImporter();\n case 'passkeepcsv':\n return new PassKeepCsvImporter();\n case 'gnomejson':\n return new GnomeJsonImporter();\n case 'passwordagentcsv':\n return new PasswordAgentCsvImporter();\n case 'passpackcsv':\n return new PasspackCsvImporter();\n case 'passmanjson':\n return new PassmanJsonImporter();\n case 'avastcsv':\n return new AvastCsvImporter();\n default:\n return null;\n }\n }\n\n private async postImport(importResult: ImportResult, organizationId: string = null) {\n if (organizationId == null) {\n const request = new ImportCiphersRequest();\n for (let i = 0; i < importResult.ciphers.length; i++) {\n const c = await this.cipherService.encrypt(importResult.ciphers[i]);\n request.ciphers.push(new CipherRequest(c));\n }\n if (importResult.folders != null) {\n for (let i = 0; i < importResult.folders.length; i++) {\n const f = await this.folderService.encrypt(importResult.folders[i]);\n request.folders.push(new FolderRequest(f));\n }\n }\n if (importResult.folderRelationships != null) {\n importResult.folderRelationships.forEach((r) =>\n request.folderRelationships.push(new KvpRequest(r[0], r[1])));\n }\n return await this.apiService.postImportCiphers(request);\n } else {\n const request = new ImportOrganizationCiphersRequest();\n for (let i = 0; i < importResult.ciphers.length; i++) {\n importResult.ciphers[i].organizationId = organizationId;\n const c = await this.cipherService.encrypt(importResult.ciphers[i]);\n request.ciphers.push(new CipherRequest(c));\n }\n if (importResult.collections != null) {\n for (let i = 0; i < importResult.collections.length; i++) {\n importResult.collections[i].organizationId = organizationId;\n const c = await this.collectionService.encrypt(importResult.collections[i]);\n request.collections.push(new CollectionRequest(c));\n }\n }\n if (importResult.collectionRelationships != null) {\n importResult.collectionRelationships.forEach((r) =>\n request.collectionRelationships.push(new KvpRequest(r[0], r[1])));\n }\n return await this.apiService.postImportOrganizationCiphers(organizationId, request);\n }\n }\n\n private badData(c: CipherView) {\n return (c.name == null || c.name === '--') &&\n (c.login != null && (c.login.password == null || c.login.password === ''));\n }\n}\n","import { CipherRequest } from './cipherRequest';\nimport { FolderRequest } from './folderRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportCiphersRequest {\n ciphers: CipherRequest[] = [];\n folders: FolderRequest[] = [];\n folderRelationships: Array> = [];\n}\n","import { CipherRequest } from './cipherRequest';\nimport { CollectionRequest } from './collectionRequest';\nimport { KvpRequest } from './kvpRequest';\n\nexport class ImportOrganizationCiphersRequest {\n ciphers: CipherRequest[] = [];\n collections: CollectionRequest[] = [];\n collectionRelationships: Array> = [];\n}\n","export class KvpRequest {\n key: TK;\n value: TV;\n\n constructor(key: TK, value: TV) {\n this.key = key;\n this.value = value;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class AscendoCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 2) {\r\n return;\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[value.length - 1]);\r\n cipher.name = this.getValueOrDefault(value[0], '--');\r\n\r\n if (value.length > 2 && (value.length % 2) === 0) {\r\n for (let i = 0; i < value.length - 2; i += 2) {\r\n const val: string = value[i + 2];\r\n const field: string = value[i + 1];\r\n if (this.isNullOrWhitespace(val) || this.isNullOrWhitespace(field)) {\r\n continue;\r\n }\r\n\r\n const fieldLower = field.toLowerCase();\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(val);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(val);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(val);\r\n } else {\r\n this.processKvp(cipher, field, val);\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AvastCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name);\n cipher.login.uris = this.makeUriArray(value.web);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.username = this.getValueOrDefault(value.login);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class AviraCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name,\n this.getValueOrDefault(this.nameFromUrl(value.website), '--'));\n cipher.login.uris = this.makeUriArray(value.website);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.username) && !this.isNullOrWhitespace(value.secondary_username)) {\n cipher.login.username = value.secondary_username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.notes = this.getValueOrDefault(value.secondary_username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { CollectionView } from '../models/view/collectionView';\r\nimport { FieldView } from '../models/view/fieldView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class BitwardenCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.organization && !this.isNullOrWhitespace(value.collections)) {\r\n const collections = (value.collections as string).split(',');\r\n collections.forEach((col) => {\r\n let addCollection = true;\r\n let collectionIndex = result.collections.length;\r\n\r\n for (let i = 0; i < result.collections.length; i++) {\r\n if (result.collections[i].name === col) {\r\n addCollection = false;\r\n collectionIndex = i;\r\n break;\r\n }\r\n }\r\n\r\n if (addCollection) {\r\n const collection = new CollectionView();\r\n collection.name = col;\r\n result.collections.push(collection);\r\n }\r\n\r\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\r\n });\r\n } else if (!this.organization) {\r\n this.processFolder(result, value.folder);\r\n }\r\n\r\n const cipher = new CipherView();\r\n cipher.favorite = !this.organization && this.getValueOrDefault(value.favorite, '0') !== '0' ? true : false;\r\n cipher.type = CipherType.Login;\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n\r\n if (!this.isNullOrWhitespace(value.fields)) {\r\n const fields = this.splitNewLine(value.fields);\r\n for (let i = 0; i < fields.length; i++) {\r\n if (this.isNullOrWhitespace(fields[i])) {\r\n continue;\r\n }\r\n\r\n const delimPosition = fields[i].lastIndexOf(': ');\r\n if (delimPosition === -1) {\r\n continue;\r\n }\r\n\r\n if (cipher.fields == null) {\r\n cipher.fields = [];\r\n }\r\n\r\n const field = new FieldView();\r\n field.name = fields[i].substr(0, delimPosition);\r\n field.value = null;\r\n field.type = FieldType.Text;\r\n if (fields[i].length > (delimPosition + 2)) {\r\n field.value = fields[i].substr(delimPosition + 2);\r\n }\r\n cipher.fields.push(field);\r\n }\r\n }\r\n\r\n const valueType = value.type != null ? value.type.toLowerCase() : null;\r\n switch (valueType) {\r\n case 'note':\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n break;\r\n default:\r\n cipher.type = CipherType.Login;\r\n cipher.login = new LoginView();\r\n cipher.login.totp = this.getValueOrDefault(value.login_totp || value.totp);\r\n cipher.login.username = this.getValueOrDefault(value.login_username || value.username);\r\n cipher.login.password = this.getValueOrDefault(value.login_password || value.password);\r\n const uris = this.parseSingleRowCsv(value.login_uri || value.uri);\r\n cipher.login.uris = this.makeUriArray(uris);\r\n break;\r\n }\r\n\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherWithIds } from '../models/export/cipherWithIds';\r\nimport { CollectionWithId } from '../models/export/collectionWithId';\r\nimport { FolderWithId } from '../models/export/folderWithId';\r\n\r\nexport class BitwardenJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.items == null || results.items.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const groupingsMap = new Map();\r\n if (this.organization && results.collections != null) {\r\n results.collections.forEach((c: CollectionWithId) => {\r\n const collection = CollectionWithId.toView(c);\r\n if (collection != null) {\r\n collection.id = null;\r\n collection.organizationId = null;\r\n groupingsMap.set(c.id, result.collections.length);\r\n result.collections.push(collection);\r\n }\r\n });\r\n } else if (!this.organization && results.folders != null) {\r\n results.folders.forEach((f: FolderWithId) => {\r\n const folder = FolderWithId.toView(f);\r\n if (folder != null) {\r\n folder.id = null;\r\n groupingsMap.set(f.id, result.folders.length);\r\n result.folders.push(folder);\r\n }\r\n });\r\n }\r\n\r\n results.items.forEach((c: CipherWithIds) => {\r\n const cipher = CipherWithIds.toView(c);\r\n // reset ids incase they were set for some reason\r\n cipher.id = null;\r\n cipher.folderId = null;\r\n cipher.organizationId = null;\r\n cipher.collectionIds = null;\r\n\r\n if (!this.organization && c.folderId != null && groupingsMap.has(c.folderId)) {\r\n result.folderRelationships.push([result.ciphers.length, groupingsMap.get(c.folderId)]);\r\n } else if (this.organization && c.collectionIds != null) {\r\n c.collectionIds.forEach((cId) => {\r\n if (groupingsMap.has(cId)) {\r\n result.collectionRelationships.push([result.ciphers.length, groupingsMap.get(cId)]);\r\n }\r\n });\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class BlurCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.label === 'null') {\n value.label = null;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.label,\n this.getValueOrDefault(this.nameFromUrl(value.domain), '--'));\n cipher.login.uris = this.makeUriArray(value.domain);\n cipher.login.password = this.getValueOrDefault(value.password);\n\n if (this.isNullOrWhitespace(value.email) && !this.isNullOrWhitespace(value.username)) {\n cipher.login.username = value.username;\n } else {\n cipher.login.username = this.getValueOrDefault(value.email);\n cipher.notes = this.getValueOrDefault(value.username);\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class ChromeCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.name, '--');\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class ClipperzHtmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const textarea = doc.querySelector('textarea');\r\n if (textarea == null || this.isNullOrWhitespace(textarea.textContent)) {\r\n result.errorMessage = 'Missing textarea.';\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const entries = JSON.parse(textarea.textContent);\r\n entries.forEach((entry: any) => {\r\n const cipher = this.initLoginCipher();\r\n if (!this.isNullOrWhitespace(entry.label)) {\r\n cipher.name = entry.label.split(' ')[0];\r\n }\r\n if (entry.data != null && !this.isNullOrWhitespace(entry.data.notes)) {\r\n cipher.notes = entry.data.notes.split('\\\\n').join('\\n');\r\n }\r\n\r\n if (entry.currentVersion != null && entry.currentVersion.fields != null) {\r\n for (const property in entry.currentVersion.fields) {\r\n if (!entry.currentVersion.fields.hasOwnProperty(property)) {\r\n continue;\r\n }\r\n\r\n const field = entry.currentVersion.fields[property];\r\n const actionType = field.actionType != null ? field.actionType.toLowerCase() : null;\r\n switch (actionType) {\r\n case 'password':\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n break;\r\n case 'email':\r\n case 'username':\r\n case 'user':\r\n case 'name':\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n break;\r\n case 'url':\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n break;\r\n default:\r\n const labelLower = field.label != null ? field.label.toLowerCase() : null;\r\n if (cipher.login.password == null && this.passwordFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.password = this.getValueOrDefault(field.value);\r\n } else if (cipher.login.username == null &&\r\n this.usernameFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.username = this.getValueOrDefault(field.value);\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(labelLower) > -1) {\r\n cipher.login.uris = this.makeUriArray(field.value);\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { IdentityView } from '../models/view/identityView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nconst HandledResults = new Set(['ADDRESS', 'AUTHENTIFIANT', 'BANKSTATEMENT', 'IDCARD', 'IDENTITY',\r\n 'PAYMENTMEANS_CREDITCARD', 'PAYMENTMEAN_PAYPAL', 'EMAIL']);\r\n\r\nexport class DashlaneJsonImporter extends BaseImporter implements Importer {\r\n private result: ImportResult;\r\n\r\n parse(data: string): ImportResult {\r\n this.result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.length === 0) {\r\n this.result.success = false;\r\n return this.result;\r\n }\r\n\r\n if (results.ADDRESS != null) {\r\n this.processAddress(results.ADDRESS);\r\n }\r\n if (results.AUTHENTIFIANT != null) {\r\n this.processAuth(results.AUTHENTIFIANT);\r\n }\r\n if (results.BANKSTATEMENT != null) {\r\n this.processNote(results.BANKSTATEMENT, 'BankAccountName');\r\n }\r\n if (results.IDCARD != null) {\r\n this.processNote(results.IDCARD, 'Fullname');\r\n }\r\n if (results.PAYMENTMEANS_CREDITCARD != null) {\r\n this.processCard(results.PAYMENTMEANS_CREDITCARD);\r\n }\r\n if (results.IDENTITY != null) {\r\n this.processIdentity(results.IDENTITY);\r\n }\r\n\r\n for (const key in results) {\r\n if (results.hasOwnProperty(key) && !HandledResults.has(key)) {\r\n this.processNote(results[key], null, 'Generic Note');\r\n }\r\n }\r\n\r\n this.result.success = true;\r\n return this.result;\r\n }\r\n\r\n private processAuth(results: any[]) {\r\n results.forEach((credential: any) => {\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(credential.title);\r\n\r\n cipher.login.username = this.getValueOrDefault(credential.login,\r\n this.getValueOrDefault(credential.secondaryLogin));\r\n if (this.isNullOrWhitespace(cipher.login.username)) {\r\n cipher.login.username = this.getValueOrDefault(credential.email);\r\n } else if (!this.isNullOrWhitespace(credential.email)) {\r\n cipher.notes = ('Email: ' + credential.email + '\\n');\r\n }\r\n\r\n cipher.login.password = this.getValueOrDefault(credential.password);\r\n cipher.login.uris = this.makeUriArray(credential.domain);\r\n cipher.notes += this.getValueOrDefault(credential.note, '');\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processIdentity(results: any[]) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.identity = new IdentityView();\r\n cipher.type = CipherType.Identity;\r\n cipher.name = this.getValueOrDefault(obj.fullName, '');\r\n const nameParts = cipher.name.split(' ');\r\n if (nameParts.length > 0) {\r\n cipher.identity.firstName = this.getValueOrDefault(nameParts[0]);\r\n }\r\n if (nameParts.length === 2) {\r\n cipher.identity.lastName = this.getValueOrDefault(nameParts[1]);\r\n } else if (nameParts.length === 3) {\r\n cipher.identity.middleName = this.getValueOrDefault(nameParts[1]);\r\n cipher.identity.lastName = this.getValueOrDefault(nameParts[2]);\r\n }\r\n cipher.identity.username = this.getValueOrDefault(obj.pseudo);\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processAddress(results: any[]) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.identity = new IdentityView();\r\n cipher.type = CipherType.Identity;\r\n cipher.name = this.getValueOrDefault(obj.addressName);\r\n cipher.identity.address1 = this.getValueOrDefault(obj.addressFull);\r\n cipher.identity.city = this.getValueOrDefault(obj.city);\r\n cipher.identity.state = this.getValueOrDefault(obj.state);\r\n cipher.identity.postalCode = this.getValueOrDefault(obj.zipcode);\r\n cipher.identity.country = this.getValueOrDefault(obj.country);\r\n if (cipher.identity.country != null) {\r\n cipher.identity.country = cipher.identity.country.toUpperCase();\r\n }\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processCard(results: any[]) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.card = new CardView();\r\n cipher.type = CipherType.Card;\r\n cipher.name = this.getValueOrDefault(obj.bank);\r\n cipher.card.number = this.getValueOrDefault(obj.cardNumber);\r\n cipher.card.brand = this.getCardBrand(cipher.card.number);\r\n cipher.card.cardholderName = this.getValueOrDefault(obj.owner);\r\n if (!this.isNullOrWhitespace(cipher.card.brand)) {\r\n if (this.isNullOrWhitespace(cipher.name)) {\r\n cipher.name = cipher.card.brand;\r\n } else {\r\n cipher.name += (' - ' + cipher.card.brand);\r\n }\r\n }\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n private processNote(results: any[], nameProperty: string, name: string = null) {\r\n results.forEach((obj: any) => {\r\n const cipher = new CipherView();\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.type = CipherType.SecureNote;\r\n if (name != null) {\r\n cipher.name = name;\r\n } else {\r\n cipher.name = this.getValueOrDefault(obj[nameProperty]);\r\n }\r\n for (const key in obj) {\r\n if (obj.hasOwnProperty(key) && key !== nameProperty) {\r\n this.processKvp(cipher, key, obj[key].toString());\r\n }\r\n }\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nimport { CardView } from '../models/view/cardView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nexport class EnpassCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n let firstRow = true;\n results.forEach((value) => {\n if (value.length < 2 || (firstRow && (value[0] === 'Title' || value[0] === 'title'))) {\n firstRow = false;\n return;\n }\n\n const cipher = this.initLoginCipher();\n cipher.notes = this.getValueOrDefault(value[value.length - 1]);\n cipher.name = this.getValueOrDefault(value[0], '--');\n\n if (value.length === 2 || (!this.containsField(value, 'username') &&\n !this.containsField(value, 'password') && !this.containsField(value, 'email') &&\n !this.containsField(value, 'url'))) {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n }\n\n if (this.containsField(value, 'cardholder') && this.containsField(value, 'number') &&\n this.containsField(value, 'expiry date')) {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n }\n\n if (value.length > 2 && (value.length % 2) === 0) {\n for (let i = 0; i < value.length - 2; i += 2) {\n const fieldValue: string = value[i + 2];\n if (this.isNullOrWhitespace(fieldValue)) {\n continue;\n }\n\n const fieldName: string = value[i + 1];\n const fieldNameLower = fieldName.toLowerCase();\n\n if (cipher.type === CipherType.Login) {\n if (fieldNameLower === 'url' && (cipher.login.uris == null || cipher.login.uris.length === 0)) {\n cipher.login.uris = this.makeUriArray(fieldValue);\n continue;\n } else if ((fieldNameLower === 'username' || fieldNameLower === 'email') &&\n this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = fieldValue;\n continue;\n } else if (fieldNameLower === 'password' && this.isNullOrWhitespace(cipher.login.password)) {\n cipher.login.password = fieldValue;\n continue;\n } else if (fieldNameLower === 'totp' && this.isNullOrWhitespace(cipher.login.totp)) {\n cipher.login.totp = fieldValue;\n continue;\n }\n } else if (cipher.type === CipherType.Card) {\n if (fieldNameLower === 'cardholder' && this.isNullOrWhitespace(cipher.card.cardholderName)) {\n cipher.card.cardholderName = fieldValue;\n continue;\n } else if (fieldNameLower === 'number' && this.isNullOrWhitespace(cipher.card.number)) {\n cipher.card.number = fieldValue;\n cipher.card.brand = this.getCardBrand(fieldValue);\n continue;\n } else if (fieldNameLower === 'cvc' && this.isNullOrWhitespace(cipher.card.code)) {\n cipher.card.code = fieldValue;\n continue;\n } else if (fieldNameLower === 'expiry date' && this.isNullOrWhitespace(cipher.card.expMonth) &&\n this.isNullOrWhitespace(cipher.card.expYear)) {\n const parts = fieldValue.split('/');\n if (parts.length === 2) {\n let month: string = null;\n let year: string = null;\n if (parts[0].length === 1 || parts[0].length === 2) {\n month = parts[0];\n if (month.length === 2 && month[0] === '0') {\n month = month.substr(1, 1);\n }\n }\n if (parts[1].length === 2 || parts[1].length === 4) {\n year = month.length === 2 ? '20' + parts[1] : parts[1];\n }\n if (month != null && year != null) {\n cipher.card.expMonth = month;\n cipher.card.expYear = year;\n continue;\n }\n }\n } else if (fieldNameLower === 'type') {\n // Skip since brand was determined from number above\n continue;\n }\n }\n\n this.processKvp(cipher, fieldName, fieldValue);\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n\n private containsField(fields: any[], name: string) {\n if (fields == null || name == null) {\n return false;\n }\n return fields.filter((f) => !this.isNullOrWhitespace(f) &&\n f.toLowerCase() === name.toLowerCase()).length > 0;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nexport class EnpassJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.items == null || results.items.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.items.forEach((item: any) => {\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(item.title);\r\n cipher.favorite = item.favorite > 0;\r\n\r\n if (item.template_type != null && item.fields != null && item.fields.length > 0) {\r\n if (item.template_type.indexOf('login.') === 0 || item.template_type.indexOf('password.') === 0) {\r\n this.processLogin(cipher, item.fields);\r\n } else if (item.template_type.indexOf('creditcard.') === 0) {\r\n this.processCard(cipher, item.fields);\r\n } else if (item.template_type.indexOf('identity.') < 0 &&\r\n item.fields.find((f: any) => f.type === 'password' && !this.isNullOrWhitespace(f.value)) != null) {\r\n this.processLogin(cipher, item.fields);\r\n } else {\r\n this.processNote(cipher, item.fields);\r\n }\r\n }\r\n\r\n cipher.notes += ('\\n' + this.getValueOrDefault(item.note, ''));\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private processLogin(cipher: CipherView, fields: any[]) {\r\n const urls: string[] = [];\r\n fields.forEach((field: any) => {\r\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\r\n return;\r\n }\r\n\r\n if ((field.type === 'username' || field.type === 'email') &&\r\n this.isNullOrWhitespace(cipher.login.username)) {\r\n cipher.login.username = field.value;\r\n } else if (field.type === 'password' && this.isNullOrWhitespace(cipher.login.password)) {\r\n cipher.login.password = field.value;\r\n } else if (field.type === 'totp' && this.isNullOrWhitespace(cipher.login.totp)) {\r\n cipher.login.totp = field.value;\r\n } else if (field.type === 'url') {\r\n urls.push(field.value);\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n });\r\n cipher.login.uris = this.makeUriArray(urls);\r\n }\r\n\r\n private processCard(cipher: CipherView, fields: any[]) {\r\n cipher.card = new CardView();\r\n cipher.type = CipherType.Card;\r\n fields.forEach((field: any) => {\r\n if (this.isNullOrWhitespace(field.value) || field.type === 'section' || field.type === 'ccType') {\r\n return;\r\n }\r\n\r\n if (field.type === 'ccName' && this.isNullOrWhitespace(cipher.card.cardholderName)) {\r\n cipher.card.cardholderName = field.value;\r\n } else if (field.type === 'ccNumber' && this.isNullOrWhitespace(cipher.card.number)) {\r\n cipher.card.number = field.value;\r\n cipher.card.brand = this.getCardBrand(cipher.card.number);\r\n } else if (field.type === 'ccCvc' && this.isNullOrWhitespace(cipher.card.code)) {\r\n cipher.card.code = field.value;\r\n } else if (field.type === 'ccExpiry' && this.isNullOrWhitespace(cipher.card.expYear)) {\r\n const parts = field.value.split('/');\r\n if (parts.length === 2) {\r\n let month: string = null;\r\n let year: string = null;\r\n if (parts[0].length === 1 || parts[0].length === 2) {\r\n month = parts[0];\r\n if (month.length === 2 && month[0] === '0') {\r\n month = month.substr(1, 1);\r\n }\r\n }\r\n if (parts[1].length === 2 || parts[1].length === 4) {\r\n year = month.length === 2 ? '20' + parts[1] : parts[1];\r\n }\r\n if (month != null && year != null) {\r\n cipher.card.expMonth = month;\r\n cipher.card.expYear = year;\r\n }\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n } else {\r\n this.processKvp(cipher, field.label, field.value);\r\n }\r\n });\r\n }\r\n\r\n private processNote(cipher: CipherView, fields: any[]) {\r\n fields.forEach((field: any) => {\r\n if (this.isNullOrWhitespace(field.value) || field.type === 'section') {\r\n return;\r\n }\r\n this.processKvp(cipher, field.label, field.value);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class FirefoxCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(this.nameFromUrl(value.hostname), '--');\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.hostname);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class GnomeJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || Object.keys(results).length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n for (const keyRing in results) {\r\n if (!results.hasOwnProperty(keyRing) || this.isNullOrWhitespace(keyRing) ||\r\n results[keyRing].length === 0) {\r\n continue;\r\n }\r\n\r\n results[keyRing].forEach((value: any) => {\r\n if (this.isNullOrWhitespace(value.display_name) || value.display_name.indexOf('http') !== 0) {\r\n return;\r\n }\r\n\r\n this.processFolder(result, keyRing);\r\n const cipher = this.initLoginCipher();\r\n cipher.name = value.display_name.replace('http://', '').replace('https://', '');\r\n if (cipher.name.length > 30) {\r\n cipher.name = cipher.name.substring(0, 30);\r\n }\r\n cipher.login.password = this.getValueOrDefault(value.secret);\r\n cipher.login.uris = this.makeUriArray(value.display_name);\r\n\r\n if (value.attributes != null) {\r\n cipher.login.username = value.attributes != null ?\r\n this.getValueOrDefault(value.attributes.username_value) : null;\r\n for (const attr in value.attributes) {\r\n if (!value.attributes.hasOwnProperty(attr) || attr === 'username_value' ||\r\n attr === 'xdg:schema') {\r\n continue;\r\n }\r\n this.processKvp(cipher, attr, value.attributes[attr]);\r\n }\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n }\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { FolderView } from '../models/view/folderView';\r\n\r\nexport class KeePass2XmlImporter extends BaseImporter implements Importer {\r\n result = new ImportResult();\r\n\r\n parse(data: string): ImportResult {\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n this.result.success = false;\r\n return this.result;\r\n }\r\n\r\n const rootGroup = doc.querySelector('KeePassFile > Root > Group');\r\n if (rootGroup == null) {\r\n this.result.errorMessage = 'Missing `KeePassFile > Root > Group` node.';\r\n this.result.success = false;\r\n return this.result;\r\n }\r\n\r\n this.traverse(rootGroup, true, '');\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(this.result);\r\n }\r\n\r\n this.result.success = true;\r\n return this.result;\r\n }\r\n\r\n traverse(node: Element, isRootNode: boolean, groupPrefixName: string) {\r\n const folderIndex = this.result.folders.length;\r\n let groupName = groupPrefixName;\r\n\r\n if (!isRootNode) {\r\n if (groupName !== '') {\r\n groupName += '/';\r\n }\r\n const nameEl = this.querySelectorDirectChild(node, 'Name');\r\n groupName += nameEl == null ? '-' : nameEl.textContent;\r\n const folder = new FolderView();\r\n folder.name = groupName;\r\n this.result.folders.push(folder);\r\n }\r\n\r\n this.querySelectorAllDirectChild(node, 'Entry').forEach((entry) => {\r\n const cipherIndex = this.result.ciphers.length;\r\n\r\n const cipher = this.initLoginCipher();\r\n this.querySelectorAllDirectChild(entry, 'String').forEach((entryString) => {\r\n const valueEl = this.querySelectorDirectChild(entryString, 'Value');\r\n const value = valueEl != null ? valueEl.textContent : null;\r\n if (this.isNullOrWhitespace(value)) {\r\n return;\r\n }\r\n const keyEl = this.querySelectorDirectChild(entryString, 'Key');\r\n const key = keyEl != null ? keyEl.textContent : null;\r\n\r\n if (key === 'URL') {\r\n cipher.login.uris = this.makeUriArray(value);\r\n } else if (key === 'UserName') {\r\n cipher.login.username = value;\r\n } else if (key === 'Password') {\r\n cipher.login.password = value;\r\n } else if (key === 'Title') {\r\n cipher.name = value;\r\n } else if (key === 'Notes') {\r\n cipher.notes += (value + '\\n');\r\n } else {\r\n this.processKvp(cipher, key, value);\r\n }\r\n });\r\n\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n\r\n if (!isRootNode) {\r\n this.result.folderRelationships.push([cipherIndex, folderIndex]);\r\n }\r\n });\r\n\r\n this.querySelectorAllDirectChild(node, 'Group').forEach((group) => {\r\n this.traverse(group, false, groupName);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class KeePassXCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.isNullOrWhitespace(value.Title)) {\r\n return;\r\n }\r\n\r\n value.Group = !this.isNullOrWhitespace(value.Group) && value.Group.startsWith('Root/') ?\r\n value.Group.replace('Root/', '') : value.Group;\r\n const groupName = !this.isNullOrWhitespace(value.Group) ? value.Group : null;\r\n this.processFolder(result, groupName);\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value.Notes);\r\n cipher.name = this.getValueOrDefault(value.Title, '--');\r\n cipher.login.username = this.getValueOrDefault(value.Username);\r\n cipher.login.password = this.getValueOrDefault(value.Password);\r\n cipher.login.uris = this.makeUriArray(value.URL);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { FolderView } from '../models/view/folderView';\n\nexport class KeeperCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.length < 6) {\n return;\n }\n\n this.processFolder(result, value[0]);\n const cipher = this.initLoginCipher();\n cipher.notes = this.getValueOrDefault(value[5]) + '\\n';\n cipher.name = this.getValueOrDefault(value[1], '--');\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.login.password = this.getValueOrDefault(value[3]);\n cipher.login.uris = this.makeUriArray(value[4]);\n\n if (value.length > 7) {\n // we have some custom fields.\n for (let i = 7; i < value.length; i = i + 2) {\n this.processKvp(cipher, value[i], value[i + 1]);\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { FolderView } from '../models/view/folderView';\r\nimport { IdentityView } from '../models/view/identityView';\r\nimport { LoginView } from '../models/view/loginView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class LastPassCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value, index) => {\r\n const cipherIndex = result.ciphers.length;\r\n let folderIndex = result.folders.length;\r\n const hasFolder = this.getValueOrDefault(value.grouping, '(none)') !== '(none)';\r\n let addFolder = hasFolder;\r\n\r\n if (hasFolder) {\r\n for (let i = 0; i < result.folders.length; i++) {\r\n if (result.folders[i].name === value.grouping) {\r\n addFolder = false;\r\n folderIndex = i;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n const cipher = this.buildBaseCipher(value);\r\n if (cipher.type === CipherType.Login) {\r\n cipher.notes = this.getValueOrDefault(value.extra);\r\n cipher.login = new LoginView();\r\n cipher.login.uris = this.makeUriArray(value.url);\r\n cipher.login.username = this.getValueOrDefault(value.username);\r\n cipher.login.password = this.getValueOrDefault(value.password);\r\n } else if (cipher.type === CipherType.SecureNote) {\r\n this.parseSecureNote(value, cipher);\r\n } else if (cipher.type === CipherType.Card) {\r\n cipher.card = this.parseCard(value);\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n } else if (cipher.type === CipherType.Identity) {\r\n cipher.identity = this.parseIdentity(value);\r\n cipher.notes = this.getValueOrDefault(value.notes);\r\n if (!this.isNullOrWhitespace(value.ccnum)) {\r\n // there is a card on this identity too\r\n const cardCipher = this.buildBaseCipher(value);\r\n cardCipher.identity = null;\r\n cardCipher.type = CipherType.Card;\r\n cardCipher.card = this.parseCard(value);\r\n result.ciphers.push(cardCipher);\r\n }\r\n }\r\n\r\n result.ciphers.push(cipher);\r\n\r\n if (addFolder) {\r\n const f = new FolderView();\r\n f.name = value.grouping;\r\n result.folders.push(f);\r\n }\r\n if (hasFolder) {\r\n result.folderRelationships.push([cipherIndex, folderIndex]);\r\n }\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private buildBaseCipher(value: any) {\r\n const cipher = new CipherView();\r\n if (value.hasOwnProperty('profilename') && value.hasOwnProperty('profilelanguage')) {\r\n // form fill\r\n cipher.favorite = false;\r\n cipher.name = this.getValueOrDefault(value.profilename, '--');\r\n cipher.type = CipherType.Card;\r\n\r\n if (!this.isNullOrWhitespace(value.title) || !this.isNullOrWhitespace(value.firstname) ||\r\n !this.isNullOrWhitespace(value.lastname) || !this.isNullOrWhitespace(value.address1) ||\r\n !this.isNullOrWhitespace(value.phone) || !this.isNullOrWhitespace(value.username) ||\r\n !this.isNullOrWhitespace(value.email)) {\r\n cipher.type = CipherType.Identity;\r\n }\r\n } else {\r\n // site or secure note\r\n cipher.favorite = !this.organization && this.getValueOrDefault(value.fav, '0') === '1';\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n cipher.type = value.url === 'http://sn' ? CipherType.SecureNote : CipherType.Login;\r\n }\r\n return cipher;\r\n }\r\n\r\n private parseCard(value: any): CardView {\r\n const card = new CardView();\r\n card.cardholderName = this.getValueOrDefault(value.ccname);\r\n card.number = this.getValueOrDefault(value.ccnum);\r\n card.code = this.getValueOrDefault(value.cccsc);\r\n card.brand = this.getCardBrand(value.ccnum);\r\n\r\n if (!this.isNullOrWhitespace(value.ccexp) && value.ccexp.indexOf('-') > -1) {\r\n const ccexpParts = (value.ccexp as string).split('-');\r\n if (ccexpParts.length > 1) {\r\n card.expYear = ccexpParts[0];\r\n card.expMonth = ccexpParts[1];\r\n if (card.expMonth.length === 2 && card.expMonth[0] === '0') {\r\n card.expMonth = card.expMonth[1];\r\n }\r\n }\r\n }\r\n\r\n return card;\r\n }\r\n\r\n private parseIdentity(value: any): IdentityView {\r\n const identity = new IdentityView();\r\n identity.title = this.getValueOrDefault(value.title);\r\n identity.firstName = this.getValueOrDefault(value.firstname);\r\n identity.middleName = this.getValueOrDefault(value.middlename);\r\n identity.lastName = this.getValueOrDefault(value.lastname);\r\n identity.username = this.getValueOrDefault(value.username);\r\n identity.company = this.getValueOrDefault(value.company);\r\n identity.ssn = this.getValueOrDefault(value.ssn);\r\n identity.address1 = this.getValueOrDefault(value.address1);\r\n identity.address2 = this.getValueOrDefault(value.address2);\r\n identity.address3 = this.getValueOrDefault(value.address3);\r\n identity.city = this.getValueOrDefault(value.city);\r\n identity.state = this.getValueOrDefault(value.state);\r\n identity.postalCode = this.getValueOrDefault(value.zip);\r\n identity.country = this.getValueOrDefault(value.country);\r\n identity.email = this.getValueOrDefault(value.email);\r\n identity.phone = this.getValueOrDefault(value.phone);\r\n\r\n if (!this.isNullOrWhitespace(identity.title)) {\r\n identity.title = identity.title.charAt(0).toUpperCase() + identity.title.slice(1);\r\n }\r\n\r\n return identity;\r\n }\r\n\r\n private parseSecureNote(value: any, cipher: CipherView) {\r\n const extraParts = this.splitNewLine(value.extra);\r\n let processedNote = false;\r\n\r\n if (extraParts.length) {\r\n const typeParts = extraParts[0].split(':');\r\n if (typeParts.length > 1 && typeParts[0] === 'NoteType' &&\r\n (typeParts[1] === 'Credit Card' || typeParts[1] === 'Address')) {\r\n if (typeParts[1] === 'Credit Card') {\r\n const mappedData = this.parseSecureNoteMapping(extraParts, {\r\n 'Number': 'number',\r\n 'Name on Card': 'cardholderName',\r\n 'Security Code': 'code',\r\n });\r\n cipher.type = CipherType.Card;\r\n cipher.card = mappedData[0];\r\n cipher.notes = mappedData[1];\r\n } else if (typeParts[1] === 'Address') {\r\n const mappedData = this.parseSecureNoteMapping(extraParts, {\r\n 'Title': 'title',\r\n 'First Name': 'firstName',\r\n 'Last Name': 'lastName',\r\n 'Middle Name': 'middleName',\r\n 'Company': 'company',\r\n 'Address 1': 'address1',\r\n 'Address 2': 'address2',\r\n 'Address 3': 'address3',\r\n 'City / Town': 'city',\r\n 'State': 'state',\r\n 'Zip / Postal Code': 'postalCode',\r\n 'Country': 'country',\r\n 'Email Address': 'email',\r\n 'Username': 'username',\r\n });\r\n cipher.type = CipherType.Identity;\r\n cipher.identity = mappedData[0];\r\n cipher.notes = mappedData[1];\r\n }\r\n processedNote = true;\r\n }\r\n }\r\n\r\n if (!processedNote) {\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n cipher.notes = this.getValueOrDefault(value.extra);\r\n }\r\n }\r\n\r\n private parseSecureNoteMapping(extraParts: string[], map: any): [T, string] {\r\n let notes: string = null;\r\n const dataObj: any = {};\r\n\r\n extraParts.forEach((extraPart) => {\r\n const fieldParts = extraPart.split(':');\r\n if (fieldParts.length < 1 || this.isNullOrWhitespace(fieldParts[0]) ||\r\n this.isNullOrWhitespace(fieldParts[1]) || fieldParts[0] === 'NoteType') {\r\n return;\r\n }\r\n\r\n if (fieldParts[0] === 'Notes') {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += ('\\n' + fieldParts[1]);\r\n } else {\r\n notes = fieldParts[1];\r\n }\r\n } else if (map.hasOwnProperty(fieldParts[0])) {\r\n dataObj[map[fieldParts[0]]] = fieldParts[1];\r\n } else {\r\n if (!this.isNullOrWhitespace(notes)) {\r\n notes += '\\n';\r\n } else {\r\n notes = '';\r\n }\r\n\r\n notes += (fieldParts[0] + ': ' + fieldParts[1]);\r\n }\r\n });\r\n\r\n return [dataObj as T, notes];\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class MeldiumCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value.DisplayName, '--');\n cipher.notes = this.getValueOrDefault(value.Notes);\n cipher.login.username = this.getValueOrDefault(value.UserName);\n cipher.login.password = this.getValueOrDefault(value.Password);\n cipher.login.uris = this.makeUriArray(value.Url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nexport class MSecureCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.length < 3) {\n return;\n }\n\n const folderName = this.getValueOrDefault(value[0], 'Unassigned') !== 'Unassigned' ? value[0] : null;\n this.processFolder(result, folderName);\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[2], '--');\n\n if (value[1] === 'Web Logins') {\n cipher.login.uris = this.makeUriArray(value[4]);\n cipher.login.username = this.getValueOrDefault(value[5]);\n cipher.login.password = this.getValueOrDefault(value[6]);\n cipher.notes = !this.isNullOrWhitespace(value[3]) ? value[3].split('\\\\n').join('\\n') : null;\n } else if (value.length > 3) {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n for (let i = 3; i < value.length; i++) {\n if (!this.isNullOrWhitespace(value[i])) {\n cipher.notes += (value[i] + '\\n');\n }\n }\n }\n\n if (!this.isNullOrWhitespace(value[1]) && cipher.type !== CipherType.Login) {\n cipher.name = value[1] + ': ' + cipher.name;\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\nimport { CipherView } from '../models/view/cipherView';\r\nimport { SecureNoteView } from '../models/view/secureNoteView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { SecureNoteType } from '../enums/secureNoteType';\r\n\r\nexport class OnePassword1PifImporter extends BaseImporter implements Importer {\r\n result = new ImportResult();\r\n\r\n parse(data: string): ImportResult {\r\n data.split(this.newLineRegex).forEach((line) => {\r\n if (this.isNullOrWhitespace(line) || line[0] !== '{') {\r\n return;\r\n }\r\n const item = JSON.parse(line);\r\n const cipher = this.initLoginCipher();\r\n\r\n if (this.isNullOrWhitespace(item.hmac)) {\r\n this.processStandardItem(item, cipher);\r\n } else {\r\n this.processWinOpVaultItem(item, cipher);\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n this.result.ciphers.push(cipher);\r\n });\r\n\r\n this.result.success = true;\r\n return this.result;\r\n }\r\n\r\n private processWinOpVaultItem(item: any, cipher: CipherView) {\r\n if (item.overview != null) {\r\n cipher.name = this.getValueOrDefault(item.overview.title);\r\n if (item.overview.URLs != null) {\r\n const urls: string[] = [];\r\n item.overview.URLs.forEach((url: any) => {\r\n if (!this.isNullOrWhitespace(url.u)) {\r\n urls.push(url.u);\r\n }\r\n });\r\n cipher.login.uris = this.makeUriArray(urls);\r\n }\r\n }\r\n\r\n if (item.details != null) {\r\n if (!this.isNullOrWhitespace(item.details.ccnum) || !this.isNullOrWhitespace(item.details.cvv)) {\r\n cipher.type = CipherType.Card;\r\n cipher.card = new CardView();\r\n }\r\n\r\n if (!this.isNullOrWhitespace(item.details.notesPlain)) {\r\n cipher.notes = item.details.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\r\n }\r\n if (item.details.fields != null) {\r\n this.parseFields(item.details.fields, cipher, 'designation', 'value', 'name');\r\n }\r\n if (item.details.sections != null) {\r\n item.details.sections.forEach((section: any) => {\r\n if (section.fields != null) {\r\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n private processStandardItem(item: any, cipher: CipherView) {\r\n cipher.favorite = item.openContents && item.openContents.faveIndex ? true : false;\r\n cipher.name = this.getValueOrDefault(item.title);\r\n\r\n if (item.typeName === 'securenotes.SecureNote') {\r\n cipher.type = CipherType.SecureNote;\r\n cipher.secureNote = new SecureNoteView();\r\n cipher.secureNote.type = SecureNoteType.Generic;\r\n } else if (item.typeName === 'wallet.financial.CreditCard') {\r\n cipher.type = CipherType.Card;\r\n cipher.card = new CardView();\r\n } else {\r\n cipher.login.uris = this.makeUriArray(item.location);\r\n }\r\n\r\n if (item.secureContents != null) {\r\n if (!this.isNullOrWhitespace(item.secureContents.notesPlain)) {\r\n cipher.notes = item.secureContents.notesPlain.split(this.newLineRegex).join('\\n') + '\\n';\r\n }\r\n if (item.secureContents.fields != null) {\r\n this.parseFields(item.secureContents.fields, cipher, 'designation', 'value', 'name');\r\n }\r\n if (item.secureContents.sections != null) {\r\n item.secureContents.sections.forEach((section: any) => {\r\n if (section.fields != null) {\r\n this.parseFields(section.fields, cipher, 'n', 'v', 't');\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n private parseFields(fields: any[], cipher: CipherView, designationKey: string, valueKey: string, nameKey: string) {\r\n fields.forEach((field: any) => {\r\n if (field[valueKey] == null || field[valueKey].toString().trim() === '') {\r\n return;\r\n }\r\n\r\n const fieldValue = field[valueKey].toString();\r\n const fieldDesignation = field[designationKey] != null ? field[designationKey].toString() : null;\r\n\r\n if (cipher.type === CipherType.Login) {\r\n if (this.isNullOrWhitespace(cipher.login.username) && fieldDesignation === 'username') {\r\n cipher.login.username = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.login.password) && fieldDesignation === 'password') {\r\n cipher.login.password = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.login.totp) && fieldDesignation != null &&\r\n fieldDesignation.startsWith('TOTP_')) {\r\n cipher.login.totp = fieldValue;\r\n return;\r\n }\r\n } else if (cipher.type === CipherType.Card) {\r\n if (this.isNullOrWhitespace(cipher.card.number) && fieldDesignation === 'ccnum') {\r\n cipher.card.number = fieldValue;\r\n cipher.card.brand = this.getCardBrand(fieldValue);\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.card.code) && fieldDesignation === 'cvv') {\r\n cipher.card.code = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.card.cardholderName) && fieldDesignation === 'cardholder') {\r\n cipher.card.cardholderName = fieldValue;\r\n return;\r\n } else if (this.isNullOrWhitespace(cipher.card.expiration) && fieldDesignation === 'expiry' &&\r\n fieldValue.length === 6) {\r\n cipher.card.expMonth = (fieldValue as string).substr(4, 2);\r\n if (cipher.card.expMonth[0] === '0') {\r\n cipher.card.expMonth = cipher.card.expMonth.substr(1, 1);\r\n }\r\n cipher.card.expYear = (fieldValue as string).substr(0, 4);\r\n return;\r\n } else if (fieldDesignation === 'type') {\r\n // Skip since brand was determined from number above\r\n return;\r\n }\r\n }\r\n\r\n const fieldName = this.isNullOrWhitespace(field[nameKey]) ? 'no_name' : field[nameKey];\r\n this.processKvp(cipher, fieldName, fieldValue);\r\n });\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { CardView } from '../models/view';\r\n\r\nconst IgnoredProperties = ['ainfo', 'autosubmit', 'notesPlain', 'ps', 'scope', 'tags', 'title', 'uuid'];\r\n\r\nexport class OnePasswordWinCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.isNullOrWhitespace(value.title)) {\r\n return;\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(value.title, '--');\r\n cipher.notes = this.getValueOrDefault(value.notesPlain, '') + '\\n';\r\n\r\n if (!this.isNullOrWhitespace(value.number) && !this.isNullOrWhitespace(value['expiry date'])) {\r\n cipher.type = CipherType.Card;\r\n cipher.card = new CardView();\r\n }\r\n\r\n let altUsername: string = null;\r\n for (const property in value) {\r\n if (!value.hasOwnProperty(property) || this.isNullOrWhitespace(value[property])) {\r\n continue;\r\n }\r\n\r\n if (cipher.type === CipherType.Login) {\r\n if (this.isNullOrWhitespace(cipher.login.password) && property === 'password') {\r\n cipher.login.password = value[property];\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.login.username) && property === 'username') {\r\n cipher.login.username = value[property];\r\n continue;\r\n } else if ((cipher.login.uris == null || cipher.login.uri.length === 0) && property === 'urls') {\r\n const urls = value[property].split(this.newLineRegex);\r\n cipher.login.uris = this.makeUriArray(urls);\r\n continue;\r\n }\r\n } else if (cipher.type === CipherType.Card) {\r\n if (this.isNullOrWhitespace(cipher.card.number) && property === 'number') {\r\n cipher.card.number = value[property];\r\n cipher.card.brand = this.getCardBrand(value.number);\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.card.code) && property === 'verification number') {\r\n cipher.card.code = value[property];\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.card.cardholderName) && property === 'cardholder name') {\r\n cipher.card.cardholderName = value[property];\r\n continue;\r\n } else if (this.isNullOrWhitespace(cipher.card.expiration) && property === 'expiry date' &&\r\n value[property].length === 6) {\r\n cipher.card.expMonth = (value[property] as string).substr(4, 2);\r\n if (cipher.card.expMonth[0] === '0') {\r\n cipher.card.expMonth = cipher.card.expMonth.substr(1, 1);\r\n }\r\n cipher.card.expYear = (value[property] as string).substr(0, 4);\r\n continue;\r\n } else if (property === 'type') {\r\n // Skip since brand was determined from number above\r\n continue;\r\n }\r\n }\r\n\r\n if (IgnoredProperties.indexOf(property) === -1 && !property.startsWith('section:')) {\r\n if (altUsername == null && property === 'email') {\r\n altUsername = value[property];\r\n }\r\n this.processKvp(cipher, property, value[property]);\r\n }\r\n }\r\n\r\n if (cipher.type === CipherType.Login && !this.isNullOrWhitespace(altUsername) &&\r\n this.isNullOrWhitespace(cipher.login.username) && altUsername.indexOf('://') === -1) {\r\n cipher.login.username = altUsername;\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","export { AttachmentView } from './attachmentView';\r\nexport { CardView } from './cardView';\r\nexport { CipherView } from './cipherView';\r\nexport { FieldView } from './fieldView';\r\nexport { IdentityView } from './identityView';\r\nexport { LoginUriView } from './loginUriView';\r\nexport { LoginView } from './loginView';\r\nexport { SecureNoteView } from './secureNoteView';\r\nexport { View } from './view';\r\n","export class View {\r\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CollectionView } from '../models/view/collectionView';\nimport { FolderView } from '../models/view/folderView';\n\nexport class PadlockCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n let headers: string[] = null;\n results.forEach((value) => {\n if (headers == null) {\n headers = value.map((v: string) => v);\n return;\n }\n\n if (value.length < 2 || value.length !== headers.length) {\n return;\n }\n\n if (!this.isNullOrWhitespace(value[1])) {\n if (this.organization) {\n const tags = (value[1] as string).split(',');\n tags.forEach((tag) => {\n tag = tag.trim();\n let addCollection = true;\n let collectionIndex = result.collections.length;\n\n for (let i = 0; i < result.collections.length; i++) {\n if (result.collections[i].name === tag) {\n addCollection = false;\n collectionIndex = i;\n break;\n }\n }\n\n if (addCollection) {\n const collection = new CollectionView();\n collection.name = tag;\n result.collections.push(collection);\n }\n\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\n });\n } else {\n const tags = (value[1] as string).split(',');\n const tag = tags.length > 0 ? tags[0].trim() : null;\n this.processFolder(result, tag);\n }\n }\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[0], '--');\n\n for (let i = 2; i < value.length; i++) {\n const header = headers[i].trim().toLowerCase();\n if (this.isNullOrWhitespace(value[i]) || this.isNullOrWhitespace(header)) {\n continue;\n }\n\n if (this.usernameFieldNames.indexOf(header) > -1) {\n cipher.login.username = value[i];\n } else if (this.passwordFieldNames.indexOf(header) > -1) {\n cipher.login.password = value[i];\n } else if (this.uriFieldNames.indexOf(header) > -1) {\n cipher.login.uris = this.makeUriArray(value[i]);\n } else {\n this.processKvp(cipher, headers[i], value[i]);\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PassKeepCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n this.processFolder(result, this.getValue('category', value));\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValue('description', value);\r\n cipher.name = this.getValueOrDefault(this.getValue('title', value), '--');\r\n cipher.login.username = this.getValue('username', value);\r\n cipher.login.password = this.getValue('password', value);\r\n cipher.login.uris = this.makeUriArray(this.getValue('site', value));\r\n this.processKvp(cipher, 'Password 2', this.getValue('password2', value));\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private getValue(key: string, value: any) {\r\n return this.getValueOrDefault(value[key], this.getValueOrDefault(value[(' ' + key)]));\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PassmanJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null || results.length === 0) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((credential: any) => {\r\n if (credential.tags != null && credential.tags.length > 0) {\r\n const folderName = credential.tags[0].text;\r\n this.processFolder(result, folderName);\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.name = credential.label;\r\n\r\n cipher.login.username = this.getValueOrDefault(credential.username);\r\n if (this.isNullOrWhitespace(cipher.login.username)) {\r\n cipher.login.username = this.getValueOrDefault(credential.email);\r\n } else if (!this.isNullOrWhitespace(credential.email)) {\r\n cipher.notes = ('Email: ' + credential.email + '\\n');\r\n }\r\n\r\n cipher.login.password = this.getValueOrDefault(credential.password);\r\n cipher.login.uris = this.makeUriArray(credential.url);\r\n cipher.notes += this.getValueOrDefault(credential.description, '');\r\n if (credential.otp != null) {\r\n cipher.login.totp = this.getValueOrDefault(credential.otp.secret);\r\n }\r\n\r\n if (credential.custom_fields != null) {\r\n credential.custom_fields.forEach((customField: any) => {\r\n switch (customField.field_type) {\r\n case 'text':\r\n case 'password':\r\n this.processKvp(cipher, customField.label, customField.value);\r\n break;\r\n }\r\n });\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CollectionView } from '../models/view/collectionView';\r\n\r\nexport class PasspackCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n const tagsJson = !this.isNullOrWhitespace(value.Tags) ? JSON.parse(value.Tags) : null;\r\n const tags: string[] = tagsJson != null && tagsJson.tags != null && tagsJson.tags.length > 0 ?\r\n tagsJson.tags.map((tagJson: string) => {\r\n try {\r\n const t = JSON.parse(tagJson);\r\n return this.getValueOrDefault(t.tag);\r\n } catch { }\r\n return null;\r\n }).filter((t: string) => !this.isNullOrWhitespace(t)) : null;\r\n\r\n if (this.organization && tags != null && tags.length > 0) {\r\n tags.forEach((tag) => {\r\n let addCollection = true;\r\n let collectionIndex = result.collections.length;\r\n\r\n for (let i = 0; i < result.collections.length; i++) {\r\n if (result.collections[i].name === tag) {\r\n addCollection = false;\r\n collectionIndex = i;\r\n break;\r\n }\r\n }\r\n\r\n if (addCollection) {\r\n const collection = new CollectionView();\r\n collection.name = tag;\r\n result.collections.push(collection);\r\n }\r\n\r\n result.collectionRelationships.push([result.ciphers.length, collectionIndex]);\r\n });\r\n } else if (!this.organization && tags != null && tags.length > 0) {\r\n this.processFolder(result, tags[0]);\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value.Notes, '');\r\n cipher.notes += ('\\n\\n' + this.getValueOrDefault(value['Shared Notes'], '') + '\\n');\r\n cipher.name = this.getValueOrDefault(value['Entry Name'], '--');\r\n cipher.login.username = this.getValueOrDefault(value['User ID']);\r\n cipher.login.password = this.getValueOrDefault(value.Password);\r\n cipher.login.uris = this.makeUriArray(value.URL);\r\n\r\n if (value.__parsed_extra != null && value.__parsed_extra.length > 0) {\r\n value.__parsed_extra.forEach((extra: string) => {\r\n if (!this.isNullOrWhitespace(extra)) {\r\n cipher.notes += ('\\n' + extra);\r\n }\r\n });\r\n }\r\n\r\n const fieldsJson = !this.isNullOrWhitespace(value['Extra Fields']) ?\r\n JSON.parse(value['Extra Fields']) : null;\r\n const fields = fieldsJson != null && fieldsJson.extraFields != null &&\r\n fieldsJson.extraFields.length > 0 ? fieldsJson.extraFields.map((fieldJson: string) => {\r\n try {\r\n return JSON.parse(fieldJson);\r\n } catch { }\r\n return null;\r\n }) : null;\r\n if (fields != null) {\r\n fields.forEach((f: any) => {\r\n if (f != null) {\r\n this.processKvp(cipher, f.name, f.data);\r\n }\r\n });\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PasswordAgentCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 9) {\r\n return;\r\n }\r\n const folder = this.getValueOrDefault(value[8], '(None)');\r\n const folderName = folder !== '(None)' ? folder.split('\\\\').join('/') : null;\r\n this.processFolder(result, folderName);\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[3]);\r\n cipher.name = this.getValueOrDefault(value[0], '--');\r\n cipher.login.username = this.getValueOrDefault(value[1]);\r\n cipher.login.password = this.getValueOrDefault(value[2]);\r\n cipher.login.uris = this.makeUriArray(value[4]);\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nimport { CardView } from '../models/view/cardView';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\n\r\nexport class PasswordBossJsonImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = JSON.parse(data);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value: any) => {\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(value.name, '--');\r\n cipher.login.uris = this.makeUriArray(value.login_url);\r\n\r\n if (value.identifiers == null) {\r\n return;\r\n }\r\n\r\n if (!this.isNullOrWhitespace(value.identifiers.notes)) {\r\n cipher.notes = value.identifiers.notes.split('\\\\r\\\\n').join('\\n').split('\\\\n').join('\\n');\r\n }\r\n\r\n if (value.type === 'CreditCard') {\r\n cipher.card = new CardView();\r\n cipher.type = CipherType.Card;\r\n }\r\n\r\n for (const property in value.identifiers) {\r\n if (!value.identifiers.hasOwnProperty(property)) {\r\n continue;\r\n }\r\n const valObj = value.identifiers[property];\r\n const val = valObj != null ? valObj.toString() : null;\r\n if (this.isNullOrWhitespace(val) || property === 'notes' || property === 'ignoreItemInSecurityScore') {\r\n continue;\r\n }\r\n\r\n if (cipher.type === CipherType.Card) {\r\n if (property === 'cardNumber') {\r\n cipher.card.number = val;\r\n cipher.card.brand = this.getCardBrand(val);\r\n continue;\r\n } else if (property === 'nameOnCard') {\r\n cipher.card.cardholderName = val;\r\n continue;\r\n } else if (property === 'security_code') {\r\n cipher.card.code = val;\r\n continue;\r\n } else if (property === 'expires') {\r\n try {\r\n const expDate = new Date(val);\r\n cipher.card.expYear = expDate.getFullYear().toString();\r\n cipher.card.expMonth = (expDate.getMonth() + 1).toString();\r\n } catch { }\r\n continue;\r\n } else if (property === 'cardType') {\r\n continue;\r\n }\r\n } else {\r\n if (property === 'username') {\r\n cipher.login.username = val;\r\n continue;\r\n } else if (property === 'password') {\r\n cipher.login.password = val;\r\n continue;\r\n } else if ((cipher.login.uris == null || cipher.login.uris.length === 0) &&\r\n this.uriFieldNames.indexOf(property) > -1) {\r\n cipher.login.uris = this.makeUriArray(val);\r\n continue;\r\n }\r\n }\r\n\r\n this.processKvp(cipher, property, val);\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class PasswordDragonXmlImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const doc = this.parseXml(data);\n if (doc == null) {\n result.success = false;\n return result;\n }\n\n const records = doc.querySelectorAll('PasswordManager > record');\n Array.from(records).forEach((record) => {\n const category = this.querySelectorDirectChild(record, 'Category');\n const categoryText = category != null && !this.isNullOrWhitespace(category.textContent) &&\n category.textContent !== 'Unfiled' ? category.textContent : null;\n this.processFolder(result, categoryText);\n\n const accountName = this.querySelectorDirectChild(record, 'Account-Name');\n const userId = this.querySelectorDirectChild(record, 'User-Id');\n const password = this.querySelectorDirectChild(record, 'Password');\n const url = this.querySelectorDirectChild(record, 'URL');\n const notes = this.querySelectorDirectChild(record, 'Notes');\n const cipher = this.initLoginCipher();\n cipher.name = accountName != null ? this.getValueOrDefault(accountName.textContent, '--') : '--';\n cipher.notes = notes != null ? this.getValueOrDefault(notes.textContent) : '';\n cipher.login.username = userId != null ? this.getValueOrDefault(userId.textContent) : null;\n cipher.login.password = password != null ? this.getValueOrDefault(password.textContent) : null;\n cipher.login.uris = url != null ? this.makeUriArray(url.textContent) : null;\n\n const attributes: string[] = [];\n for (let i = 1; i <= 10; i++) {\n attributes.push('Attribute-' + i);\n }\n\n this.querySelectorAllDirectChild(record, attributes.join(',')).forEach((attr) => {\n if (this.isNullOrWhitespace(attr.textContent) || attr.textContent === 'null') {\n return;\n }\n this.processKvp(cipher, attr.tagName, attr.textContent);\n });\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class PasswordSafeXmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const passwordSafe = doc.querySelector('passwordsafe');\r\n if (passwordSafe == null) {\r\n result.errorMessage = 'Missing `passwordsafe` node.';\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const notesDelimiter = passwordSafe.getAttribute('delimiter');\r\n const entries = doc.querySelectorAll('passwordsafe > entry');\r\n Array.from(entries).forEach((entry) => {\r\n const group = this.querySelectorDirectChild(entry, 'group');\r\n const groupText = group != null && !this.isNullOrWhitespace(group.textContent) ?\r\n group.textContent.split('.').join('/') : null;\r\n this.processFolder(result, groupText);\r\n\r\n const title = this.querySelectorDirectChild(entry, 'title');\r\n const username = this.querySelectorDirectChild(entry, 'username');\r\n const email = this.querySelectorDirectChild(entry, 'email');\r\n const password = this.querySelectorDirectChild(entry, 'password');\r\n const url = this.querySelectorDirectChild(entry, 'url');\r\n const notes = this.querySelectorDirectChild(entry, 'notes');\r\n const cipher = this.initLoginCipher();\r\n cipher.name = title != null ? this.getValueOrDefault(title.textContent, '--') : '--';\r\n cipher.notes = notes != null ?\r\n this.getValueOrDefault(notes.textContent, '').split(notesDelimiter).join('\\n') : null;\r\n cipher.login.username = username != null ? this.getValueOrDefault(username.textContent) : null;\r\n cipher.login.password = password != null ? this.getValueOrDefault(password.textContent) : null;\r\n cipher.login.uris = url != null ? this.makeUriArray(url.textContent) : null;\r\n\r\n if (this.isNullOrWhitespace(cipher.login.username) && email != null) {\r\n cipher.login.username = this.getValueOrDefault(email.textContent);\r\n } else if (email != null && !this.isNullOrWhitespace(email.textContent)) {\r\n cipher.notes = this.isNullOrWhitespace(cipher.notes) ? 'Email: ' + email.textContent\r\n : (cipher.notes + '\\n' + 'Email: ' + email.textContent);\r\n }\r\n\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class RoboFormCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n let i = 1;\r\n results.forEach((value) => {\r\n const folder = !this.isNullOrWhitespace(value.Folder) && value.Folder.startsWith('/') ?\r\n value.Folder.replace('/', '') : value.Folder;\r\n const folderName = !this.isNullOrWhitespace(folder) ? folder : null;\r\n this.processFolder(result, folderName);\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value.Note);\r\n cipher.name = this.getValueOrDefault(value.Name, '--');\r\n cipher.login.username = this.getValueOrDefault(value.Login);\r\n cipher.login.password = this.getValueOrDefault(value.Pwd);\r\n cipher.login.uris = this.makeUriArray(value.Url);\r\n this.cleanupCipher(cipher);\r\n\r\n if (i === results.length && cipher.name === '--' && this.isNullOrWhitespace(cipher.login.password)) {\r\n return;\r\n }\r\n result.ciphers.push(cipher);\r\n i++;\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { FolderView } from '../models/view/folderView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nexport class SafeInCloudXmlImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const doc = this.parseXml(data);\n if (doc == null) {\n result.success = false;\n return result;\n }\n\n const db = doc.querySelector('database');\n if (db == null) {\n result.errorMessage = 'Missing `database` node.';\n result.success = false;\n return result;\n }\n\n const foldersMap = new Map();\n\n Array.from(doc.querySelectorAll('database > label')).forEach((labelEl) => {\n const name = labelEl.getAttribute('name');\n const id = labelEl.getAttribute('id');\n if (!this.isNullOrWhitespace(name) && !this.isNullOrWhitespace(id)) {\n foldersMap.set(id, result.folders.length);\n const folder = new FolderView();\n folder.name = name;\n result.folders.push(folder);\n }\n });\n\n Array.from(doc.querySelectorAll('database > card')).forEach((cardEl) => {\n if (cardEl.getAttribute('template') === 'true') {\n return;\n }\n\n const labelIdEl = this.querySelectorDirectChild(cardEl, 'label_id');\n if (labelIdEl != null) {\n const labelId = labelIdEl.textContent;\n if (!this.isNullOrWhitespace(labelId) && foldersMap.has(labelId)) {\n result.folderRelationships.push([result.ciphers.length, foldersMap.get(labelId)]);\n }\n }\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(cardEl.getAttribute('title'), '--');\n\n const cardType = cardEl.getAttribute('type');\n if (cardType === 'note') {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n } else {\n Array.from(this.querySelectorAllDirectChild(cardEl, 'field')).forEach((fieldEl) => {\n const text = fieldEl.textContent;\n if (this.isNullOrWhitespace(text)) {\n return;\n }\n const name = fieldEl.getAttribute('name');\n const fieldType = this.getValueOrDefault(fieldEl.getAttribute('type'), '').toLowerCase();\n if (fieldType === 'login') {\n cipher.login.username = text;\n } else if (fieldType === 'password') {\n cipher.login.password = text;\n } else if (fieldType === 'notes') {\n cipher.notes += (text + '\\n');\n } else if (fieldType === 'weblogin' || fieldType === 'website') {\n cipher.login.uris = this.makeUriArray(text);\n } else {\n this.processKvp(cipher, name, text);\n }\n });\n }\n\n Array.from(this.querySelectorAllDirectChild(cardEl, 'notes')).forEach((notesEl) => {\n cipher.notes += (notesEl.textContent + '\\n');\n });\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n if (this.organization) {\n this.moveFoldersToCollections(result);\n }\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class SaferPassCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(this.nameFromUrl(value.url), '--');\n cipher.notes = this.getValueOrDefault(value.notes);\n cipher.login.username = this.getValueOrDefault(value.username);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\nimport { CipherView } from '../models/view/cipherView';\r\n\r\nexport class SplashIdCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, false);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (value.length < 3) {\r\n return;\r\n }\r\n\r\n this.processFolder(result, this.getValueOrDefault(value[value.length - 1]));\r\n const cipher = this.initLoginCipher();\r\n cipher.notes = this.getValueOrDefault(value[value.length - 2], '');\r\n cipher.name = this.getValueOrDefault(value[1], '--');\r\n\r\n if (value[0] === 'Web Logins' || value[0] === 'Servers' || value[0] === 'Email Accounts') {\r\n cipher.login.username = this.getValueOrDefault(value[2]);\r\n cipher.login.password = this.getValueOrDefault(value[3]);\r\n cipher.login.uris = this.makeUriArray(value[4]);\r\n this.parseFieldsToNotes(cipher, 5, value);\r\n } else {\r\n this.parseFieldsToNotes(cipher, 2, value);\r\n }\r\n\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private parseFieldsToNotes(cipher: CipherView, startIndex: number, value: any) {\r\n // last 3 rows do not get parsed\r\n for (let i = startIndex; i < value.length - 3; i++) {\r\n if (this.isNullOrWhitespace(value[i])) {\r\n continue;\r\n }\r\n cipher.notes += (value[i] + '\\n');\r\n }\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\n\r\nexport class StickyPasswordXmlImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const doc = this.parseXml(data);\r\n if (doc == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n const loginNodes = doc.querySelectorAll('root > Database > Logins > Login');\r\n Array.from(loginNodes).forEach((loginNode) => {\r\n const accountId = loginNode.getAttribute('ID');\r\n if (this.isNullOrWhitespace(accountId)) {\r\n return;\r\n }\r\n\r\n const usernameText = loginNode.getAttribute('Name');\r\n const passwordText = loginNode.getAttribute('Password');\r\n let titleText: string = null;\r\n let linkText: string = null;\r\n let notesText: string = null;\r\n let groupId: string = null;\r\n let groupText: string = null;\r\n\r\n const accountLogin = doc.querySelector('root > Database > Accounts > Account > ' +\r\n 'LoginLinks > Login[SourceLoginID=\"' + accountId + '\"]');\r\n if (accountLogin != null) {\r\n const account = accountLogin.parentElement.parentElement;\r\n if (account != null) {\r\n titleText = account.getAttribute('Name');\r\n linkText = account.getAttribute('Link');\r\n groupId = account.getAttribute('ParentID');\r\n notesText = account.getAttribute('Comments');\r\n if (!this.isNullOrWhitespace(notesText)) {\r\n notesText = notesText.split('/n').join('\\n');\r\n }\r\n }\r\n }\r\n\r\n if (!this.isNullOrWhitespace(groupId)) {\r\n groupText = this.buildGroupText(doc, groupId, '');\r\n this.processFolder(result, groupText);\r\n }\r\n\r\n const cipher = this.initLoginCipher();\r\n cipher.name = this.getValueOrDefault(titleText, '--');\r\n cipher.notes = this.getValueOrDefault(notesText);\r\n cipher.login.username = this.getValueOrDefault(usernameText);\r\n cipher.login.password = this.getValueOrDefault(passwordText);\r\n cipher.login.uris = this.makeUriArray(linkText);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n buildGroupText(doc: Document, groupId: string, groupText: string): string {\r\n const group = doc.querySelector('root > Database > Groups > Group[ID=\"' + groupId + '\"]');\r\n if (group == null) {\r\n return groupText;\r\n }\r\n if (!this.isNullOrWhitespace(groupText)) {\r\n groupText = '/' + groupText;\r\n }\r\n groupText = group.getAttribute('Name') + groupText;\r\n return this.buildGroupText(doc, group.getAttribute('ParentID'), groupText);\r\n }\r\n}\r\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nimport { CardView } from '../models/view/cardView';\nimport { SecureNoteView } from '../models/view/secureNoteView';\n\nimport { CipherType } from '../enums/cipherType';\nimport { SecureNoteType } from '../enums/secureNoteType';\n\nconst PropertiesToIgnore = ['kind', 'autologin', 'favorite', 'hexcolor', 'protectedwithpassword', 'subdomainonly',\n 'type', 'tk_export_version', 'note', 'title', 'document_content',\n];\n\nexport class TrueKeyCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, true);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n const cipher = this.initLoginCipher();\n cipher.favorite = this.getValueOrDefault(value.favorite, '').toLowerCase() === 'true';\n cipher.name = this.getValueOrDefault(value.name, '--');\n cipher.notes = this.getValueOrDefault(value.memo, '');\n cipher.login.username = this.getValueOrDefault(value.login);\n cipher.login.password = this.getValueOrDefault(value.password);\n cipher.login.uris = this.makeUriArray(value.url);\n\n if (value.kind !== 'login') {\n cipher.name = this.getValueOrDefault(value.title, '--');\n cipher.notes = this.getValueOrDefault(value.note, '');\n }\n\n if (value.kind === 'cc') {\n cipher.type = CipherType.Card;\n cipher.card = new CardView();\n cipher.card.cardholderName = this.getValueOrDefault(value.cardholder);\n cipher.card.number = this.getValueOrDefault(value.number);\n cipher.card.brand = this.getCardBrand(cipher.card.number);\n if (!this.isNullOrWhitespace(value.expiryDate)) {\n try {\n const expDate = new Date(value.expiryDate);\n cipher.card.expYear = expDate.getFullYear().toString();\n cipher.card.expMonth = (expDate.getMonth() + 1).toString();\n } catch { }\n }\n } else if (value.kind !== 'login') {\n cipher.type = CipherType.SecureNote;\n cipher.secureNote = new SecureNoteView();\n cipher.secureNote.type = SecureNoteType.Generic;\n if (!this.isNullOrWhitespace(cipher.notes)) {\n cipher.notes = this.getValueOrDefault(value.document_content, '');\n }\n for (const property in value) {\n if (value.hasOwnProperty(property) && PropertiesToIgnore.indexOf(property.toLowerCase()) < 0 &&\n !this.isNullOrWhitespace(value[property])) {\n this.processKvp(cipher, property, value[property]);\n }\n }\n }\n\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class UpmCsvImporter extends BaseImporter implements Importer {\n parse(data: string): ImportResult {\n const result = new ImportResult();\n const results = this.parseCsv(data, false);\n if (results == null) {\n result.success = false;\n return result;\n }\n\n results.forEach((value) => {\n if (value.length !== 5) {\n return;\n }\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[0], '--');\n cipher.notes = this.getValueOrDefault(value[4]);\n cipher.login.username = this.getValueOrDefault(value[1]);\n cipher.login.password = this.getValueOrDefault(value[2]);\n cipher.login.uris = this.makeUriArray(value[3]);\n this.cleanupCipher(cipher);\n result.ciphers.push(cipher);\n });\n\n result.success = true;\n return result;\n }\n}\n","import { BaseImporter } from './baseImporter';\r\nimport { Importer } from './importer';\r\n\r\nimport { ImportResult } from '../models/domain/importResult';\r\nimport { CipherView } from '../models/view';\r\n\r\nexport class ZohoVaultCsvImporter extends BaseImporter implements Importer {\r\n parse(data: string): ImportResult {\r\n const result = new ImportResult();\r\n const results = this.parseCsv(data, true);\r\n if (results == null) {\r\n result.success = false;\r\n return result;\r\n }\r\n\r\n results.forEach((value) => {\r\n if (this.isNullOrWhitespace(value['Secret Name'])) {\r\n return;\r\n }\r\n this.processFolder(result, this.getValueOrDefault(value.ChamberName));\r\n const cipher = this.initLoginCipher();\r\n cipher.favorite = this.getValueOrDefault(value.Favorite, '0') === '1';\r\n cipher.notes = this.getValueOrDefault(value.Notes);\r\n cipher.name = this.getValueOrDefault(value['Secret Name'], '--');\r\n cipher.login.uris = this.makeUriArray(value['Secret URL']);\r\n this.parseData(cipher, value.SecretData);\r\n this.parseData(cipher, value.CustomData);\r\n this.convertToNoteIfNeeded(cipher);\r\n this.cleanupCipher(cipher);\r\n result.ciphers.push(cipher);\r\n });\r\n\r\n if (this.organization) {\r\n this.moveFoldersToCollections(result);\r\n }\r\n\r\n result.success = true;\r\n return result;\r\n }\r\n\r\n private parseData(cipher: CipherView, data: string) {\r\n if (this.isNullOrWhitespace(data)) {\r\n return;\r\n }\r\n const dataLines = this.splitNewLine(data);\r\n dataLines.forEach((line) => {\r\n const delimPosition = line.indexOf(':');\r\n if (delimPosition < 0) {\r\n return;\r\n }\r\n const field = line.substring(0, delimPosition);\r\n const value = line.length > delimPosition ? line.substring(delimPosition + 1) : null;\r\n if (this.isNullOrWhitespace(field) || this.isNullOrWhitespace(value) || field === 'SecretType') {\r\n return;\r\n }\r\n const fieldLower = field.toLowerCase();\r\n if (cipher.login.username == null && this.usernameFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.username = value;\r\n } else if (cipher.login.password == null && this.passwordFieldNames.indexOf(fieldLower) > -1) {\r\n cipher.login.password = value;\r\n } else {\r\n this.processKvp(cipher, field, value);\r\n }\r\n });\r\n }\r\n}\r\n","import * as signalR from '@aspnet/signalr';\r\nimport * as signalRMsgPack from '@aspnet/signalr-protocol-msgpack';\r\n\r\nimport { NotificationType } from '../enums/notificationType';\r\n\r\nimport { ApiService } from '../abstractions/api.service';\r\nimport { AppIdService } from '../abstractions/appId.service';\r\nimport { CryptoService } from '../abstractions/crypto.service';\r\nimport { EnvironmentService } from '../abstractions/environment.service';\r\nimport { NotificationsService as NotificationsServiceAbstraction } from '../abstractions/notifications.service';\r\nimport { SyncService } from '../abstractions/sync.service';\r\nimport { UserService } from '../abstractions/user.service';\r\n\r\nimport {\r\n NotificationResponse,\r\n SyncCipherNotification,\r\n SyncFolderNotification,\r\n} from '../models/response/notificationResponse';\r\n\r\nexport class NotificationsService implements NotificationsServiceAbstraction {\r\n private signalrConnection: signalR.HubConnection;\r\n private url: string;\r\n private connected = false;\r\n private inited = false;\r\n private inactive = false;\r\n private reconnectTimer: any = null;\r\n\r\n constructor(private userService: UserService, private syncService: SyncService,\r\n private appIdService: AppIdService, private apiService: ApiService,\r\n private cryptoService: CryptoService, private logoutCallback: () => Promise) { }\r\n\r\n async init(environmentService: EnvironmentService): Promise {\r\n this.inited = false;\r\n this.url = 'https://notifications.bitwarden.com';\r\n if (environmentService.notificationsUrl != null) {\r\n this.url = environmentService.notificationsUrl;\r\n } else if (environmentService.baseUrl != null) {\r\n this.url = environmentService.baseUrl + '/notifications';\r\n }\r\n\r\n // Set notifications server URL to `https://-` to effectively disable communication\r\n // with the notifications server from the client app\r\n if (this.url === 'https://-') {\r\n return;\r\n }\r\n\r\n if (this.signalrConnection != null) {\r\n this.signalrConnection.off('ReceiveMessage');\r\n await this.signalrConnection.stop();\r\n this.connected = false;\r\n this.signalrConnection = null;\r\n }\r\n\r\n this.signalrConnection = new signalR.HubConnectionBuilder()\r\n .withUrl(this.url + '/hub', {\r\n accessTokenFactory: () => this.apiService.getActiveBearerToken(),\r\n })\r\n .withHubProtocol(new signalRMsgPack.MessagePackHubProtocol())\r\n // .configureLogging(signalR.LogLevel.Trace)\r\n .build();\r\n\r\n this.signalrConnection.on('ReceiveMessage',\r\n (data: any) => this.processNotification(new NotificationResponse(data)));\r\n this.signalrConnection.onclose(() => {\r\n this.connected = false;\r\n this.reconnect(true);\r\n });\r\n this.inited = true;\r\n if (await this.isAuthedAndUnlocked()) {\r\n await this.reconnect(false);\r\n }\r\n }\r\n\r\n async updateConnection(sync = false): Promise {\r\n if (!this.inited) {\r\n return;\r\n }\r\n try {\r\n if (await this.isAuthedAndUnlocked()) {\r\n await this.reconnect(sync);\r\n } else {\r\n await this.signalrConnection.stop();\r\n }\r\n } catch (e) {\r\n // tslint:disable-next-line\r\n console.error(e.toString());\r\n }\r\n }\r\n\r\n async reconnectFromActivity(): Promise {\r\n this.inactive = false;\r\n if (this.inited && !this.connected) {\r\n await this.reconnect(true);\r\n }\r\n }\r\n\r\n async disconnectFromInactivity(): Promise {\r\n this.inactive = true;\r\n if (this.inited && this.connected) {\r\n await this.signalrConnection.stop();\r\n }\r\n }\r\n\r\n private async processNotification(notification: NotificationResponse) {\r\n const appId = await this.appIdService.getAppId();\r\n if (notification == null || notification.contextId === appId) {\r\n return;\r\n }\r\n\r\n const isAuthenticated = await this.userService.isAuthenticated();\r\n const payloadUserId = notification.payload.userId || notification.payload.UserId;\r\n const myUserId = await this.userService.getUserId();\r\n if (isAuthenticated && payloadUserId != null && payloadUserId !== myUserId) {\r\n return;\r\n }\r\n\r\n switch (notification.type) {\r\n case NotificationType.SyncCipherCreate:\r\n case NotificationType.SyncCipherUpdate:\r\n await this.syncService.syncUpsertCipher(notification.payload as SyncCipherNotification,\r\n notification.type === NotificationType.SyncCipherUpdate);\r\n break;\r\n case NotificationType.SyncCipherDelete:\r\n case NotificationType.SyncLoginDelete:\r\n await this.syncService.syncDeleteCipher(notification.payload as SyncCipherNotification);\r\n break;\r\n case NotificationType.SyncFolderCreate:\r\n case NotificationType.SyncFolderUpdate:\r\n await this.syncService.syncUpsertFolder(notification.payload as SyncFolderNotification,\r\n notification.type === NotificationType.SyncFolderUpdate);\r\n break;\r\n case NotificationType.SyncFolderDelete:\r\n await this.syncService.syncDeleteFolder(notification.payload as SyncFolderNotification);\r\n break;\r\n case NotificationType.SyncVault:\r\n case NotificationType.SyncCiphers:\r\n case NotificationType.SyncSettings:\r\n if (isAuthenticated) {\r\n await this.syncService.fullSync(false);\r\n }\r\n break;\r\n case NotificationType.SyncOrgKeys:\r\n if (isAuthenticated) {\r\n await this.apiService.refreshIdentityToken();\r\n await this.syncService.fullSync(true);\r\n // Stop so a reconnect can be made\r\n await this.signalrConnection.stop();\r\n }\r\n break;\r\n case NotificationType.LogOut:\r\n if (isAuthenticated) {\r\n this.logoutCallback();\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n private async reconnect(sync: boolean) {\r\n if (this.reconnectTimer != null) {\r\n clearTimeout(this.reconnectTimer);\r\n this.reconnectTimer = null;\r\n }\r\n if (this.connected || !this.inited || this.inactive) {\r\n return;\r\n }\r\n const authedAndUnlocked = await this.isAuthedAndUnlocked();\r\n if (!authedAndUnlocked) {\r\n return;\r\n }\r\n\r\n try {\r\n await this.signalrConnection.start();\r\n this.connected = true;\r\n if (sync) {\r\n await this.syncService.fullSync(false);\r\n }\r\n } catch { }\r\n\r\n if (!this.connected) {\r\n this.reconnectTimer = setTimeout(() => this.reconnect(sync), this.random(120000, 300000));\r\n }\r\n }\r\n\r\n private async isAuthedAndUnlocked() {\r\n if (await this.userService.isAuthenticated()) {\r\n return this.cryptoService.hasKey();\r\n }\r\n return false;\r\n }\r\n\r\n private random(min: number, max: number) {\r\n min = Math.ceil(min);\r\n max = Math.floor(max);\r\n return Math.floor(Math.random() * (max - min + 1)) + min;\r\n }\r\n}\r\n","import { NotificationType } from '../../enums/notificationType';\n\nexport class NotificationResponse {\n contextId: string;\n type: NotificationType;\n payload: any;\n\n constructor(response: any) {\n this.contextId = response.contextId || response.ContextId;\n this.type = response.type != null ? response.type : response.Type;\n\n const payload = response.payload || response.Payload;\n switch (this.type) {\n case NotificationType.SyncCipherCreate:\n case NotificationType.SyncCipherDelete:\n case NotificationType.SyncCipherUpdate:\n case NotificationType.SyncLoginDelete:\n this.payload = new SyncCipherNotification(payload);\n break;\n case NotificationType.SyncFolderCreate:\n case NotificationType.SyncFolderDelete:\n case NotificationType.SyncFolderUpdate:\n this.payload = new SyncFolderNotification(payload);\n break;\n case NotificationType.SyncVault:\n case NotificationType.SyncCiphers:\n case NotificationType.SyncOrgKeys:\n case NotificationType.SyncSettings:\n case NotificationType.LogOut:\n this.payload = new UserNotification(payload);\n break;\n default:\n break;\n }\n }\n}\n\nexport class SyncCipherNotification {\n id: string;\n userId: string;\n organizationId: string;\n collectionIds: string[];\n revisionDate: Date;\n\n constructor(response: any) {\n this.id = response.id || response.Id;\n this.userId = response.userId || response.UserId;\n this.organizationId = response.organizationId || response.OrganizationId;\n this.collectionIds = response.collectionIds || response.CollectionIds;\n this.revisionDate = new Date(response.revisionDate || response.RevisionDate);\n }\n}\n\nexport class SyncFolderNotification {\n id: string;\n userId: string;\n revisionDate: Date;\n\n constructor(response: any) {\n this.id = response.id || response.Id;\n this.userId = response.userId || response.UserId;\n this.revisionDate = new Date(response.revisionDate || response.RevisionDate);\n }\n}\n\nexport class UserNotification {\n userId: string;\n date: Date;\n\n constructor(response: any) {\n this.userId = response.userId || response.UserId;\n this.date = new Date(response.date || response.Date);\n }\n}\n","import * as lunr from 'lunr';\r\n\r\nimport { CipherView } from '../models/view/cipherView';\r\n\r\nimport { CipherService } from '../abstractions/cipher.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\nimport { SearchService as SearchServiceAbstraction } from '../abstractions/search.service';\r\n\r\nimport { CipherType } from '../enums/cipherType';\r\nimport { DeviceType } from '../enums/deviceType';\r\nimport { FieldType } from '../enums/fieldType';\r\nimport { UriMatchType } from '../enums/uriMatchType';\r\n\r\nexport class SearchService implements SearchServiceAbstraction {\r\n private indexing = false;\r\n private index: lunr.Index = null;\r\n private onlySearchName = false;\r\n\r\n constructor(private cipherService: CipherService, platformUtilsService: PlatformUtilsService) {\r\n this.onlySearchName = platformUtilsService == null ||\r\n platformUtilsService.getDevice() === DeviceType.EdgeExtension;\r\n }\r\n\r\n clearIndex(): void {\r\n this.index = null;\r\n }\r\n\r\n isSearchable(query: string): boolean {\r\n const notSearchable = query == null || (this.index == null && query.length < 2) ||\r\n (this.index != null && query.length < 2 && query.indexOf('>') !== 0);\r\n return !notSearchable;\r\n }\r\n\r\n async indexCiphers(): Promise {\r\n if (this.indexing) {\r\n return;\r\n }\r\n // tslint:disable-next-line\r\n console.time('search indexing');\r\n this.indexing = true;\r\n this.index = null;\r\n const builder = new lunr.Builder();\r\n builder.ref('id');\r\n (builder as any).field('shortid', { boost: 100, extractor: (c: CipherView) => c.id.substr(0, 8) });\r\n (builder as any).field('name', { boost: 10 });\r\n (builder as any).field('subtitle', {\r\n boost: 5,\r\n extractor: (c: CipherView) => {\r\n if (c.subTitle != null && c.type === CipherType.Card) {\r\n return c.subTitle.replace(/\\*/g, '');\r\n }\r\n return c.subTitle;\r\n },\r\n });\r\n builder.field('notes');\r\n (builder as any).field('login.username', {\r\n extractor: (c: CipherView) => c.login != null ? c.login.username : null,\r\n });\r\n (builder as any).field('login.uris', { boost: 2, extractor: (c: CipherView) => this.uriExtractor(c) });\r\n (builder as any).field('fields', { extractor: (c: CipherView) => this.fieldExtractor(c, false) });\r\n (builder as any).field('fields_joined', { extractor: (c: CipherView) => this.fieldExtractor(c, true) });\r\n (builder as any).field('attachments', { extractor: (c: CipherView) => this.attachmentExtractor(c, false) });\r\n (builder as any).field('attachments_joined',\r\n { extractor: (c: CipherView) => this.attachmentExtractor(c, true) });\r\n (builder as any).field('organizationid', { extractor: (c: CipherView) => c.organizationId });\r\n const ciphers = await this.cipherService.getAllDecrypted();\r\n ciphers.forEach((c) => builder.add(c));\r\n this.index = builder.build();\r\n this.indexing = false;\r\n // tslint:disable-next-line\r\n console.timeEnd('search indexing');\r\n }\r\n\r\n async searchCiphers(query: string, filter: (cipher: CipherView) => boolean = null, ciphers: CipherView[] = null):\r\n Promise {\r\n const results: CipherView[] = [];\r\n if (query != null) {\r\n query = query.trim().toLowerCase();\r\n }\r\n if (query === '') {\r\n query = null;\r\n }\r\n\r\n if (ciphers == null) {\r\n ciphers = await this.cipherService.getAllDecrypted();\r\n }\r\n if (filter != null) {\r\n ciphers = ciphers.filter(filter);\r\n }\r\n\r\n if (!this.isSearchable(query)) {\r\n return ciphers;\r\n }\r\n\r\n const index = this.getIndexForSearch();\r\n if (index == null) {\r\n // Fall back to basic search if index is not available\r\n return this.searchCiphersBasic(ciphers, query);\r\n }\r\n\r\n const ciphersMap = new Map();\r\n ciphers.forEach((c) => ciphersMap.set(c.id, c));\r\n\r\n let searchResults: lunr.Index.Result[] = null;\r\n const isQueryString = query != null && query.length > 1 && query.indexOf('>') === 0;\r\n if (isQueryString) {\r\n try {\r\n searchResults = index.search(query.substr(1).trim());\r\n } catch { }\r\n } else {\r\n // tslint:disable-next-line\r\n const soWild = lunr.Query.wildcard.LEADING | lunr.Query.wildcard.TRAILING;\r\n searchResults = index.query((q) => {\r\n q.term(query, { fields: ['name'], wildcard: soWild });\r\n q.term(query, { fields: ['subtitle'], wildcard: soWild });\r\n q.term(query, { fields: ['login.uris'], wildcard: soWild });\r\n lunr.tokenizer(query).forEach((token) => {\r\n q.term(token.toString(), {});\r\n });\r\n });\r\n }\r\n\r\n if (searchResults != null) {\r\n searchResults.forEach((r) => {\r\n if (ciphersMap.has(r.ref)) {\r\n results.push(ciphersMap.get(r.ref));\r\n }\r\n });\r\n }\r\n return results;\r\n }\r\n\r\n searchCiphersBasic(ciphers: CipherView[], query: string) {\r\n query = query.trim().toLowerCase();\r\n return ciphers.filter((c) => {\r\n if (c.name != null && c.name.toLowerCase().indexOf(query) > -1) {\r\n return true;\r\n }\r\n if (this.onlySearchName) {\r\n return false;\r\n }\r\n if (query.length >= 8 && c.id.startsWith(query)) {\r\n return true;\r\n }\r\n if (c.subTitle != null && c.subTitle.toLowerCase().indexOf(query) > -1) {\r\n return true;\r\n }\r\n if (c.login && c.login.uri != null && c.login.uri.toLowerCase().indexOf(query) > -1) {\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n\r\n getIndexForSearch(): lunr.Index {\r\n return this.index;\r\n }\r\n\r\n private fieldExtractor(c: CipherView, joined: boolean) {\r\n if (!c.hasFields) {\r\n return null;\r\n }\r\n let fields: string[] = [];\r\n c.fields.forEach((f) => {\r\n if (f.name != null) {\r\n fields.push(f.name);\r\n }\r\n if (f.type === FieldType.Text && f.value != null) {\r\n fields.push(f.value);\r\n }\r\n });\r\n fields = fields.filter((f) => f.trim() !== '');\r\n if (fields.length === 0) {\r\n return null;\r\n }\r\n return joined ? fields.join(' ') : fields;\r\n }\r\n\r\n private attachmentExtractor(c: CipherView, joined: boolean) {\r\n if (!c.hasAttachments) {\r\n return null;\r\n }\r\n let attachments: string[] = [];\r\n c.attachments.forEach((a) => {\r\n if (a != null && a.fileName != null) {\r\n if (joined && a.fileName.indexOf('.') > -1) {\r\n attachments.push(a.fileName.substr(0, a.fileName.lastIndexOf('.')));\r\n } else {\r\n attachments.push(a.fileName);\r\n }\r\n }\r\n });\r\n attachments = attachments.filter((f) => f.trim() !== '');\r\n if (attachments.length === 0) {\r\n return null;\r\n }\r\n return joined ? attachments.join(' ') : attachments;\r\n }\r\n\r\n private uriExtractor(c: CipherView) {\r\n if (c.login == null || !c.login.hasUris) {\r\n return null;\r\n }\r\n const uris: string[] = [];\r\n c.login.uris.forEach((u) => {\r\n if (u.uri == null || u.uri === '') {\r\n return;\r\n }\r\n if (u.hostname != null) {\r\n uris.push(u.hostname);\r\n return;\r\n }\r\n let uri = u.uri;\r\n if (u.match !== UriMatchType.RegularExpression) {\r\n const protocolIndex = uri.indexOf('://');\r\n if (protocolIndex > -1) {\r\n uri = uri.substr(protocolIndex + 3);\r\n }\r\n const queryIndex = uri.search(/\\?|&|#/);\r\n if (queryIndex > -1) {\r\n uri = uri.substring(0, queryIndex);\r\n }\r\n }\r\n uris.push(uri);\r\n });\r\n return uris.length > 0 ? uris : null;\r\n }\r\n}\r\n","import * as forge from 'node-forge';\r\n\r\nimport { CryptoFunctionService } from '../abstractions/cryptoFunction.service';\r\nimport { PlatformUtilsService } from '../abstractions/platformUtils.service';\r\n\r\nimport { Utils } from '../misc/utils';\r\n\r\nimport { DecryptParameters } from '../models/domain/decryptParameters';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nexport class WebCryptoFunctionService implements CryptoFunctionService {\r\n private crypto: Crypto;\r\n private subtle: SubtleCrypto;\r\n private isEdge: boolean;\r\n private isIE: boolean;\r\n private isOldSafari: boolean;\r\n\r\n constructor(private win: Window, private platformUtilsService: PlatformUtilsService) {\r\n this.crypto = typeof win.crypto !== 'undefined' ? win.crypto : null;\r\n this.subtle = (!!this.crypto && typeof win.crypto.subtle !== 'undefined') ? win.crypto.subtle : null;\r\n this.isEdge = platformUtilsService.isEdge();\r\n this.isIE = platformUtilsService.isIE();\r\n const ua = win.navigator.userAgent;\r\n this.isOldSafari = platformUtilsService.isSafari() &&\r\n (ua.indexOf(' Version/10.') > -1 || ua.indexOf(' Version/9.') > -1);\r\n }\r\n\r\n async pbkdf2(password: string | ArrayBuffer, salt: string | ArrayBuffer, algorithm: 'sha256' | 'sha512',\r\n iterations: number): Promise {\r\n if (this.isEdge || this.isIE || this.isOldSafari) {\r\n const forgeLen = algorithm === 'sha256' ? 32 : 64;\r\n const passwordBytes = this.toByteString(password);\r\n const saltBytes = this.toByteString(salt);\r\n const derivedKeyBytes = (forge as any).pbkdf2(passwordBytes, saltBytes, iterations, forgeLen, algorithm);\r\n return Utils.fromByteStringToArray(derivedKeyBytes).buffer;\r\n }\r\n\r\n const wcLen = algorithm === 'sha256' ? 256 : 512;\r\n const passwordBuf = this.toBuf(password);\r\n const saltBuf = this.toBuf(salt);\r\n\r\n const pbkdf2Params: Pbkdf2Params = {\r\n name: 'PBKDF2',\r\n salt: saltBuf,\r\n iterations: iterations,\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', passwordBuf, { name: 'PBKDF2' } as any,\r\n false, ['deriveBits']);\r\n return await this.subtle.deriveBits(pbkdf2Params, impKey, wcLen);\r\n }\r\n\r\n async hash(value: string | ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): Promise {\r\n if (((this.isEdge || this.isIE) && algorithm === 'sha1') || algorithm === 'md5') {\r\n const md = algorithm === 'md5' ? forge.md.md5.create() : forge.md.sha1.create();\r\n const valueBytes = this.toByteString(value);\r\n md.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(md.digest().data).buffer;\r\n }\r\n\r\n const valueBuf = this.toBuf(value);\r\n return await this.subtle.digest({ name: this.toWebCryptoAlgorithm(algorithm) }, valueBuf);\r\n }\r\n\r\n async hmac(value: ArrayBuffer, key: ArrayBuffer, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n if (this.isIE && algorithm === 'sha512') {\r\n const hmac = (forge as any).hmac.create();\r\n const keyBytes = this.toByteString(key);\r\n const valueBytes = this.toByteString(value);\r\n hmac.start(algorithm, keyBytes);\r\n hmac.update(valueBytes, 'raw');\r\n return Utils.fromByteStringToArray(hmac.digest().data).buffer;\r\n }\r\n\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n\r\n const impKey = await this.subtle.importKey('raw', key, signingAlgorithm, false, ['sign']);\r\n return await this.subtle.sign(signingAlgorithm, impKey, value);\r\n }\r\n\r\n // Safely compare two values in a way that protects against timing attacks (Double HMAC Verification).\r\n // ref: https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2011/february/double-hmac-verification/\r\n // ref: https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-string-comparison-with-double-hmac-strategy\r\n async compare(a: ArrayBuffer, b: ArrayBuffer): Promise {\r\n const macKey = await this.randomBytes(32);\r\n const signingAlgorithm = {\r\n name: 'HMAC',\r\n hash: { name: 'SHA-256' },\r\n };\r\n const impKey = await this.subtle.importKey('raw', macKey, signingAlgorithm, false, ['sign']);\r\n const mac1 = await this.subtle.sign(signingAlgorithm, impKey, a);\r\n const mac2 = await this.subtle.sign(signingAlgorithm, impKey, b);\r\n\r\n if (mac1.byteLength !== mac2.byteLength) {\r\n return false;\r\n }\r\n\r\n const arr1 = new Uint8Array(mac1);\r\n const arr2 = new Uint8Array(mac2);\r\n for (let i = 0; i < arr2.length; i++) {\r\n if (arr1[i] !== arr2[i]) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n hmacFast(value: string, key: string, algorithm: 'sha1' | 'sha256' | 'sha512'): Promise {\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start(algorithm, key);\r\n hmac.update(value);\r\n const bytes = hmac.digest().getBytes();\r\n return Promise.resolve(bytes);\r\n }\r\n\r\n async compareFast(a: string, b: string): Promise {\r\n const rand = await this.randomBytes(32);\r\n const bytes = new Uint32Array(rand);\r\n const buffer = forge.util.createBuffer();\r\n for (let i = 0; i < bytes.length; i++) {\r\n buffer.putInt32(bytes[i]);\r\n }\r\n const macKey = buffer.getBytes();\r\n\r\n const hmac = (forge as any).hmac.create();\r\n hmac.start('sha256', macKey);\r\n hmac.update(a);\r\n const mac1 = hmac.digest().getBytes();\r\n\r\n hmac.start(null, null);\r\n hmac.update(b);\r\n const mac2 = hmac.digest().getBytes();\r\n\r\n const equals = mac1 === mac2;\r\n return equals;\r\n }\r\n\r\n async aesEncrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['encrypt']);\r\n return await this.subtle.encrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n aesDecryptFastParameters(data: string, iv: string, mac: string, key: SymmetricCryptoKey):\r\n DecryptParameters {\r\n const p = new DecryptParameters();\r\n if (key.meta != null) {\r\n p.encKey = key.meta.encKeyByteString;\r\n p.macKey = key.meta.macKeyByteString;\r\n }\r\n\r\n if (p.encKey == null) {\r\n p.encKey = forge.util.decode64(key.encKeyB64);\r\n }\r\n p.data = forge.util.decode64(data);\r\n p.iv = forge.util.decode64(iv);\r\n p.macData = p.iv + p.data;\r\n if (p.macKey == null && key.macKeyB64 != null) {\r\n p.macKey = forge.util.decode64(key.macKeyB64);\r\n }\r\n if (mac != null) {\r\n p.mac = forge.util.decode64(mac);\r\n }\r\n\r\n // cache byte string keys for later\r\n if (key.meta == null) {\r\n key.meta = {};\r\n }\r\n if (key.meta.encKeyByteString == null) {\r\n key.meta.encKeyByteString = p.encKey;\r\n }\r\n if (p.macKey != null && key.meta.macKeyByteString == null) {\r\n key.meta.macKeyByteString = p.macKey;\r\n }\r\n\r\n return p;\r\n }\r\n\r\n aesDecryptFast(parameters: DecryptParameters): Promise {\r\n const dataBuffer = (forge as any).util.createBuffer(parameters.data);\r\n const decipher = (forge as any).cipher.createDecipher('AES-CBC', parameters.encKey);\r\n decipher.start({ iv: parameters.iv });\r\n decipher.update(dataBuffer);\r\n decipher.finish();\r\n const val = decipher.output.toString('utf8');\r\n return Promise.resolve(val);\r\n }\r\n\r\n async aesDecrypt(data: ArrayBuffer, iv: ArrayBuffer, key: ArrayBuffer): Promise {\r\n const impKey = await this.subtle.importKey('raw', key, { name: 'AES-CBC' } as any, false, ['decrypt']);\r\n return await this.subtle.decrypt({ name: 'AES-CBC', iv: iv }, impKey, data);\r\n }\r\n\r\n async rsaEncrypt(data: ArrayBuffer, publicKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('spki', publicKey, rsaParams, false, ['encrypt']);\r\n return await this.subtle.encrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaDecrypt(data: ArrayBuffer, privateKey: ArrayBuffer, algorithm: 'sha1' | 'sha256'): Promise {\r\n // Note: Edge browser requires that we specify name and hash for both key import and decrypt.\r\n // We cannot use the proper types here.\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n hash: { name: this.toWebCryptoAlgorithm(algorithm) },\r\n };\r\n const impKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, false, ['decrypt']);\r\n return await this.subtle.decrypt(rsaParams, impKey, data);\r\n }\r\n\r\n async rsaExtractPublicKey(privateKey: ArrayBuffer): Promise {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const impPrivateKey = await this.subtle.importKey('pkcs8', privateKey, rsaParams, true, ['decrypt']);\r\n const jwkPrivateKey = await this.subtle.exportKey('jwk', impPrivateKey);\r\n const jwkPublicKeyParams = {\r\n kty: 'RSA',\r\n e: jwkPrivateKey.e,\r\n n: jwkPrivateKey.n,\r\n alg: 'RSA-OAEP',\r\n ext: true,\r\n };\r\n const impPublicKey = await this.subtle.importKey('jwk', jwkPublicKeyParams, rsaParams, true, ['encrypt']);\r\n return await this.subtle.exportKey('spki', impPublicKey);\r\n }\r\n\r\n async rsaGenerateKeyPair(length: 1024 | 2048 | 4096): Promise<[ArrayBuffer, ArrayBuffer]> {\r\n const rsaParams = {\r\n name: 'RSA-OAEP',\r\n modulusLength: length,\r\n publicExponent: new Uint8Array([0x01, 0x00, 0x01]), // 65537\r\n // Have to specify some algorithm\r\n hash: { name: this.toWebCryptoAlgorithm('sha1') },\r\n };\r\n const keyPair = await this.subtle.generateKey(rsaParams, true, ['encrypt', 'decrypt']);\r\n const publicKey = await this.subtle.exportKey('spki', keyPair.publicKey);\r\n const privateKey = await this.subtle.exportKey('pkcs8', keyPair.privateKey);\r\n return [publicKey, privateKey];\r\n }\r\n\r\n randomBytes(length: number): Promise {\r\n const arr = new Uint8Array(length);\r\n this.crypto.getRandomValues(arr);\r\n return Promise.resolve(arr.buffer);\r\n }\r\n\r\n private toBuf(value: string | ArrayBuffer): ArrayBuffer {\r\n let buf: ArrayBuffer;\r\n if (typeof (value) === 'string') {\r\n buf = Utils.fromUtf8ToArray(value).buffer;\r\n } else {\r\n buf = value;\r\n }\r\n return buf;\r\n }\r\n\r\n private toByteString(value: string | ArrayBuffer): string {\r\n let bytes: string;\r\n if (typeof (value) === 'string') {\r\n bytes = forge.util.encodeUtf8(value);\r\n } else {\r\n bytes = Utils.fromBufferToByteString(value);\r\n }\r\n return bytes;\r\n }\r\n\r\n private toWebCryptoAlgorithm(algorithm: 'sha1' | 'sha256' | 'sha512' | 'md5'): string {\r\n if (algorithm === 'md5') {\r\n throw new Error('MD5 is not supported in WebCrypto.');\r\n }\r\n return algorithm === 'sha1' ? 'SHA-1' : algorithm === 'sha256' ? 'SHA-256' : 'SHA-512';\r\n }\r\n}\r\n","export class DecryptParameters {\n encKey: T;\n data: T;\n iv: T;\n macKey: T;\n mac: T;\n macData: T;\n}\n","import { NgModule } from '@angular/core';\nimport {\n RouterModule,\n Routes,\n} from '@angular/router';\n\nimport { FrontendLayoutComponent } from './layouts/frontend-layout.component';\nimport { OrganizationLayoutComponent } from './layouts/organization-layout.component';\nimport { UserLayoutComponent } from './layouts/user-layout.component';\n\nimport { AcceptOrganizationComponent } from './accounts/accept-organization.component';\nimport { HintComponent } from './accounts/hint.component';\nimport { LockComponent } from './accounts/lock.component';\nimport { LoginComponent } from './accounts/login.component';\nimport { RecoverDeleteComponent } from './accounts/recover-delete.component';\nimport { RecoverTwoFactorComponent } from './accounts/recover-two-factor.component';\nimport { RegisterComponent } from './accounts/register.component';\nimport { TwoFactorComponent } from './accounts/two-factor.component';\nimport { VerifyEmailTokenComponent } from './accounts/verify-email-token.component';\nimport { VerifyRecoverDeleteComponent } from './accounts/verify-recover-delete.component';\n\nimport { CollectionsComponent as OrgManageCollectionsComponent } from './organizations/manage/collections.component';\nimport { EventsComponent as OrgEventsComponent } from './organizations/manage/events.component';\nimport { GroupsComponent as OrgGroupsComponent } from './organizations/manage/groups.component';\nimport { ManageComponent as OrgManageComponent } from './organizations/manage/manage.component';\nimport { PeopleComponent as OrgPeopleComponent } from './organizations/manage/people.component';\n\nimport { AccountComponent as OrgAccountComponent } from './organizations/settings/account.component';\nimport { OrganizationBillingComponent } from './organizations/settings/organization-billing.component';\nimport { SettingsComponent as OrgSettingsComponent } from './organizations/settings/settings.component';\nimport {\n TwoFactorSetupComponent as OrgTwoFactorSetupComponent,\n} from './organizations/settings/two-factor-setup.component';\n\nimport { ExportComponent as OrgExportComponent } from './organizations/tools/export.component';\nimport {\n ExposedPasswordsReportComponent as OrgExposedPasswordsReportComponent,\n} from './organizations/tools/exposed-passwords-report.component';\nimport { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport {\n InactiveTwoFactorReportComponent as OrgInactiveTwoFactorReportComponent,\n} from './organizations/tools/inactive-two-factor-report.component';\nimport {\n ReusedPasswordsReportComponent as OrgReusedPasswordsReportComponent,\n} from './organizations/tools/reused-passwords-report.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.component';\nimport {\n UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent,\n} from './organizations/tools/unsecured-websites-report.component';\nimport {\n WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent,\n} from './organizations/tools/weak-passwords-report.component';\n\nimport { VaultComponent as OrgVaultComponent } from './organizations/vault/vault.component';\n\nimport { AccountComponent } from './settings/account.component';\nimport { CreateOrganizationComponent } from './settings/create-organization.component';\nimport { DomainRulesComponent } from './settings/domain-rules.component';\nimport { OptionsComponent } from './settings/options.component';\nimport { OrganizationsComponent } from './settings/organizations.component';\nimport { PremiumComponent } from './settings/premium.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { TwoFactorSetupComponent } from './settings/two-factor-setup.component';\nimport { UserBillingComponent } from './settings/user-billing.component';\n\nimport { BreachReportComponent } from './tools/breach-report.component';\nimport { ExportComponent } from './tools/export.component';\nimport { ExposedPasswordsReportComponent } from './tools/exposed-passwords-report.component';\nimport { ImportComponent } from './tools/import.component';\nimport { InactiveTwoFactorReportComponent } from './tools/inactive-two-factor-report.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ReusedPasswordsReportComponent } from './tools/reused-passwords-report.component';\nimport { ToolsComponent } from './tools/tools.component';\nimport { UnsecuredWebsitesReportComponent } from './tools/unsecured-websites-report.component';\nimport { WeakPasswordsReportComponent } from './tools/weak-passwords-report.component';\n\nimport { VaultComponent } from './vault/vault.component';\n\nimport { OrganizationGuardService } from './services/organization-guard.service';\nimport { OrganizationTypeGuardService } from './services/organization-type-guard.service';\nimport { UnauthGuardService } from './services/unauth-guard.service';\n\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\n\nimport { OrganizationUserType } from 'jslib/enums/organizationUserType';\n\nconst routes: Routes = [\n {\n path: '',\n component: FrontendLayoutComponent,\n children: [\n { path: '', pathMatch: 'full', component: LoginComponent, canActivate: [UnauthGuardService] },\n { path: '2fa', component: TwoFactorComponent, canActivate: [UnauthGuardService] },\n {\n path: 'register', component: RegisterComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'createAccount' },\n },\n {\n path: 'hint', component: HintComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'passwordHint' },\n },\n { path: 'lock', component: LockComponent },\n { path: 'verify-email', component: VerifyEmailTokenComponent },\n {\n path: 'accept-organization',\n component: AcceptOrganizationComponent,\n data: { titleId: 'joinOrganization' },\n },\n { path: 'recover', pathMatch: 'full', redirectTo: 'recover-2fa' },\n {\n path: 'recover-2fa',\n component: RecoverTwoFactorComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'recoverAccountTwoStep' },\n },\n {\n path: 'recover-delete',\n component: RecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n {\n path: 'verify-recover-delete',\n component: VerifyRecoverDeleteComponent,\n canActivate: [UnauthGuardService],\n data: { titleId: 'deleteAccount' },\n },\n ],\n },\n {\n path: '',\n component: UserLayoutComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: 'vault', component: VaultComponent, data: { titleId: 'myVault' } },\n {\n path: 'settings',\n component: SettingsComponent,\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: AccountComponent, data: { titleId: 'myAccount' } },\n { path: 'options', component: OptionsComponent, data: { titleId: 'options' } },\n { path: 'domain-rules', component: DomainRulesComponent, data: { titleId: 'domainRules' } },\n { path: 'two-factor', component: TwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n { path: 'premium', component: PremiumComponent, data: { titleId: 'goPremium' } },\n { path: 'billing', component: UserBillingComponent, data: { titleId: 'billingAndLicensing' } },\n { path: 'organizations', component: OrganizationsComponent, data: { titleId: 'organizations' } },\n {\n path: 'create-organization',\n component: CreateOrganizationComponent,\n data: { titleId: 'newOrganization' },\n },\n ],\n },\n {\n path: 'tools',\n component: ToolsComponent,\n canActivate: [AuthGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'generator' },\n { path: 'import', component: ImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: ExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'generator',\n component: PasswordGeneratorComponent,\n data: { titleId: 'passwordGenerator' },\n },\n { path: 'breach-report', component: BreachReportComponent, data: { titleId: 'dataBreachReport' } },\n {\n path: 'reused-passwords-report',\n component: ReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: UnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: WeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n {\n path: 'exposed-passwords-report',\n component: ExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: InactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n ],\n },\n ],\n },\n {\n path: 'organizations/:organizationId',\n component: OrganizationLayoutComponent,\n canActivate: [AuthGuardService, OrganizationGuardService],\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'vault' },\n { path: 'vault', component: OrgVaultComponent, data: { titleId: 'vault' } },\n {\n path: 'tools',\n component: OrgToolsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner, OrganizationUserType.Admin] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'import' },\n { path: 'import', component: OrgImportComponent, data: { titleId: 'importData' } },\n { path: 'export', component: OrgExportComponent, data: { titleId: 'exportVault' } },\n {\n path: 'exposed-passwords-report',\n component: OrgExposedPasswordsReportComponent,\n data: { titleId: 'exposedPasswordsReport' },\n },\n {\n path: 'inactive-two-factor-report',\n component: OrgInactiveTwoFactorReportComponent,\n data: { titleId: 'inactive2faReport' },\n },\n {\n path: 'reused-passwords-report',\n component: OrgReusedPasswordsReportComponent,\n data: { titleId: 'reusedPasswordsReport' },\n },\n {\n path: 'unsecured-websites-report',\n component: OrgUnsecuredWebsitesReportComponent,\n data: { titleId: 'unsecuredWebsitesReport' },\n },\n {\n path: 'weak-passwords-report',\n component: OrgWeakPasswordsReportComponent,\n data: { titleId: 'weakPasswordsReport' },\n },\n ],\n },\n {\n path: 'manage',\n component: OrgManageComponent,\n canActivate: [OrganizationTypeGuardService],\n data: {\n allowedTypes: [\n OrganizationUserType.Owner,\n OrganizationUserType.Admin,\n OrganizationUserType.Manager,\n ],\n },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'people' },\n { path: 'collections', component: OrgManageCollectionsComponent, data: { titleId: 'collections' } },\n { path: 'events', component: OrgEventsComponent, data: { titleId: 'eventLogs' } },\n { path: 'groups', component: OrgGroupsComponent, data: { titleId: 'groups' } },\n { path: 'people', component: OrgPeopleComponent, data: { titleId: 'people' } },\n ],\n },\n {\n path: 'settings',\n component: OrgSettingsComponent,\n canActivate: [OrganizationTypeGuardService],\n data: { allowedTypes: [OrganizationUserType.Owner] },\n children: [\n { path: '', pathMatch: 'full', redirectTo: 'account' },\n { path: 'account', component: OrgAccountComponent, data: { titleId: 'myOrganization' } },\n { path: 'two-factor', component: OrgTwoFactorSetupComponent, data: { titleId: 'twoStepLogin' } },\n {\n path: 'billing',\n component: OrganizationBillingComponent,\n data: { titleId: 'billingAndLicensing' },\n },\n ],\n },\n ],\n },\n { path: '**', redirectTo: '' },\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes, {\n useHash: true,\n /*enableTracing: true,*/\n })],\n exports: [RouterModule],\n})\nexport class AppRoutingModule { }\n"],"sourceRoot":""} \ No newline at end of file diff --git a/app/polyfills.bda9be8e4a8b7262835e.js b/app/polyfills.7c2e53863584b575d629.js similarity index 99% rename from app/polyfills.bda9be8e4a8b7262835e.js rename to app/polyfills.7c2e53863584b575d629.js index ce74fa3b..93aeda3c 100644 --- a/app/polyfills.bda9be8e4a8b7262835e.js +++ b/app/polyfills.7c2e53863584b575d629.js @@ -99,4 +99,4 @@ var tt=["absolutedeviceorientation","afterinput","afterprint","appinstalled","be * @license MIT */ !function(n,o){void 0===(r=function(){return function(t){"use strict";if("function"!=typeof Promise)throw"Promise support required";var e=t.crypto||t.msCrypto;if(!e)return;var n=e.subtle||e.webkitSubtle;if(!n)return;var r=t.Crypto||e.constructor||Object,o=t.SubtleCrypto||n.constructor||Object,i=(t.CryptoKey||t.Key||Object,t.navigator.userAgent.indexOf("Edge/")>-1),a=!!t.msCrypto&&!i,u=!e.subtle&&!!e.webkitSubtle;if(!a&&!u)return;function c(t){return btoa(t).replace(/\=+$/,"").replace(/\+/g,"-").replace(/\//g,"_")}function s(t){return t=(t+="===").slice(0,-t.length%4),atob(t.replace(/-/g,"+").replace(/_/g,"/"))}function f(t){for(var e=new Uint8Array(t.length),n=0;nt.length)throw new RangeError("Malformed DER");var n,r=t[e.pos++],o=t[e.pos++];if(o>=128){if(o&=127,e.end-e.pos=128){var u=r,r=4;for(e.splice(o,0,u>>24&255,u>>16&255,u>>8&255,255&u);r>1&&!(u>>24);)u<<=8,r--;r<4&&e.splice(o,4-r),r|=128}return e.splice(o-2,2,n,r),e}function b(t,e,n,r){Object.defineProperties(this,{_key:{value:t},type:{value:t.type,enumerable:!0},extractable:{value:void 0===n?t.extractable:n,enumerable:!0},algorithm:{value:void 0===e?t.algorithm:e,enumerable:!0},usages:{value:void 0===r?t.usages:r,enumerable:!0}})}function _(t){return"verify"===t||"encrypt"===t||"wrapKey"===t}function w(t){return"sign"===t||"decrypt"===t||"unwrapKey"===t}if(["generateKey","importKey","unwrapKey"].forEach(function(t){var r=n[t];n[t]=function(o,i,d){var y,m,k,S,E=[].slice.call(arguments);switch(t){case"generateKey":y=h(o),m=i,k=d;break;case"importKey":y=h(d),m=E[3],k=E[4],"jwk"===o&&((i=v(i)).alg||(i.alg=p(y)),i.key_ops||(i.key_ops="oct"!==i.kty?"d"in i?k.filter(w):k.filter(_):k.slice()),E[1]=function(t){var e=v(t);return a&&(e.extractable=e.ext,delete e.ext),f(unescape(encodeURIComponent(JSON.stringify(e)))).buffer}(i));break;case"unwrapKey":y=E[4],m=E[5],k=E[6],E[2]=d._key}if("generateKey"===t&&"HMAC"===y.name&&y.hash)return y.length=y.length||{"SHA-1":512,"SHA-256":512,"SHA-384":1024,"SHA-512":1024}[y.hash.name],n.importKey("raw",e.getRandomValues(new Uint8Array(y.length+7>>3)),y,m,k);if(u&&"generateKey"===t&&"RSASSA-PKCS1-v1_5"===y.name&&(!y.modulusLength||y.modulusLength>=2048))return(o=h(o)).name="RSAES-PKCS1-v1_5",delete o.hash,n.generateKey(o,!0,["encrypt","decrypt"]).then(function(t){return Promise.all([n.exportKey("jwk",t.publicKey),n.exportKey("jwk",t.privateKey)])}).then(function(t){return t[0].alg=t[1].alg=p(y),t[0].key_ops=k.filter(_),t[1].key_ops=k.filter(w),Promise.all([n.importKey("jwk",t[0],y,!0,t[0].key_ops),n.importKey("jwk",t[1],y,m,t[1].key_ops)])}).then(function(t){return{publicKey:t[0],privateKey:t[1]}});if((u||a&&"SHA-1"===(y.hash||{}).name)&&"importKey"===t&&"jwk"===o&&"HMAC"===y.name&&"oct"===i.kty)return n.importKey("raw",f(s(i.k)),d,E[3],E[4]);if(u&&"importKey"===t&&("spki"===o||"pkcs8"===o))return n.importKey("jwk",function(t){var e=g(t),n=!1;e.length>2&&(n=!0,e.shift());var r={ext:!0};switch(e[0][0]){case"1.2.840.113549.1.1.1":var o=["n","e","d","p","q","dp","dq","qi"],i=g(e[1]);n&&i.shift();for(var a=0;a2&&(r=!0,i.unshift(new Uint8Array([0]))),n[0][0]="1.2.840.113549.1.1.1",e=i;break;default:throw new TypeError("Unsupported key type")}return n.push(new Uint8Array(m(e)).buffer),r?n.unshift(new Uint8Array([0])):n[1]={tag:3,value:n[1]},new Uint8Array(m(n)).buffer}(v(t))})),h}}),["encrypt","decrypt","sign","verify"].forEach(function(t){var e=n[t];n[t]=function(r,o,i,u){if(a&&(!i.byteLength||u&&!u.byteLength))throw new Error("Empy input is not allowed");var c,s=[].slice.call(arguments),f=h(r);if(a&&"decrypt"===t&&"AES-GCM"===f.name){var l=r.tagLength>>3;s[2]=(i.buffer||i).slice(0,i.byteLength-l),r.tag=(i.buffer||i).slice(i.byteLength-l)}s[1]=o._key;try{c=e.apply(n,s)}catch(t){return Promise.reject(t)}return a&&(c=new Promise(function(e,n){c.onabort=c.onerror=function(t){n(t)},c.oncomplete=function(n){if(n=n.target.result,"encrypt"===t&&n instanceof AesGcmEncryptResult){var r=n.ciphertext,o=n.tag;(n=new Uint8Array(r.byteLength+o.byteLength)).set(new Uint8Array(r),0),n.set(new Uint8Array(o),r.byteLength),n=n.buffer}e(n)}})),c}}),a){var k=n.digest;n.digest=function(t,e){if(!e.byteLength)throw new Error("Empy input is not allowed");var r;try{r=k.call(n,t,e)}catch(t){return Promise.reject(t)}return r=new Promise(function(t,e){r.onabort=r.onerror=function(t){e(t)},r.oncomplete=function(e){t(e.target.result)}})},t.crypto=Object.create(e,{getRandomValues:{value:function(t){return e.getRandomValues(t)}},subtle:{value:n}}),t.CryptoKey=b}u&&(e.subtle=n,t.Crypto=r,t.SubtleCrypto=o,t.CryptoKey=b)}(n)}.apply(e,[]))||(t.exports=r)}("undefined"!=typeof self?self:this)}]); -//# sourceMappingURL=polyfills.bda9be8e4a8b7262835e.js.map \ No newline at end of file +//# sourceMappingURL=polyfills.7c2e53863584b575d629.js.map \ No newline at end of file diff --git a/app/polyfills.bda9be8e4a8b7262835e.js.map b/app/polyfills.7c2e53863584b575d629.js.map similarity index 99% rename from app/polyfills.bda9be8e4a8b7262835e.js.map rename to app/polyfills.7c2e53863584b575d629.js.map index 7275265d..1101bd47 100644 --- a/app/polyfills.bda9be8e4a8b7262835e.js.map +++ b/app/polyfills.7c2e53863584b575d629.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/core-js/modules/_export.js","webpack:///./node_modules/core-js/modules/_an-object.js","webpack:///./node_modules/core-js/modules/_global.js","webpack:///./node_modules/core-js/modules/_fails.js","webpack:///./node_modules/core-js/modules/_is-object.js","webpack:///./node_modules/core-js/modules/_wks.js","webpack:///./node_modules/core-js/modules/_object-dp.js","webpack:///./node_modules/core-js/modules/_descriptors.js","webpack:///./node_modules/core-js/modules/_to-length.js","webpack:///./node_modules/core-js/modules/_to-object.js","webpack:///./node_modules/core-js/modules/_a-function.js","webpack:///./node_modules/core-js/modules/_string-html.js","webpack:///./node_modules/core-js/modules/_has.js","webpack:///./node_modules/core-js/modules/_redefine.js","webpack:///./node_modules/core-js/modules/_to-iobject.js","webpack:///./node_modules/core-js/modules/_core.js","webpack:///./node_modules/core-js/modules/_hide.js","webpack:///./node_modules/core-js/modules/_object-gpo.js","webpack:///./node_modules/core-js/modules/_object-gopd.js","webpack:///./node_modules/core-js/modules/_strict-method.js","webpack:///./node_modules/core-js/modules/_ctx.js","webpack:///./node_modules/core-js/modules/_cof.js","webpack:///./node_modules/core-js/modules/_object-sap.js","webpack:///./node_modules/core-js/modules/_array-methods.js","webpack:///./node_modules/core-js/modules/_to-integer.js","webpack:///./node_modules/core-js/modules/_to-primitive.js","webpack:///./node_modules/core-js/modules/_defined.js","webpack:///./node_modules/core-js/modules/_typed-array.js","webpack:///./node_modules/core-js/modules/_metadata.js","webpack:///./node_modules/core-js/modules/_meta.js","webpack:///./node_modules/core-js/modules/_object-create.js","webpack:///./node_modules/core-js/modules/_property-desc.js","webpack:///./node_modules/core-js/modules/_library.js","webpack:///./node_modules/core-js/modules/_uid.js","webpack:///./node_modules/core-js/modules/_object-keys.js","webpack:///./node_modules/core-js/modules/_to-absolute-index.js","webpack:///./node_modules/core-js/modules/_object-gopn.js","webpack:///./node_modules/core-js/modules/_add-to-unscopables.js","webpack:///./node_modules/core-js/modules/_set-species.js","webpack:///./node_modules/core-js/modules/_an-instance.js","webpack:///./node_modules/core-js/modules/_for-of.js","webpack:///./node_modules/core-js/modules/_redefine-all.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/modules/_set-to-string-tag.js","webpack:///./node_modules/core-js/modules/_iterators.js","webpack:///./node_modules/core-js/modules/_validate-collection.js","webpack:///./node_modules/core-js/modules/_classof.js","webpack:///./node_modules/core-js/modules/_iobject.js","webpack:///./node_modules/core-js/modules/_string-trim.js","webpack:///./node_modules/core-js/modules/_object-pie.js","webpack:///./node_modules/core-js/modules/_shared.js","webpack:///./node_modules/core-js/modules/_object-gops.js","webpack:///./node_modules/core-js/modules/core.get-iterator-method.js","webpack:///./node_modules/core-js/modules/_iter-detect.js","webpack:///./node_modules/core-js/modules/_fix-re-wks.js","webpack:///./node_modules/core-js/modules/_collection.js","webpack:///./node_modules/core-js/modules/_typed.js","webpack:///./node_modules/core-js/modules/_array-includes.js","webpack:///./node_modules/core-js/modules/_is-array.js","webpack:///./node_modules/core-js/modules/_iter-define.js","webpack:///./node_modules/core-js/modules/_is-regexp.js","webpack:///./node_modules/core-js/modules/_flags.js","webpack:///./node_modules/core-js/modules/_species-constructor.js","webpack:///./node_modules/core-js/modules/_dom-create.js","webpack:///./node_modules/core-js/modules/_shared-key.js","webpack:///./node_modules/core-js/modules/_enum-bug-keys.js","webpack:///./node_modules/core-js/modules/_html.js","webpack:///./node_modules/core-js/modules/_set-proto.js","webpack:///./node_modules/core-js/modules/_string-ws.js","webpack:///./node_modules/core-js/modules/_inherit-if-required.js","webpack:///./node_modules/core-js/modules/_math-sign.js","webpack:///./node_modules/core-js/modules/_math-expm1.js","webpack:///./node_modules/core-js/modules/_iter-create.js","webpack:///./node_modules/core-js/modules/_string-context.js","webpack:///./node_modules/core-js/modules/_fails-is-regexp.js","webpack:///./node_modules/core-js/modules/_is-array-iter.js","webpack:///./node_modules/core-js/modules/_array-fill.js","webpack:///./node_modules/core-js/modules/_typed-buffer.js","webpack:///./node_modules/core-js/modules/_object-assign.js","webpack:///./node_modules/core-js/modules/_invoke.js","webpack:///./node_modules/core-js/modules/_string-repeat.js","webpack:///./node_modules/core-js/modules/_string-at.js","webpack:///./node_modules/core-js/modules/_create-property.js","webpack:///./node_modules/core-js/modules/es6.array.iterator.js","webpack:///./node_modules/core-js/modules/_iter-step.js","webpack:///./node_modules/core-js/modules/_task.js","webpack:///./node_modules/core-js/modules/_new-promise-capability.js","webpack:///./node_modules/core-js/modules/_user-agent.js","webpack:///./node_modules/core-js/modules/_ie8-dom-define.js","webpack:///./node_modules/core-js/modules/_wks-ext.js","webpack:///./node_modules/core-js/modules/_wks-define.js","webpack:///./node_modules/core-js/modules/_object-keys-internal.js","webpack:///./node_modules/core-js/modules/_object-dps.js","webpack:///./node_modules/core-js/modules/_object-gopn-ext.js","webpack:///./node_modules/core-js/modules/_bind.js","webpack:///./node_modules/core-js/modules/_parse-int.js","webpack:///./node_modules/core-js/modules/_parse-float.js","webpack:///./node_modules/core-js/modules/_a-number-value.js","webpack:///./node_modules/core-js/modules/_is-integer.js","webpack:///./node_modules/core-js/modules/_math-log1p.js","webpack:///./node_modules/core-js/modules/_iter-call.js","webpack:///./node_modules/core-js/modules/_array-species-create.js","webpack:///./node_modules/core-js/modules/_array-reduce.js","webpack:///./node_modules/core-js/modules/_array-copy-within.js","webpack:///./node_modules/core-js/modules/es6.regexp.flags.js","webpack:///./node_modules/core-js/modules/_microtask.js","webpack:///./node_modules/core-js/modules/es6.map.js","webpack:///./node_modules/core-js/modules/_collection-strong.js","webpack:///./node_modules/core-js/modules/es6.set.js","webpack:///./node_modules/core-js/modules/es6.weak-map.js","webpack:///./node_modules/core-js/modules/_collection-weak.js","webpack:///./node_modules/core-js/modules/_to-index.js","webpack:///./node_modules/core-js/modules/_own-keys.js","webpack:///./node_modules/core-js/modules/_math-fround.js","webpack:///./node_modules/core-js/modules/_perform.js","webpack:///./node_modules/core-js/modules/_promise-resolve.js","webpack:///./node_modules/core-js/modules/_array-from-iterable.js","webpack:///./node_modules/core-js/modules/es6.symbol.js","webpack:///./node_modules/core-js/modules/_enum-keys.js","webpack:///./node_modules/core-js/modules/es6.object.create.js","webpack:///./node_modules/core-js/modules/es6.object.define-property.js","webpack:///./node_modules/core-js/modules/es6.object.define-properties.js","webpack:///./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es6.object.get-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.object.keys.js","webpack:///./node_modules/core-js/modules/es6.object.get-own-property-names.js","webpack:///./node_modules/core-js/modules/es6.object.freeze.js","webpack:///./node_modules/core-js/modules/es6.object.seal.js","webpack:///./node_modules/core-js/modules/es6.object.prevent-extensions.js","webpack:///./node_modules/core-js/modules/es6.object.is-frozen.js","webpack:///./node_modules/core-js/modules/es6.object.is-sealed.js","webpack:///./node_modules/core-js/modules/es6.object.is-extensible.js","webpack:///./node_modules/core-js/modules/es6.object.assign.js","webpack:///./node_modules/core-js/modules/es6.object.is.js","webpack:///./node_modules/core-js/modules/_same-value.js","webpack:///./node_modules/core-js/modules/es6.object.set-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.object.to-string.js","webpack:///./node_modules/core-js/modules/es6.function.bind.js","webpack:///./node_modules/core-js/modules/es6.function.name.js","webpack:///./node_modules/core-js/modules/es6.function.has-instance.js","webpack:///./node_modules/core-js/modules/es6.parse-int.js","webpack:///./node_modules/core-js/modules/es6.parse-float.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js","webpack:///./node_modules/core-js/modules/es6.number.to-fixed.js","webpack:///./node_modules/core-js/modules/es6.number.to-precision.js","webpack:///./node_modules/core-js/modules/es6.number.epsilon.js","webpack:///./node_modules/core-js/modules/es6.number.is-finite.js","webpack:///./node_modules/core-js/modules/es6.number.is-integer.js","webpack:///./node_modules/core-js/modules/es6.number.is-nan.js","webpack:///./node_modules/core-js/modules/es6.number.is-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.max-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.min-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.parse-float.js","webpack:///./node_modules/core-js/modules/es6.number.parse-int.js","webpack:///./node_modules/core-js/modules/es6.math.acosh.js","webpack:///./node_modules/core-js/modules/es6.math.asinh.js","webpack:///./node_modules/core-js/modules/es6.math.atanh.js","webpack:///./node_modules/core-js/modules/es6.math.cbrt.js","webpack:///./node_modules/core-js/modules/es6.math.clz32.js","webpack:///./node_modules/core-js/modules/es6.math.cosh.js","webpack:///./node_modules/core-js/modules/es6.math.expm1.js","webpack:///./node_modules/core-js/modules/es6.math.fround.js","webpack:///./node_modules/core-js/modules/es6.math.hypot.js","webpack:///./node_modules/core-js/modules/es6.math.imul.js","webpack:///./node_modules/core-js/modules/es6.math.log10.js","webpack:///./node_modules/core-js/modules/es6.math.log1p.js","webpack:///./node_modules/core-js/modules/es6.math.log2.js","webpack:///./node_modules/core-js/modules/es6.math.sign.js","webpack:///./node_modules/core-js/modules/es6.math.sinh.js","webpack:///./node_modules/core-js/modules/es6.math.tanh.js","webpack:///./node_modules/core-js/modules/es6.math.trunc.js","webpack:///./node_modules/core-js/modules/es6.string.from-code-point.js","webpack:///./node_modules/core-js/modules/es6.string.raw.js","webpack:///./node_modules/core-js/modules/es6.string.trim.js","webpack:///./node_modules/core-js/modules/es6.string.iterator.js","webpack:///./node_modules/core-js/modules/es6.string.code-point-at.js","webpack:///./node_modules/core-js/modules/es6.string.ends-with.js","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./node_modules/core-js/modules/es6.string.repeat.js","webpack:///./node_modules/core-js/modules/es6.string.starts-with.js","webpack:///./node_modules/core-js/modules/es6.string.anchor.js","webpack:///./node_modules/core-js/modules/es6.string.big.js","webpack:///./node_modules/core-js/modules/es6.string.blink.js","webpack:///./node_modules/core-js/modules/es6.string.bold.js","webpack:///./node_modules/core-js/modules/es6.string.fixed.js","webpack:///./node_modules/core-js/modules/es6.string.fontcolor.js","webpack:///./node_modules/core-js/modules/es6.string.fontsize.js","webpack:///./node_modules/core-js/modules/es6.string.italics.js","webpack:///./node_modules/core-js/modules/es6.string.link.js","webpack:///./node_modules/core-js/modules/es6.string.small.js","webpack:///./node_modules/core-js/modules/es6.string.strike.js","webpack:///./node_modules/core-js/modules/es6.string.sub.js","webpack:///./node_modules/core-js/modules/es6.string.sup.js","webpack:///./node_modules/core-js/modules/es6.date.now.js","webpack:///./node_modules/core-js/modules/es6.date.to-json.js","webpack:///./node_modules/core-js/modules/es6.date.to-iso-string.js","webpack:///./node_modules/core-js/modules/_date-to-iso-string.js","webpack:///./node_modules/core-js/modules/es6.date.to-string.js","webpack:///./node_modules/core-js/modules/es6.date.to-primitive.js","webpack:///./node_modules/core-js/modules/_date-to-primitive.js","webpack:///./node_modules/core-js/modules/es6.array.is-array.js","webpack:///./node_modules/core-js/modules/es6.array.from.js","webpack:///./node_modules/core-js/modules/es6.array.of.js","webpack:///./node_modules/core-js/modules/es6.array.join.js","webpack:///./node_modules/core-js/modules/es6.array.slice.js","webpack:///./node_modules/core-js/modules/es6.array.sort.js","webpack:///./node_modules/core-js/modules/es6.array.for-each.js","webpack:///./node_modules/core-js/modules/_array-species-constructor.js","webpack:///./node_modules/core-js/modules/es6.array.map.js","webpack:///./node_modules/core-js/modules/es6.array.filter.js","webpack:///./node_modules/core-js/modules/es6.array.some.js","webpack:///./node_modules/core-js/modules/es6.array.every.js","webpack:///./node_modules/core-js/modules/es6.array.reduce.js","webpack:///./node_modules/core-js/modules/es6.array.reduce-right.js","webpack:///./node_modules/core-js/modules/es6.array.index-of.js","webpack:///./node_modules/core-js/modules/es6.array.last-index-of.js","webpack:///./node_modules/core-js/modules/es6.array.copy-within.js","webpack:///./node_modules/core-js/modules/es6.array.fill.js","webpack:///./node_modules/core-js/modules/es6.array.find.js","webpack:///./node_modules/core-js/modules/es6.array.find-index.js","webpack:///./node_modules/core-js/modules/es6.array.species.js","webpack:///./node_modules/core-js/modules/es6.regexp.constructor.js","webpack:///./node_modules/core-js/modules/es6.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es6.regexp.match.js","webpack:///./node_modules/core-js/modules/es6.regexp.replace.js","webpack:///./node_modules/core-js/modules/es6.regexp.search.js","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/core-js/modules/es6.promise.js","webpack:///./node_modules/core-js/modules/es6.weak-set.js","webpack:///./node_modules/core-js/modules/es6.typed.array-buffer.js","webpack:///./node_modules/core-js/modules/es6.typed.data-view.js","webpack:///./node_modules/core-js/modules/es6.typed.int8-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint8-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint8-clamped-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int16-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint16-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.float32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.float64-array.js","webpack:///./node_modules/core-js/modules/es6.reflect.apply.js","webpack:///./node_modules/core-js/modules/es6.reflect.construct.js","webpack:///./node_modules/core-js/modules/es6.reflect.define-property.js","webpack:///./node_modules/core-js/modules/es6.reflect.delete-property.js","webpack:///./node_modules/core-js/modules/es6.reflect.enumerate.js","webpack:///./node_modules/core-js/modules/es6.reflect.get.js","webpack:///./node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es6.reflect.get-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.reflect.has.js","webpack:///./node_modules/core-js/modules/es6.reflect.is-extensible.js","webpack:///./node_modules/core-js/modules/es6.reflect.own-keys.js","webpack:///./node_modules/core-js/modules/es6.reflect.prevent-extensions.js","webpack:///./node_modules/core-js/modules/es6.reflect.set.js","webpack:///./node_modules/core-js/modules/es6.reflect.set-prototype-of.js","webpack:///./node_modules/core-js/modules/es7.reflect.define-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.delete-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-metadata-keys.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-own-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js","webpack:///./node_modules/core-js/modules/es7.reflect.has-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.has-own-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.metadata.js","webpack:///./src/app/polyfills.ts","webpack:///./node_modules/core-js/es6/index.js","webpack:///./node_modules/core-js/es7/reflect.js","webpack:///./node_modules/zone.js/dist/zone.js","webpack:///./node_modules/whatwg-fetch/fetch.js","webpack:///./node_modules/webcrypto-shim/webcrypto-shim.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","global","core","hide","redefine","ctx","$export","type","source","own","out","exp","IS_FORCED","F","IS_GLOBAL","G","IS_STATIC","S","IS_PROTO","P","IS_BIND","B","target","expProto","undefined","Function","U","W","R","isObject","it","TypeError","window","Math","self","__g","exec","e","store","uid","USE_SYMBOL","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","a","toInteger","min","defined","fails","quot","createHTML","string","tag","attribute","String","p1","replace","NAME","test","toLowerCase","split","length","has","SRC","$toString","TPL","inspectSource","val","safe","isFunction","join","this","IObject","version","__e","createDesc","toObject","IE_PROTO","ObjectProto","getPrototypeOf","constructor","pIE","toIObject","gOPD","getOwnPropertyDescriptor","method","arg","aFunction","fn","that","b","apply","arguments","toString","slice","KEY","toLength","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","callbackfn","res","index","result","push","ceil","floor","isNaN","valueOf","LIBRARY","$typed","$buffer","anInstance","propertyDesc","redefineAll","toIndex","toAbsoluteIndex","classof","isArrayIter","gOPN","getIterFn","wks","createArrayMethod","createArrayIncludes","speciesConstructor","ArrayIterators","Iterators","$iterDetect","setSpecies","arrayFill","arrayCopyWithin","$DP","$GOPD","RangeError","Uint8Array","ArrayProto","Array","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayFind","arrayFindIndex","arrayIncludes","arrayIndexOf","arrayValues","values","arrayKeys","keys","arrayEntries","entries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","sort","arraySlice","arrayToString","arrayToLocaleString","toLocaleString","ITERATOR","TAG","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","set","toOffset","BYTES","offset","validate","C","speciesFromList","list","fromList","addGetter","internal","_d","$from","step","iterator","aLen","mapfn","mapping","iterFn","next","done","$of","TO_LOCALE_BUG","$toLocaleString","proto","copyWithin","start","every","fill","filter","find","predicate","findIndex","forEach","indexOf","searchElement","includes","separator","map","reverse","middle","some","comparefn","subarray","begin","end","$begin","byteOffset","BYTES_PER_ELEMENT","$slice","$set","arrayLike","src","len","$iterators","isTAIndex","$getDesc","$setDesc","desc","configurable","writable","$TypedArrayPrototype$","wrapper","CLAMPED","GETTER","SETTER","TypedArray","Base","TAC","FORCED","ABV","TypedArrayPrototype","addElement","data","v","round","setter","$offset","$length","byteLength","klass","$len","iter","concat","$nativeIterator","CORRECT_ITER_NAME","$iterator","of","from","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","keyMetadata","MetadataKey","metadataMap","MetadataValue","_","META","setDesc","id","isExtensible","FREEZE","preventExtensions","setMeta","w","meta","NEED","fastKey","getWeak","onFreeze","dPs","enumBugKeys","Empty","createDict","iframeDocument","iframe","style","display","appendChild","contentWindow","document","open","write","lt","close","Properties","bitmap","px","random","$keys","max","hiddenKeys","getOwnPropertyNames","UNSCOPABLES","DESCRIPTORS","SPECIES","Constructor","forbiddenField","BREAK","RETURN","iterable","g","eval","def","stat","_t","cof","ARG","T","tryGet","callee","propertyIsEnumerable","spaces","space","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","copyright","getOwnPropertySymbols","getIteratorMethod","SAFE_CLOSING","riter","skipClosing","arr","SYMBOL","fns","strfn","rxfn","forOf","setToStringTag","inheritIfRequired","methods","common","IS_WEAK","ADDER","fixMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","clear","getConstructor","setStrong","Typed","TypedArrayConstructors","IS_INCLUDES","el","fromIndex","isArray","$iterCreate","BUGGY","returnThis","DEFAULT","IS_SET","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","MATCH","isRegExp","ignoreCase","multiline","unicode","sticky","D","is","createElement","documentElement","check","setPrototypeOf","buggy","__proto__","sign","x","$expm1","expm1","descriptor","searchString","re","endPos","PROTOTYPE","WRONG_INDEX","Infinity","BaseBuffer","abs","pow","log","LN2","$BUFFER","$LENGTH","$OFFSET","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","intIndex","_b","pack","conversion","ArrayBufferProto","j","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","getKeys","gOPS","$assign","assign","A","K","k","getSymbols","isEnum","args","un","count","str","TO_STRING","pos","charCodeAt","charAt","$defineProperty","addToUnscopables","iterated","_i","_k","Arguments","defer","channel","port","invoke","html","cel","process","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","Dispatch","counter","queue","run","listener","event","nextTick","now","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","setTimeout","resolve","reject","promise","$$resolve","$$reject","navigator","userAgent","wksExt","$Symbol","names","defineProperties","windowNames","getWindowNames","factories","partArgs","bound","construct","$parseInt","parseInt","$trim","ws","hex","radix","$parseFloat","parseFloat","msg","isFinite","log1p","ret","original","memo","isRight","to","inc","flags","macrotask","Observer","MutationObserver","WebKitMutationObserver","Promise","isNode","head","last","notify","flush","parent","domain","exit","enter","standalone","then","toggle","node","createTextNode","observe","characterData","task","strong","entry","getEntry","$iterDefine","SIZE","_f","_l","delete","prev","add","InternalMap","each","weak","uncaughtFrozenStore","ufstore","tmp","$WeakMap","freeze","$has","UncaughtFrozenStore","findUncaughtFrozen","splice","number","Reflect","ownKeys","EPSILON","EPSILON32","MAX32","MIN32","fround","$abs","$sign","roundTiesToEven","newPromiseCapability","promiseCapability","$fails","wksDefine","enumKeys","_create","gOPNExt","$JSON","JSON","_stringify","stringify","HIDDEN","TO_PRIMITIVE","SymbolRegistry","AllSymbols","OPSymbols","USE_NATIVE","QObject","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","for","keyFor","useSetter","useSimple","replacer","$replacer","symbols","$getPrototypeOf","$freeze","$seal","$preventExtensions","$isFrozen","$isSealed","$isExtensible","y","FProto","nameRE","match","HAS_INSTANCE","FunctionProto","$Number","BROKEN_COF","TRIM","toNumber","argument","third","maxCode","first","code","digits","aNumberValue","repeat","$toFixed","toFixed","ERROR","multiply","c2","divide","numToString","acc","fractionDigits","z","x2","$toPrecision","toPrecision","precision","_isFinite","isInteger","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","Number","sqrt","$acosh","acosh","MAX_VALUE","$asinh","asinh","$atanh","atanh","cbrt","clz32","LOG2E","cosh","hypot","value1","value2","div","sum","larg","$imul","imul","xn","yn","xl","yl","log10","LOG10E","log2","sinh","tanh","trunc","fromCharCode","$fromCodePoint","fromCodePoint","raw","callSite","tpl","$at","point","codePointAt","context","$endsWith","endsWith","endPosition","search","$startsWith","startsWith","color","size","url","Date","getTime","toJSON","toISOString","pv","$toISOString","lz","num","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","DateProto","hint","createProperty","upTo","cloned","$sort","$forEach","STRICT","$filter","$some","$every","$reduce","$indexOf","NEGATIVE_ZERO","$find","forced","$flags","$RegExp","re1","re2","CORRECT_NEW","tiRE","piRE","fiU","proxy","define","$match","regexp","REPLACE","$replace","searchValue","replaceValue","SEARCH","$search","SPLIT","$split","_split","$push","NPCG","limit","separator2","lastIndex","lastLength","output","lastLastIndex","splitLimit","separatorCopy","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","microtask","newPromiseCapabilityModule","perform","promiseResolve","versions","v8","$Promise","empty","FakePromise","PromiseRejectionEvent","isThenable","isReject","_n","chain","_c","_v","ok","_s","reaction","exited","handler","fail","_h","onHandleUnhandled","onUnhandled","console","unhandled","isUnhandled","emit","onunhandledrejection","reason","error","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","catch","capability","all","remaining","$index","alreadyCalled","race","$isView","isView","fin","viewS","viewT","init","rApply","fApply","thisArgument","argumentsList","L","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","propertyKey","attributes","deleteProperty","Enumerate","enumerate","receiver","getProto","V","existingDescriptor","ownDesc","setProto","metadata","toMetaKey","ordinaryDefineOwnMetadata","defineMetadata","metadataKey","metadataValue","deleteMetadata","ordinaryHasOwnMetadata","ordinaryGetOwnMetadata","ordinaryGetMetadata","getMetadata","Set","ordinaryOwnMetadataKeys","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","getOwnMetadata","getOwnMetadataKeys","ordinaryHasMetadata","hasMetadata","hasOwnMetadata","$metadata","factory","performance","mark","performanceMeasure","label","Error","nativeMicroTaskQueuePromise","Zone","zoneSpec","_properties","_parent","_name","properties","_zoneDelegate","ZoneDelegate","assertZonePatched","patches","zone","current","_currentZoneFrame","_currentTask","__load_patch","perfName","_api","getZoneWith","fork","callback","_callback","intercept","runGuarded","applyThis","applyArgs","handleError","runTask","NO_ZONE","state","notScheduled","eventTask","reEntryGuard","running","_transitionTo","scheduled","runCount","previousTask","macroTask","isPeriodic","cancelFn","invokeTask","unknown","_updateTaskCount","scheduleTask","newZone","scheduling","zoneDelegates","_zoneDelegates","_zone","scheduleMicroTask","customSchedule","ZoneTask","microTask","scheduleMacroTask","customCancel","scheduleEventTask","cancelTask","canceling","__symbol__","DELEGATE_ZS","onHasTask","delegate","hasTaskState","hasTask","onScheduleTask","onInvokeTask","onCancelTask","parentDelegate","_taskCounts","_parentDelegate","_forkZS","onFork","_forkDlgt","_forkCurrZone","_interceptZS","onIntercept","_interceptDlgt","_interceptCurrZone","_invokeZS","onInvoke","_invokeDlgt","_invokeCurrZone","_handleErrorZS","onHandleError","_handleErrorDlgt","_handleErrorCurrZone","_scheduleTaskZS","_scheduleTaskDlgt","_scheduleTaskCurrZone","_invokeTaskZS","_invokeTaskDlgt","_invokeTaskCurrZone","_cancelTaskZS","_cancelTaskDlgt","_cancelTaskCurrZone","_hasTaskZS","_hasTaskDlgt","_hasTaskDlgtOwner","_hasTaskCurrZone","zoneSpecHasTask","parentHasTask","targetZone","returnTask","scheduleFn","isEmpty","counts","change","options","_state","useG","_numberOfNestedTaskFrames","drainMicroTaskQueue","cancelScheduleRequest","toState","fromState1","fromState2","handleId","symbolSetTimeout","symbolPromise","symbolThen","_microTaskQueue","_isDrainingMicrotaskQueue","onUnhandledError","microtaskDrainDone","symbol","currentZoneFrame","noop","showUncaughtError","patchEventTarget","patchOnProperties","patchMethod","bindArguments","setNativePromise","NativePromise","api","ObjectGetOwnPropertyDescriptor","ObjectDefineProperty","_uncaughtPromiseErrors","creationTrace","rejection","message","stack","_loop_1","uncaughtPromiseError","shift","handleUnhandledRejection","UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL","forwardResolution","forwardRejection","ZoneAwarePromise","symbolState","symbolValue","symbolFinally","symbolParentPromiseValue","symbolParentPromiseState","UNRESOLVED","RESOLVED","REJECTED","REJECTED_NO_CATCH","makeResolver","resolvePromise","once","wasCalled","wrappedFunction","TYPE_ERROR","CURRENT_TASK_TRACE_SYMBOL","onceWrapper","clearRejectedNoCatch","trace","currentTask","scheduleResolveOrReject","obj","className","readableObjectToString","error_1","REJECTION_HANDLED_HANDLER","chainPromise","promiseState","parentPromiseValue","isFinallyPromise","rej","onResolve","onReject","values_1","resolvedValues","values_2","finally","onFinally","ZONE_AWARE_PROMISE","NewNativePromise","patchThen","symbolThenPatched","Ctor","prop","originalThen","_this","fetch_1","resultPromise","ctor","zoneify","ObjectGetPrototypeOf","ObjectCreate","ArraySlice","ADD_EVENT_LISTENER_STR","REMOVE_EVENT_LISTENER_STR","ZONE_SYMBOL_ADD_EVENT_LISTENER","ZONE_SYMBOL_REMOVE_EVENT_LISTENER","TRUE_STR","FALSE_STR","ZONE_SYMBOL_PREFIX","wrapWithCurrentZone","scheduleMacroTaskWithCurrentZone","zoneSymbol","isWindowExists","internalWindow","_global","REMOVE_ATTRIBUTE","NULL_ON_PROP_VALUE","isPropertyWritable","isWebWorker","WorkerGlobalScope","isBrowser","isMix","zoneSymbolEventNames","wrapFn","eventNameSymbol","preventDefault","patchProperty","originalDescGet","originalDescSet","eventName","substr","newValue","removeEventListener","removeAttribute","onProperties","originalInstanceKey","patchClass","OriginalClass","attachOriginToPatched","patchFn","delegateName","patchDelegate_1","patched","isDetectedIEOrEdge","ieOrEdge","isIEOrEdge","ua","originalFunctionToString","ORIGINAL_DELEGATE_SYMBOL","PROMISE_SYMBOL","ERROR_SYMBOL","newFunctionToString","originalDelegate","nativePromise","nativeError","originalObjectToString","OPTIMIZED_ZONE_EVENT_TASK_DATA","zoneSymbolEventNames$1","globalSources","EVENT_NAME_SYMBOL_REGX","IMMEDIATE_PROPAGATION_SYMBOL","apis","patchOptions","ADD_EVENT_LISTENER","REMOVE_EVENT_LISTENER","rm","LISTENERS_EVENT_LISTENER","listeners","REMOVE_ALL_LISTENERS_EVENT_LISTENER","rmAll","zoneSymbolAddEventListener","ADD_EVENT_LISTENER_SOURCE","PREPEND_EVENT_LISTENER","PREPEND_EVENT_LISTENER_SOURCE","isRemoved","handleEvent","delegate_1","globalZoneAwareCallback","tasks","copyTasks","globalZoneAwareCaptureCallback","patchEventTargetMethods","useGlobalCallback","validateHandler","vh","checkDuplicate","chkDup","returnTarget","nativePrependEventListener","taskData","nativeAddEventListener","nativeRemoveEventListener","nativeListeners","nativeRemoveAllListeners","prepend","isExisting","capture","symbolEventNames","symbolEventName","existingTasks","allRemoved","compare","diff","typeOfDelegate","blackListedEvents","makeAddListener","nativeListener","addSource","customScheduleFn","customCancelFn","isHandleEvent","symbolCapture","constructorName","targetSource","unshift","existingTask","findEventTasks","symbolCaptureEventName","captureTasks","removeTasks","evtName","results","foundTasks","taskSymbol","patchTimer","setName","cancelName","nameSuffix","setNative","clearNative","tasksByHandleId","delay","handle","ref","unref","_defineProperty","_getOwnPropertyDescriptor","unconfigurablesKey","isUnconfigurable","rewriteDescriptor","isFrozen","_tryDefineProperty","originalConfigurableFlag","descJson","windowEventNames","mediaElementEventNames","frameEventNames","frameSetEventNames","marqueeEventNames","XMLHttpRequestEventNames","IDBIndexEventNames","websocketEventNames","workerEventNames","eventNames","patchFilteredProperties","ignoreProperties","tip","ip","targetIgnoreProperties","op","filterProperties","propertyDescriptorPatch","supportsWebSocket","WebSocket","HTMLElement","Element","XMLHttpRequestPrototype","XMLHttpRequest","xhrDesc","req","onreadystatechange","SYMBOL_FAKE_ONREADYSTATECHANGE_1","detectFunc","canPatchViaPropertyDescriptor","__Zone_ignore_on_properties","Document","HTMLMediaElement","HTMLFrameSetElement","HTMLBodyElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement_1","Worker_1","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","onproperty","elt","unboundKey","parentElement","patchViaCapturingAllTheEvents","WS","EventTarget","proxySocket","proxySocketProto","socket","onmessageDesc","propName","propertySymbol","globalWebSocket","patchEvent","Event","patchEventPrototype","registerElementPatch","_registerElement","registerElement","callbacks","opts","_redefineProperty","blockingMethods","SYMBOL_BLACK_LISTED_EVENTS","WTF_ISSUE_555","NO_EVENT_TARGET","isWtf","WTF_ISSUE_555_ARRAY","isDisableIECheck","isEnableCrossContextCheck","BROWSER_TOOLS","targets","apiTypes","nativeDelegate","testString","eventTargetPatch","props","HTMLCanvasElement","toBlob","funcName","metaCreator","cbIdx","patchMacroTask","oriAddListener","oriRemoveListener","XMLHttpRequestEventTargetPrototype","READY_STATE_CHANGE","SCHEDULED","XHR_SCHEDULED","XHR_LISTENER","newListener","readyState","DONE","aborted","storedTask","XHR_TASK","sendNative","placeholderCallback","abortNative","openNative","XHR_SYNC","XHR_URL","findPendingTask","patchXHR","geolocation","fnNames","name_1","patchPrototype","findPromiseRejectionHandler","evt","__webpack_exports__","Headers","Request","Response","DOMException","fetch","support","searchParams","blob","Blob","formData","arrayBuffer","viewClasses","isArrayBufferView","normalizeName","normalizeValue","iteratorFor","items","headers","append","header","consumed","body","bodyUsed","fileReaderReady","reader","onload","onerror","readBlobAsArrayBuffer","FileReader","readAsArrayBuffer","bufferClone","buf","Body","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","FormData","_bodyFormData","URLSearchParams","isDataView","_bodyArrayBuffer","rejected","text","readAsText","readBlobAsText","chars","readArrayBufferAsText","decode","json","parse","oldValue","thisArg","input","credentials","signal","upcased","toUpperCase","normalizeMethod","referrer","form","decodeURIComponent","bodyInit","status","statusText","clone","response","redirectStatuses","redirect","location","request","xhr","abortXhr","abort","rawHeaders","line","parts","parseHeaders","getAllResponseHeaders","responseURL","responseText","ontimeout","onabort","withCredentials","responseType","setRequestHeader","send","polyfill","__WEBPACK_AMD_DEFINE_RESULT__","_crypto","crypto","msCrypto","_subtle","subtle","webkitSubtle","_Crypto","Crypto","_SubtleCrypto","SubtleCrypto","isEdge","CryptoKey","Key","isIE","isWebkit","s2a","btoa","a2s","atob","s2b","b2s","alg","hash","publicExponent","modulusLength","SyntaxError","jwkAlg","HMAC","SHA-1","SHA-256","SHA-384","SHA-512","RSASSA-PKCS1-v1_5","RSAES-PKCS1-v1_5","","RSA-OAEP","AES-KW","128","192","256","AES-GCM","AES-CBC","b2jwk","escape","jwk","kty","ext","extractable","oid2str","KoZIhvcNAQEB","str2oid","1.2.840.113549.1.1.1","b2der","rv","xlen","oid","der2b","use","_key","algorithm","usages","isPubKeyUse","u","isPrvKeyUse","_fn","ka","kx","ku","key_ops","unescape","encodeURIComponent","jwk2b","importKey","getRandomValues","generateKey","exportKey","publicKey","privateKey","info","prv","rsaComp","rsaKey","pkcs2jwk","decrypt","oncomplete","encrypt","jwk2pkcs","tl","tagLength","AesGcmEncryptResult","ciphertext","_digest","digest"],"mappings":"aACA,IAAAA,KAGA,SAAAC,EAAAC,GAGA,GAAAF,EAAAE,GACA,OAAAF,EAAAE,GAAAC,QAGA,IAAAC,EAAAJ,EAAAE,IACAG,EAAAH,EACAI,GAAA,EACAH,YAUA,OANAI,EAAAL,GAAAM,KAAAJ,EAAAD,QAAAC,IAAAD,QAAAF,GAGAG,EAAAE,GAAA,EAGAF,EAAAD,QAKAF,EAAAQ,EAAAF,EAGAN,EAAAS,EAAAV,EAGAC,EAAAU,EAAA,SAAAR,EAAAS,EAAAC,GACAZ,EAAAa,EAAAX,EAAAS,IACAG,OAAAC,eAAAb,EAAAS,GAA0CK,YAAA,EAAAC,IAAAL,KAK1CZ,EAAAkB,EAAA,SAAAhB,GACA,oBAAAiB,eAAAC,aACAN,OAAAC,eAAAb,EAAAiB,OAAAC,aAAwDC,MAAA,WAExDP,OAAAC,eAAAb,EAAA,cAAiDmB,OAAA,KAQjDrB,EAAAsB,EAAA,SAAAD,EAAAE,GAEA,GADA,EAAAA,IAAAF,EAAArB,EAAAqB,IACA,EAAAE,EAAA,OAAAF,EACA,KAAAE,GAAA,iBAAAF,QAAAG,WAAA,OAAAH,EACA,IAAAI,EAAAX,OAAAY,OAAA,MAGA,GAFA1B,EAAAkB,EAAAO,GACAX,OAAAC,eAAAU,EAAA,WAAyCT,YAAA,EAAAK,UACzC,EAAAE,GAAA,iBAAAF,EAAA,QAAAM,KAAAN,EAAArB,EAAAU,EAAAe,EAAAE,EAAA,SAAAA,GAAgH,OAAAN,EAAAM,IAAqBC,KAAA,KAAAD,IACrI,OAAAF,GAIAzB,EAAA6B,EAAA,SAAA1B,GACA,IAAAS,EAAAT,KAAAqB,WACA,WAA2B,OAAArB,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAH,EAAAU,EAAAE,EAAA,IAAAA,GACAA,GAIAZ,EAAAa,EAAA,SAAAiB,EAAAC,GAAsD,OAAAjB,OAAAkB,UAAAC,eAAA1B,KAAAuB,EAAAC,IAGtD/B,EAAAkC,EAAA,GAIAlC,IAAAmC,EAAA,yBClFA,IAAAC,EAAapC,EAAQ,IACrBqC,EAAWrC,EAAQ,IACnBsC,EAAWtC,EAAQ,IACnBuC,EAAevC,EAAQ,IACvBwC,EAAUxC,EAAQ,IAGlByC,EAAA,SAAAC,EAAA/B,EAAAgC,GACA,IAQAhB,EAAAiB,EAAAC,EAAAC,EARAC,EAAAL,EAAAD,EAAAO,EACAC,EAAAP,EAAAD,EAAAS,EACAC,EAAAT,EAAAD,EAAAW,EACAC,EAAAX,EAAAD,EAAAa,EACAC,EAAAb,EAAAD,EAAAe,EACAC,EAAAR,EAAAb,EAAAe,EAAAf,EAAAzB,KAAAyB,EAAAzB,QAAkFyB,EAAAzB,QAAuB,UACzGT,EAAA+C,EAAAZ,IAAA1B,KAAA0B,EAAA1B,OACA+C,EAAAxD,EAAA,YAAAA,EAAA,cAGA,IAAAyB,KADAsB,IAAAN,EAAAhC,GACAgC,EAIAE,IAFAD,GAAAG,GAAAU,QAAAE,IAAAF,EAAA9B,IAEA8B,EAAAd,GAAAhB,GAEAmB,EAAAS,GAAAX,EAAAJ,EAAAK,EAAAT,GAAAiB,GAAA,mBAAAR,EAAAL,EAAAoB,SAAArD,KAAAsC,KAEAY,GAAAlB,EAAAkB,EAAA9B,EAAAkB,EAAAH,EAAAD,EAAAoB,GAEA3D,EAAAyB,IAAAkB,GAAAP,EAAApC,EAAAyB,EAAAmB,GACAO,GAAAK,EAAA/B,IAAAkB,IAAAa,EAAA/B,GAAAkB,IAGAT,EAAAC,OAEAI,EAAAO,EAAA,EACAP,EAAAS,EAAA,EACAT,EAAAW,EAAA,EACAX,EAAAa,EAAA,EACAb,EAAAe,EAAA,GACAf,EAAAqB,EAAA,GACArB,EAAAoB,EAAA,GACApB,EAAAsB,EAAA,IACA5D,EAAAD,QAAAuC,2BC1CA,IAAAuB,EAAehE,EAAQ,IACvBG,EAAAD,QAAA,SAAA+D,GACA,IAAAD,EAAAC,GAAA,MAAAC,UAAAD,EAAA,sBACA,OAAAA,qBCFA,IAAA7B,EAAAjC,EAAAD,QAAA,oBAAAiE,eAAAC,WACAD,OAAA,oBAAAE,WAAAD,WAAAC,KAEAT,SAAA,cAAAA,GACA,iBAAAU,UAAAlC,kBCLAjC,EAAAD,QAAA,SAAAqE,GACA,IACA,QAAAA,IACG,MAAAC,GACH,0BCJArE,EAAAD,QAAA,SAAA+D,GACA,uBAAAA,EAAA,OAAAA,EAAA,mBAAAA,0BCDA,IAAAQ,EAAYzE,EAAQ,IAARA,CAAmB,OAC/B0E,EAAU1E,EAAQ,IAClBmB,EAAanB,EAAQ,IAAWmB,OAChCwD,EAAA,mBAAAxD,GAEAhB,EAAAD,QAAA,SAAAS,GACA,OAAA8D,EAAA9D,KAAA8D,EAAA9D,GACAgE,GAAAxD,EAAAR,KAAAgE,EAAAxD,EAAAuD,GAAA,UAAA/D,MAGA8D,yBCVA,IAAAG,EAAe5E,EAAQ,IACvB6E,EAAqB7E,EAAQ,KAC7B8E,EAAkB9E,EAAQ,IAC1B+E,EAAAjE,OAAAC,eAEAb,EAAA8E,EAAYhF,EAAQ,IAAgBc,OAAAC,eAAA,SAAAkE,EAAA3B,EAAA4B,GAIpC,GAHAN,EAAAK,GACA3B,EAAAwB,EAAAxB,GAAA,GACAsB,EAAAM,GACAL,EAAA,IACA,OAAAE,EAAAE,EAAA3B,EAAA4B,GACG,MAAAV,IACH,WAAAU,GAAA,QAAAA,EAAA,MAAAhB,UAAA,4BAEA,MADA,UAAAgB,IAAAD,EAAA3B,GAAA4B,EAAA7D,OACA4D,oBCbA9E,EAAAD,SAAkBF,EAAQ,GAARA,CAAkB,WACpC,OAA0E,GAA1Ec,OAAAC,kBAAiC,KAAQE,IAAA,WAAmB,YAAckE,uBCD1E,IAAAC,EAAgBpF,EAAQ,IACxBqF,EAAAjB,KAAAiB,IACAlF,EAAAD,QAAA,SAAA+D,GACA,OAAAA,EAAA,EAAAoB,EAAAD,EAAAnB,GAAA,6CCHA,IAAAqB,EAActF,EAAQ,IACtBG,EAAAD,QAAA,SAAA+D,GACA,OAAAnD,OAAAwE,EAAArB,sBCHA9D,EAAAD,QAAA,SAAA+D,GACA,sBAAAA,EAAA,MAAAC,UAAAD,EAAA,uBACA,OAAAA,qBCFA,IAAAxB,EAAczC,EAAQ,GACtBuF,EAAYvF,EAAQ,IACpBsF,EAActF,EAAQ,IACtBwF,EAAA,KAEAC,EAAA,SAAAC,EAAAC,EAAAC,EAAAvE,GACA,IAAA+B,EAAAyC,OAAAP,EAAAI,IACAI,EAAA,IAAAH,EAEA,MADA,KAAAC,IAAAE,GAAA,IAAAF,EAAA,KAAAC,OAAAxE,GAAA0E,QAAAP,EAAA,UAA0F,KAC1FM,EAAA,IAAA1C,EAAA,KAAAuC,EAAA,KAEAxF,EAAAD,QAAA,SAAA8F,EAAAzB,GACA,IAAAU,KACAA,EAAAe,GAAAzB,EAAAkB,GACAhD,IAAAa,EAAAb,EAAAO,EAAAuC,EAAA,WACA,IAAAU,EAAA,GAAAD,GAAA,KACA,OAAAC,MAAAC,eAAAD,EAAAE,MAAA,KAAAC,OAAA,IACG,SAAAnB,oBCjBH,IAAAhD,KAAuBA,eACvB9B,EAAAD,QAAA,SAAA+D,EAAAtC,GACA,OAAAM,EAAA1B,KAAA0D,EAAAtC,qBCFA,IAAAS,EAAapC,EAAQ,IACrBsC,EAAWtC,EAAQ,IACnBqG,EAAUrG,EAAQ,IAClBsG,EAAUtG,EAAQ,GAARA,CAAgB,OAE1BuG,EAAA3C,SAAA,SACA4C,GAAA,GAAAD,GAAAJ,MAFA,YAIAnG,EAAQ,IAASyG,cAAA,SAAAxC,GACjB,OAAAsC,EAAAhG,KAAA0D,KAGA9D,EAAAD,QAAA,SAAA+E,EAAAtD,EAAA+E,EAAAC,GACA,IAAAC,EAAA,mBAAAF,EACAE,IAAAP,EAAAK,EAAA,SAAApE,EAAAoE,EAAA,OAAA/E,IACAsD,EAAAtD,KAAA+E,IACAE,IAAAP,EAAAK,EAAAJ,IAAAhE,EAAAoE,EAAAJ,EAAArB,EAAAtD,GAAA,GAAAsD,EAAAtD,GAAA6E,EAAAK,KAAAhB,OAAAlE,MACAsD,IAAA7C,EACA6C,EAAAtD,GAAA+E,EACGC,EAGA1B,EAAAtD,GACHsD,EAAAtD,GAAA+E,EAEApE,EAAA2C,EAAAtD,EAAA+E,WALAzB,EAAAtD,GACAW,EAAA2C,EAAAtD,EAAA+E,OAOC9C,SAAA5B,UAxBD,WAwBC,WACD,yBAAA8E,WAAAR,IAAAC,EAAAhG,KAAAuG,yBC5BA,IAAAC,EAAc/G,EAAQ,KACtBsF,EAActF,EAAQ,IACtBG,EAAAD,QAAA,SAAA+D,GACA,OAAA8C,EAAAzB,EAAArB,oBCJA,IAAA5B,EAAAlC,EAAAD,SAA6B8G,QAAA,SAC7B,iBAAAC,UAAA5E,oBCDA,IAAA0C,EAAS/E,EAAQ,IACjBkH,EAAiBlH,EAAQ,IACzBG,EAAAD,QAAiBF,EAAQ,IAAgB,SAAA8B,EAAAH,EAAAN,GACzC,OAAA0D,EAAAC,EAAAlD,EAAAH,EAAAuF,EAAA,EAAA7F,KACC,SAAAS,EAAAH,EAAAN,GAED,OADAS,EAAAH,GAAAN,EACAS,qBCLA,IAAAuE,EAAUrG,EAAQ,IAClBmH,EAAenH,EAAQ,IACvBoH,EAAepH,EAAQ,IAARA,CAAuB,YACtCqH,EAAAvG,OAAAkB,UAEA7B,EAAAD,QAAAY,OAAAwG,gBAAA,SAAArC,GAEA,OADAA,EAAAkC,EAAAlC,GACAoB,EAAApB,EAAAmC,GAAAnC,EAAAmC,GACA,mBAAAnC,EAAAsC,aAAAtC,eAAAsC,YACAtC,EAAAsC,YAAAvF,UACGiD,aAAAnE,OAAAuG,EAAA,wBCXH,IAAAG,EAAUxH,EAAQ,KAClBkH,EAAiBlH,EAAQ,IACzByH,EAAgBzH,EAAQ,IACxB8E,EAAkB9E,EAAQ,IAC1BqG,EAAUrG,EAAQ,IAClB6E,EAAqB7E,EAAQ,KAC7B0H,EAAA5G,OAAA6G,yBAEAzH,EAAA8E,EAAYhF,EAAQ,IAAgB0H,EAAA,SAAAzC,EAAA3B,GAGpC,GAFA2B,EAAAwC,EAAAxC,GACA3B,EAAAwB,EAAAxB,GAAA,GACAuB,EAAA,IACA,OAAA6C,EAAAzC,EAAA3B,GACG,MAAAkB,IACH,GAAA6B,EAAApB,EAAA3B,GAAA,OAAA4D,GAAAM,EAAAxC,EAAAzE,KAAA0E,EAAA3B,GAAA2B,EAAA3B,mCCbA,IAAAiC,EAAYvF,EAAQ,IAEpBG,EAAAD,QAAA,SAAA0H,EAAAC,GACA,QAAAD,GAAArC,EAAA,WAEAsC,EAAAD,EAAArH,KAAA,kBAAuD,GAAAqH,EAAArH,KAAA,0BCLvD,IAAAuH,EAAgB9H,EAAQ,IACxBG,EAAAD,QAAA,SAAA6H,EAAAC,EAAA5B,GAEA,GADA0B,EAAAC,QACApE,IAAAqE,EAAA,OAAAD,EACA,OAAA3B,GACA,uBAAAjB,GACA,OAAA4C,EAAAxH,KAAAyH,EAAA7C,IAEA,uBAAAA,EAAA8C,GACA,OAAAF,EAAAxH,KAAAyH,EAAA7C,EAAA8C,IAEA,uBAAA9C,EAAA8C,EAAAxH,GACA,OAAAsH,EAAAxH,KAAAyH,EAAA7C,EAAA8C,EAAAxH,IAGA,kBACA,OAAAsH,EAAAG,MAAAF,EAAAG,8BCjBA,IAAAC,KAAiBA,SAEjBjI,EAAAD,QAAA,SAAA+D,GACA,OAAAmE,EAAA7H,KAAA0D,GAAAoE,MAAA,wBCFA,IAAA5F,EAAczC,EAAQ,GACtBqC,EAAWrC,EAAQ,IACnBuF,EAAYvF,EAAQ,IACpBG,EAAAD,QAAA,SAAAoI,EAAA/D,GACA,IAAAwD,GAAA1F,EAAAvB,YAA6BwH,IAAAxH,OAAAwH,GAC7BxF,KACAA,EAAAwF,GAAA/D,EAAAwD,GACAtF,IAAAW,EAAAX,EAAAO,EAAAuC,EAAA,WAAqDwC,EAAA,KAAS,SAAAjF,qBCD9D,IAAAN,EAAUxC,EAAQ,IAClB+G,EAAc/G,EAAQ,KACtBmH,EAAenH,EAAQ,IACvBuI,EAAevI,EAAQ,IACvBwI,EAAUxI,EAAQ,KAClBG,EAAAD,QAAA,SAAAuI,EAAAC,GACA,IAAAC,EAAA,GAAAF,EACAG,EAAA,GAAAH,EACAI,EAAA,GAAAJ,EACAK,EAAA,GAAAL,EACAM,EAAA,GAAAN,EACAO,EAAA,GAAAP,GAAAM,EACArH,EAAAgH,GAAAF,EACA,gBAAAS,EAAAC,EAAAlB,GAQA,IAPA,IAMAtB,EAAAyC,EANAlE,EAAAkC,EAAA8B,GACA5E,EAAA0C,EAAA9B,GACAD,EAAAxC,EAAA0G,EAAAlB,EAAA,GACA5B,EAAAmC,EAAAlE,EAAA+B,QACAgD,EAAA,EACAC,EAAAV,EAAAjH,EAAAuH,EAAA7C,GAAAwC,EAAAlH,EAAAuH,EAAA,QAAAtF,EAEUyC,EAAAgD,EAAeA,IAAA,IAAAJ,GAAAI,KAAA/E,KAEzB8E,EAAAnE,EADA0B,EAAArC,EAAA+E,GACAA,EAAAnE,GACAwD,GACA,GAAAE,EAAAU,EAAAD,GAAAD,OACA,GAAAA,EAAA,OAAAV,GACA,gBACA,cAAA/B,EACA,cAAA0C,EACA,OAAAC,EAAAC,KAAA5C,QACS,GAAAoC,EAAA,SAGT,OAAAC,GAAA,EAAAF,GAAAC,IAAAO,mBCxCA,IAAAE,EAAAnF,KAAAmF,KACAC,EAAApF,KAAAoF,MACArJ,EAAAD,QAAA,SAAA+D,GACA,OAAAwF,MAAAxF,MAAA,GAAAA,EAAA,EAAAuF,EAAAD,GAAAtF,uBCHA,IAAAD,EAAehE,EAAQ,IAGvBG,EAAAD,QAAA,SAAA+D,EAAAb,GACA,IAAAY,EAAAC,GAAA,OAAAA,EACA,IAAA8D,EAAArB,EACA,GAAAtD,GAAA,mBAAA2E,EAAA9D,EAAAmE,YAAApE,EAAA0C,EAAAqB,EAAAxH,KAAA0D,IAAA,OAAAyC,EACA,sBAAAqB,EAAA9D,EAAAyF,WAAA1F,EAAA0C,EAAAqB,EAAAxH,KAAA0D,IAAA,OAAAyC,EACA,IAAAtD,GAAA,mBAAA2E,EAAA9D,EAAAmE,YAAApE,EAAA0C,EAAAqB,EAAAxH,KAAA0D,IAAA,OAAAyC,EACA,MAAAxC,UAAA,2DCTA/D,EAAAD,QAAA,SAAA+D,GACA,QAAAN,GAAAM,EAAA,MAAAC,UAAA,yBAAAD,GACA,OAAAA,iCCFA,GAAIjE,EAAQ,IAAgB,CAC5B,IAAA2J,EAAgB3J,EAAQ,IACxBoC,EAAepC,EAAQ,IACvBuF,EAAcvF,EAAQ,IACtByC,EAAgBzC,EAAQ,GACxB4J,EAAe5J,EAAQ,KACvB6J,EAAgB7J,EAAQ,KACxBwC,EAAYxC,EAAQ,IACpB8J,EAAmB9J,EAAQ,IAC3B+J,EAAqB/J,EAAQ,IAC7BsC,EAAatC,EAAQ,IACrBgK,EAAoBhK,EAAQ,IAC5BoF,EAAkBpF,EAAQ,IAC1BuI,EAAiBvI,EAAQ,IACzBiK,EAAgBjK,EAAQ,KACxBkK,EAAwBlK,EAAQ,IAChC8E,EAAoB9E,EAAQ,IAC5BqG,EAAYrG,EAAQ,IACpBmK,EAAgBnK,EAAQ,IACxBgE,EAAiBhE,EAAQ,IACzBmH,EAAiBnH,EAAQ,IACzBoK,EAAoBpK,EAAQ,KAC5B0B,EAAe1B,EAAQ,IACvBsH,EAAuBtH,EAAQ,IAC/BqK,EAAarK,EAAQ,IAAgBgF,EACrCsF,EAAkBtK,EAAQ,KAC1B0E,EAAY1E,EAAQ,IACpBuK,EAAYvK,EAAQ,IACpBwK,EAA0BxK,EAAQ,IAClCyK,EAA4BzK,EAAQ,KACpC0K,EAA2B1K,EAAQ,KACnC2K,EAAuB3K,EAAQ,KAC/B4K,EAAkB5K,EAAQ,IAC1B6K,EAAoB7K,EAAQ,KAC5B8K,EAAmB9K,EAAQ,IAC3B+K,EAAkB/K,EAAQ,KAC1BgL,EAAwBhL,EAAQ,KAChCiL,EAAYjL,EAAQ,IACpBkL,EAAclL,EAAQ,IACtB+E,EAAAkG,EAAAjG,EACA0C,EAAAwD,EAAAlG,EACAmG,EAAA/I,EAAA+I,WACAjH,EAAA9B,EAAA8B,UACAkH,EAAAhJ,EAAAgJ,WAKAC,EAAAC,MAAA,UACAC,EAAA1B,EAAA2B,YACAC,EAAA5B,EAAA6B,SACAC,EAAAnB,EAAA,GACAoB,EAAApB,EAAA,GACAqB,EAAArB,EAAA,GACAsB,EAAAtB,EAAA,GACAuB,EAAAvB,EAAA,GACAwB,GAAAxB,EAAA,GACAyB,GAAAxB,GAAA,GACAyB,GAAAzB,GAAA,GACA0B,GAAAxB,EAAAyB,OACAC,GAAA1B,EAAA2B,KACAC,GAAA5B,EAAA6B,QACAC,GAAApB,EAAAqB,YACAC,GAAAtB,EAAAuB,OACAC,GAAAxB,EAAAyB,YACAC,GAAA1B,EAAAxE,KACAmG,GAAA3B,EAAA4B,KACAC,GAAA7B,EAAAhD,MACA8E,GAAA9B,EAAAjD,SACAgF,GAAA/B,EAAAgC,eACAC,GAAA/C,EAAA,YACAgD,GAAAhD,EAAA,eACAiD,GAAA9I,EAAA,qBACA+I,GAAA/I,EAAA,mBACAgJ,GAAA9D,EAAA+D,OACAC,GAAAhE,EAAAiE,MACAC,GAAAlE,EAAAkE,KAGAC,GAAAvD,EAAA,WAAAvF,EAAAmB,GACA,OAAA4H,GAAAtD,EAAAzF,IAAAwI,KAAArH,KAGA6H,GAAA1I,EAAA,WAEA,eAAA6F,EAAA,IAAA8C,aAAA,IAAAC,QAAA,KAGAC,KAAAhD,OAAA,UAAAiD,KAAA9I,EAAA,WACA,IAAA6F,EAAA,GAAAiD,UAGAC,GAAA,SAAArK,EAAAsK,GACA,IAAAC,EAAApJ,EAAAnB,GACA,GAAAuK,EAAA,GAAAA,EAAAD,EAAA,MAAApD,EAAA,iBACA,OAAAqD,GAGAC,GAAA,SAAAxK,GACA,GAAAD,EAAAC,IAAA2J,MAAA3J,EAAA,OAAAA,EACA,MAAAC,EAAAD,EAAA,2BAGA+J,GAAA,SAAAU,EAAAtI,GACA,KAAApC,EAAA0K,IAAAlB,MAAAkB,GACA,MAAAxK,EAAA,wCACK,WAAAwK,EAAAtI,IAGLuI,GAAA,SAAA1J,EAAA2J,GACA,OAAAC,GAAAnE,EAAAzF,IAAAwI,KAAAmB,IAGAC,GAAA,SAAAH,EAAAE,GAIA,IAHA,IAAAxF,EAAA,EACAhD,EAAAwI,EAAAxI,OACAiD,EAAA2E,GAAAU,EAAAtI,GACAA,EAAAgD,GAAAC,EAAAD,GAAAwF,EAAAxF,KACA,OAAAC,GAGAyF,GAAA,SAAA7K,EAAAtC,EAAAoN,GACAhK,EAAAd,EAAAtC,GAAiBV,IAAA,WAAmB,OAAA6F,KAAAkI,GAAAD,OAGpCE,GAAA,SAAAtM,GACA,IAKAvC,EAAAgG,EAAAgG,EAAA/C,EAAA6F,EAAAC,EALAlK,EAAAkC,EAAAxE,GACAyM,EAAAjH,UAAA/B,OACAiJ,EAAAD,EAAA,EAAAjH,UAAA,QAAAxE,EACA2L,OAAA3L,IAAA0L,EACAE,EAAAjF,EAAArF,GAEA,QAAAtB,GAAA4L,IAAAnF,EAAAmF,GAAA,CACA,IAAAJ,EAAAI,EAAAhP,KAAA0E,GAAAmH,KAAAhM,EAAA,IAAyD8O,EAAAC,EAAAK,QAAAC,KAAgCrP,IACzFgM,EAAA9C,KAAA4F,EAAA7N,OACO4D,EAAAmH,EAGP,IADAkD,GAAAF,EAAA,IAAAC,EAAA7M,EAAA6M,EAAAlH,UAAA,OACA/H,EAAA,EAAAgG,EAAAmC,EAAAtD,EAAAmB,QAAAiD,EAAA2E,GAAAlH,KAAAV,GAA6EA,EAAAhG,EAAYA,IACzFiJ,EAAAjJ,GAAAkP,EAAAD,EAAApK,EAAA7E,MAAA6E,EAAA7E,GAEA,OAAAiJ,GAGAqG,GAAA,WAIA,IAHA,IAAAtG,EAAA,EACAhD,EAAA+B,UAAA/B,OACAiD,EAAA2E,GAAAlH,KAAAV,GACAA,EAAAgD,GAAAC,EAAAD,GAAAjB,UAAAiB,KACA,OAAAC,GAIAsG,KAAAvE,GAAA7F,EAAA,WAAyD6H,GAAA7M,KAAA,IAAA6K,EAAA,MAEzDwE,GAAA,WACA,OAAAxC,GAAAlF,MAAAyH,GAAAzC,GAAA3M,KAAAkO,GAAA3H,OAAA2H,GAAA3H,MAAAqB,YAGA0H,IACAC,WAAA,SAAArM,EAAAsM,GACA,OAAA/E,EAAAzK,KAAAkO,GAAA3H,MAAArD,EAAAsM,EAAA5H,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEAqM,MAAA,SAAA9G,GACA,OAAA4C,EAAA2C,GAAA3H,MAAAoC,EAAAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEAsM,KAAA,SAAA5O,GACA,OAAA0J,EAAA7C,MAAAuG,GAAA3H,MAAAqB,YAEA+H,OAAA,SAAAhH,GACA,OAAAyF,GAAA7H,KAAA8E,EAAA6C,GAAA3H,MAAAoC,EACAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,KAEAwM,KAAA,SAAAC,GACA,OAAArE,EAAA0C,GAAA3H,MAAAsJ,EAAAjI,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEA0M,UAAA,SAAAD,GACA,OAAApE,GAAAyC,GAAA3H,MAAAsJ,EAAAjI,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEA2M,QAAA,SAAApH,GACAyC,EAAA8C,GAAA3H,MAAAoC,EAAAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEA4M,QAAA,SAAAC,GACA,OAAAtE,GAAAuC,GAAA3H,MAAA0J,EAAArI,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEA8M,SAAA,SAAAD,GACA,OAAAvE,GAAAwC,GAAA3H,MAAA0J,EAAArI,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEAkD,KAAA,SAAA6J,GACA,OAAA3D,GAAA7E,MAAAuG,GAAA3H,MAAAqB,YAEAuE,YAAA,SAAA8D,GACA,OAAA/D,GAAAvE,MAAAuG,GAAA3H,MAAAqB,YAEAwI,IAAA,SAAAtB,GACA,OAAAtB,GAAAU,GAAA3H,MAAAuI,EAAAlH,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEAiJ,OAAA,SAAA1D,GACA,OAAAyD,GAAAzE,MAAAuG,GAAA3H,MAAAqB,YAEA2E,YAAA,SAAA5D,GACA,OAAA2D,GAAA3E,MAAAuG,GAAA3H,MAAAqB,YAEAyI,QAAA,WAMA,IALA,IAIAvP,EAHA+E,EAAAqI,GADA3H,MACAV,OACAyK,EAAAzM,KAAAoF,MAAApD,EAAA,GACAgD,EAAA,EAEAA,EAAAyH,GACAxP,EANAyF,KAMAsC,GANAtC,KAOAsC,KAPAtC,OAOAV,GAPAU,KAQAV,GAAA/E,EACO,OATPyF,MAWAgK,KAAA,SAAA5H,GACA,OAAA2C,EAAA4C,GAAA3H,MAAAoC,EAAAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,IAEAsJ,KAAA,SAAA8D,GACA,OAAA/D,GAAAzM,KAAAkO,GAAA3H,MAAAiK,IAEAC,SAAA,SAAAC,EAAAC,GACA,IAAAjM,EAAAwJ,GAAA3H,MACAV,EAAAnB,EAAAmB,OACA+K,EAAAjH,EAAA+G,EAAA7K,GACA,WAAAsE,EAAAzF,IAAAwI,KAAA,CACAxI,EAAAkJ,OACAlJ,EAAAmM,WAAAD,EAAAlM,EAAAoM,kBACA9I,QAAA5E,IAAAuN,EAAA9K,EAAA8D,EAAAgH,EAAA9K,IAAA+K,MAKAG,GAAA,SAAAvB,EAAAmB,GACA,OAAAvC,GAAA7H,KAAAoG,GAAA3M,KAAAkO,GAAA3H,MAAAiJ,EAAAmB,KAGAK,GAAA,SAAAC,GACA/C,GAAA3H,MACA,IAAA0H,EAAAF,GAAAnG,UAAA,MACA/B,EAAAU,KAAAV,OACAqL,EAAAtK,EAAAqK,GACAE,EAAAnJ,EAAAkJ,EAAArL,QACAgD,EAAA,EACA,GAAAsI,EAAAlD,EAAApI,EAAA,MAAA+E,EAvKA,iBAwKA,KAAA/B,EAAAsI,GAAA5K,KAAA0H,EAAApF,GAAAqI,EAAArI,MAGAuI,IACAnF,QAAA,WACA,OAAAD,GAAAhM,KAAAkO,GAAA3H,QAEAwF,KAAA,WACA,OAAAD,GAAA9L,KAAAkO,GAAA3H,QAEAsF,OAAA,WACA,OAAAD,GAAA5L,KAAAkO,GAAA3H,SAIA8K,GAAA,SAAAnO,EAAA9B,GACA,OAAAqC,EAAAP,IACAA,EAAAmK,KACA,iBAAAjM,GACAA,KAAA8B,GACAoC,QAAAlE,IAAAkE,OAAAlE,IAEAkQ,GAAA,SAAApO,EAAA9B,GACA,OAAAiQ,GAAAnO,EAAA9B,EAAAmD,EAAAnD,GAAA,IACAoI,EAAA,EAAAtG,EAAA9B,IACA+F,EAAAjE,EAAA9B,IAEAmQ,GAAA,SAAArO,EAAA9B,EAAAoQ,GACA,QAAAH,GAAAnO,EAAA9B,EAAAmD,EAAAnD,GAAA,KACAqC,EAAA+N,IACA1L,EAAA0L,EAAA,WACA1L,EAAA0L,EAAA,QACA1L,EAAA0L,EAAA,QAEAA,EAAAC,cACA3L,EAAA0L,EAAA,cAAAA,EAAAE,UACA5L,EAAA0L,EAAA,gBAAAA,EAAA/Q,WAIK+D,EAAAtB,EAAA9B,EAAAoQ,IAFLtO,EAAA9B,GAAAoQ,EAAA1Q,MACAoC,IAIAiK,KACAxC,EAAAlG,EAAA6M,GACA5G,EAAAjG,EAAA8M,IAGArP,IAAAW,EAAAX,EAAAO,GAAA0K,GAAA,UACA/F,yBAAAkK,GACA9Q,eAAA+Q,KAGAvM,EAAA,WAAyB4H,GAAA5M,aACzB4M,GAAAC,GAAA,WACA,OAAAL,GAAAxM,KAAAuG,QAIA,IAAAoL,GAAAlI,KAA4C6F,IAC5C7F,EAAAkI,GAAAP,IACArP,EAAA4P,GAAA5E,GAAAqE,GAAAvF,QACApC,EAAAkI,IACA7J,MAAAiJ,GACAjD,IAAAkD,GACAhK,YAAA,aACAa,SAAA+E,GACAE,eAAAuC,KAEAd,GAAAoD,GAAA,cACApD,GAAAoD,GAAA,kBACApD,GAAAoD,GAAA,kBACApD,GAAAoD,GAAA,cACAnN,EAAAmN,GAAA3E,IACAtM,IAAA,WAAsB,OAAA6F,KAAA8G,OAItBzN,EAAAD,QAAA,SAAAoI,EAAAiG,EAAA4D,EAAAC,GAEA,IAAApM,EAAAsC,IADA8J,OACA,sBACAC,EAAA,MAAA/J,EACAgK,EAAA,MAAAhK,EACAiK,EAAAnQ,EAAA4D,GACAwM,EAAAD,MACAE,EAAAF,GAAAjL,EAAAiL,GACAG,GAAAH,IAAA3I,EAAA+I,IACA1N,KACA2N,EAAAL,KAAA,UAUAM,EAAA,SAAA7K,EAAAoB,GACArE,EAAAiD,EAAAoB,GACAnI,IAAA,WACA,OAZA,SAAA+G,EAAAoB,GACA,IAAA0J,EAAA9K,EAAAgH,GACA,OAAA8D,EAAAC,EAAAV,GAAAjJ,EAAAmF,EAAAuE,EAAAjS,EAAAoN,IAUArN,CAAAkG,KAAAsC,IAEAiF,IAAA,SAAAhN,GACA,OAXA,SAAA2G,EAAAoB,EAAA/H,GACA,IAAAyR,EAAA9K,EAAAgH,GACAoD,IAAA/Q,KAAA+C,KAAA4O,MAAA3R,IAAA,IAAAA,EAAA,YAAAA,GACAyR,EAAAC,EAAAT,GAAAlJ,EAAAmF,EAAAuE,EAAAjS,EAAAQ,EAAA4M,IAQAgF,CAAAnM,KAAAsC,EAAA/H,IAEAL,YAAA,KAGA0R,GACAH,EAAAJ,EAAA,SAAAnK,EAAA8K,EAAAI,EAAAC,GACArJ,EAAA9B,EAAAuK,EAAAvM,EAAA,MACA,IAEAmI,EAAAiF,EAAAhN,EAAAiN,EAFAjK,EAAA,EACAoF,EAAA,EAEA,GAAAxK,EAAA8O,GAIS,MAAAA,aAAAvH,GAhUT,gBAgUS8H,EAAAlJ,EAAA2I,KA/TT,qBA+TSO,GAaA,OAAAzF,MAAAkF,EACTjE,GAAA0D,EAAAO,GAEA7D,GAAA1O,KAAAgS,EAAAO,GAfA3E,EAAA2E,EACAtE,EAAAF,GAAA4E,EAAA3E,GACA,IAAA+E,EAAAR,EAAAM,WACA,QAAAzP,IAAAwP,EAAA,CACA,GAAAG,EAAA/E,EAAA,MAAApD,EApSA,iBAsSA,IADAiI,EAAAE,EAAA9E,GACA,QAAArD,EAtSA,sBAySA,IADAiI,EAAA7K,EAAA4K,GAAA5E,GACAC,EAAA8E,EAAA,MAAAnI,EAzSA,iBA2SA/E,EAAAgN,EAAA7E,OAfAnI,EAAA6D,EAAA6I,GAEA3E,EAAA,IAAA5C,EADA6H,EAAAhN,EAAAmI,GA2BA,IAPAjM,EAAA0F,EAAA,MACAC,EAAAkG,EACAtN,EAAA2N,EACAnO,EAAA+S,EACA5O,EAAA4B,EACA2M,EAAA,IAAAtH,EAAA0C,KAEA/E,EAAAhD,GAAAyM,EAAA7K,EAAAoB,OAEAwJ,EAAAL,EAAA,UAAA7Q,EAAAwQ,IACA5P,EAAAsQ,EAAA,cAAAL,IACKhN,EAAA,WACLgN,EAAA,MACKhN,EAAA,WACL,IAAAgN,GAAA,MACK1H,EAAA,SAAA0I,GACL,IAAAhB,EACA,IAAAA,EAAA,MACA,IAAAA,EAAA,KACA,IAAAA,EAAAgB,KACK,KACLhB,EAAAJ,EAAA,SAAAnK,EAAA8K,EAAAI,EAAAC,GAEA,IAAAE,EAGA,OAJAvJ,EAAA9B,EAAAuK,EAAAvM,GAIAhC,EAAA8O,GACAA,aAAAvH,GA7WA,gBA6WA8H,EAAAlJ,EAAA2I,KA5WA,qBA4WAO,OACA1P,IAAAwP,EACA,IAAAX,EAAAM,EAAAxE,GAAA4E,EAAA3E,GAAA4E,QACAxP,IAAAuP,EACA,IAAAV,EAAAM,EAAAxE,GAAA4E,EAAA3E,IACA,IAAAiE,EAAAM,GAEAlF,MAAAkF,EAAAjE,GAAA0D,EAAAO,GACA7D,GAAA1O,KAAAgS,EAAAO,GATA,IAAAN,EAAAvI,EAAA6I,MAWAnH,EAAA8G,IAAA7O,SAAA5B,UAAAqI,EAAAmI,GAAAgB,OAAAnJ,EAAAoI,IAAApI,EAAAmI,GAAA,SAAA7Q,GACAA,KAAA4Q,GAAAjQ,EAAAiQ,EAAA5Q,EAAA6Q,EAAA7Q,MAEA4Q,EAAA,UAAAK,EACAjJ,IAAAiJ,EAAArL,YAAAgL,IAEA,IAAAkB,EAAAb,EAAAtF,IACAoG,IAAAD,IACA,UAAAA,EAAA9S,WAAAgD,GAAA8P,EAAA9S,MACAgT,EAAAhC,GAAAvF,OACA9J,EAAAiQ,EAAA/E,IAAA,GACAlL,EAAAsQ,EAAAhF,GAAA5H,GACA1D,EAAAsQ,EAAA9E,IAAA,GACAxL,EAAAsQ,EAAAnF,GAAA8E,IAEAH,EAAA,IAAAG,EAAA,GAAAhF,KAAAvH,EAAAuH,MAAAqF,IACA7N,EAAA6N,EAAArF,IACAtM,IAAA,WAA0B,OAAA+E,KAI1Bf,EAAAe,GAAAuM,EAEA9P,IAAAS,EAAAT,EAAAqB,EAAArB,EAAAO,GAAAuP,GAAAC,GAAAvN,GAEAxC,IAAAW,EAAA4C,GACAqL,kBAAA9C,IAGA9L,IAAAW,EAAAX,EAAAO,EAAAuC,EAAA,WAAuDiN,EAAAoB,GAAArT,KAAAgS,EAAA,KAA+BvM,GACtF6N,KAAA5E,GACA2E,GAAAlE,KApZA,sBAuZAkD,GAAAtQ,EAAAsQ,EAvZA,oBAuZArE,GAEA9L,IAAAa,EAAA0C,EAAA6J,IAEA/E,EAAA9E,GAEAvD,IAAAa,EAAAb,EAAAO,EAAAoL,GAAApI,GAAuDqI,IAAAkD,KAEvD9O,IAAAa,EAAAb,EAAAO,GAAA0Q,EAAA1N,EAAA2L,IAEAhI,GAAAiJ,EAAAxK,UAAA+E,KAAAyF,EAAAxK,SAAA+E,IAEA1K,IAAAa,EAAAb,EAAAO,EAAAuC,EAAA,WACA,IAAAgN,EAAA,GAAAlK,UACKrC,GAAUqC,MAAAiJ,KAEf7O,IAAAa,EAAAb,EAAAO,GAAAuC,EAAA,WACA,YAAA8H,kBAAA,IAAAkF,GAAA,MAAAlF,qBACK9H,EAAA,WACLqN,EAAAvF,eAAA9M,MAAA,SACKyF,GAAWqH,eAAAuC,KAEhBhF,EAAA5E,GAAA0N,EAAAD,EAAAE,EACAhK,GAAA+J,GAAApR,EAAAsQ,EAAAtF,GAAAqG,SAECxT,EAAAD,QAAA,8BC/dD,IAAA4T,EAAU9T,EAAQ,KAClByC,EAAczC,EAAQ,GACtB+T,EAAa/T,EAAQ,IAARA,CAAmB,YAChCyE,EAAAsP,EAAAtP,QAAAsP,EAAAtP,MAAA,IAAiDzE,EAAQ,OAEzDgU,EAAA,SAAAvQ,EAAAwQ,EAAAvS,GACA,IAAAwS,EAAAzP,EAAAxD,IAAAwC,GACA,IAAAyQ,EAAA,CACA,IAAAxS,EAAA,OACA+C,EAAA4J,IAAA5K,EAAAyQ,EAAA,IAAAJ,GAEA,IAAAK,EAAAD,EAAAjT,IAAAgT,GACA,IAAAE,EAAA,CACA,IAAAzS,EAAA,OACAwS,EAAA7F,IAAA4F,EAAAE,EAAA,IAAAL,GACG,OAAAK,GA0BHhU,EAAAD,SACAuE,QACAkM,IAAAqD,EACA3N,IA3BA,SAAA+N,EAAAnP,EAAA3B,GACA,IAAA+Q,EAAAL,EAAA/O,EAAA3B,GAAA,GACA,YAAAK,IAAA0Q,KAAAhO,IAAA+N,IA0BAnT,IAxBA,SAAAmT,EAAAnP,EAAA3B,GACA,IAAA+Q,EAAAL,EAAA/O,EAAA3B,GAAA,GACA,YAAAK,IAAA0Q,OAAA1Q,EAAA0Q,EAAApT,IAAAmT,IAuBA/F,IArBA,SAAA+F,EAAAE,EAAArP,EAAA3B,GACA0Q,EAAA/O,EAAA3B,GAAA,GAAA+K,IAAA+F,EAAAE,IAqBAhI,KAnBA,SAAA7I,EAAAwQ,GACA,IAAAI,EAAAL,EAAAvQ,EAAAwQ,GAAA,GACA3H,KAEA,OADA+H,KAAA/D,QAAA,SAAAiE,EAAA5S,GAA0D2K,EAAAhD,KAAA3H,KAC1D2K,GAgBA3K,IAdA,SAAAsC,GACA,YAAAN,IAAAM,GAAA,iBAAAA,IAAA4B,OAAA5B,IAcAnB,IAZA,SAAAmC,GACAxC,IAAAW,EAAA,UAAA6B,uBCtCA,IAAAuP,EAAWxU,EAAQ,GAARA,CAAgB,QAC3BgE,EAAehE,EAAQ,IACvBqG,EAAUrG,EAAQ,IAClByU,EAAczU,EAAQ,IAAcgF,EACpC0P,EAAA,EACAC,EAAA7T,OAAA6T,cAAA,WACA,UAEAC,GAAc5U,EAAQ,GAARA,CAAkB,WAChC,OAAA2U,EAAA7T,OAAA+T,yBAEAC,EAAA,SAAA7Q,GACAwQ,EAAAxQ,EAAAuQ,GAAqBnT,OACrBjB,EAAA,OAAAsU,EACAK,SAgCAC,EAAA7U,EAAAD,SACAoI,IAAAkM,EACAS,MAAA,EACAC,QAhCA,SAAAjR,EAAAvC,GAEA,IAAAsC,EAAAC,GAAA,uBAAAA,KAAA,iBAAAA,EAAA,SAAAA,EACA,IAAAoC,EAAApC,EAAAuQ,GAAA,CAEA,IAAAG,EAAA1Q,GAAA,UAEA,IAAAvC,EAAA,UAEAoT,EAAA7Q,GAEG,OAAAA,EAAAuQ,GAAApU,GAsBH+U,QApBA,SAAAlR,EAAAvC,GACA,IAAA2E,EAAApC,EAAAuQ,GAAA,CAEA,IAAAG,EAAA1Q,GAAA,SAEA,IAAAvC,EAAA,SAEAoT,EAAA7Q,GAEG,OAAAA,EAAAuQ,GAAAO,GAYHK,SATA,SAAAnR,GAEA,OADA2Q,GAAAI,EAAAC,MAAAN,EAAA1Q,KAAAoC,EAAApC,EAAAuQ,IAAAM,EAAA7Q,GACAA,qBC3CA,IAAAW,EAAe5E,EAAQ,IACvBqV,EAAUrV,EAAQ,KAClBsV,EAAkBtV,EAAQ,KAC1BoH,EAAepH,EAAQ,IAARA,CAAuB,YACtCuV,EAAA,aAIAC,EAAA,WAEA,IAIAC,EAJAC,EAAe1V,EAAQ,IAARA,CAAuB,UACtCI,EAAAkV,EAAAlP,OAcA,IAVAsP,EAAAC,MAAAC,QAAA,OACE5V,EAAQ,KAAS6V,YAAAH,GACnBA,EAAAjE,IAAA,eAGAgE,EAAAC,EAAAI,cAAAC,UACAC,OACAP,EAAAQ,MAAAC,uCACAT,EAAAU,QACAX,EAAAC,EAAAzS,EACA5C,YAAAoV,EAAA,UAAAF,EAAAlV,IACA,OAAAoV,KAGArV,EAAAD,QAAAY,OAAAY,QAAA,SAAAuD,EAAAmR,GACA,IAAA/M,EAQA,OAPA,OAAApE,GACAsQ,EAAA,UAAA3Q,EAAAK,GACAoE,EAAA,IAAAkM,EACAA,EAAA,eAEAlM,EAAAjC,GAAAnC,GACGoE,EAAAmM,SACH7R,IAAAyS,EAAA/M,EAAAgM,EAAAhM,EAAA+M,sBCvCAjW,EAAAD,QAAA,SAAAmW,EAAAhV,GACA,OACAL,aAAA,EAAAqV,GACArE,eAAA,EAAAqE,GACApE,WAAA,EAAAoE,GACAhV,yBCLAlB,EAAAD,SAAA,kBCAA,IAAAwU,EAAA,EACA4B,EAAAlS,KAAAmS,SACApW,EAAAD,QAAA,SAAAyB,GACA,gBAAA6R,YAAA7P,IAAAhC,EAAA,GAAAA,EAAA,QAAA+S,EAAA4B,GAAAlO,SAAA,uBCFA,IAAAoO,EAAYxW,EAAQ,KACpBsV,EAAkBtV,EAAQ,KAE1BG,EAAAD,QAAAY,OAAAwL,MAAA,SAAArH,GACA,OAAAuR,EAAAvR,EAAAqQ,qBCLA,IAAAlQ,EAAgBpF,EAAQ,IACxByW,EAAArS,KAAAqS,IACApR,EAAAjB,KAAAiB,IACAlF,EAAAD,QAAA,SAAAkJ,EAAAhD,GAEA,OADAgD,EAAAhE,EAAAgE,IACA,EAAAqN,EAAArN,EAAAhD,EAAA,GAAAf,EAAA+D,EAAAhD,qBCJA,IAAAoQ,EAAYxW,EAAQ,KACpB0W,EAAiB1W,EAAQ,KAAkBwT,OAAA,sBAE3CtT,EAAA8E,EAAAlE,OAAA6V,qBAAA,SAAA1R,GACA,OAAAuR,EAAAvR,EAAAyR,qBCJA,IAAAE,EAAkB5W,EAAQ,GAARA,CAAgB,eAClCqL,EAAAC,MAAAtJ,eACA2B,GAAA0H,EAAAuL,IAA0C5W,EAAQ,GAARA,CAAiBqL,EAAAuL,MAC3DzW,EAAAD,QAAA,SAAAyB,GACA0J,EAAAuL,GAAAjV,IAAA,iCCJA,IAAAS,EAAapC,EAAQ,IACrB+E,EAAS/E,EAAQ,IACjB6W,EAAkB7W,EAAQ,IAC1B8W,EAAc9W,EAAQ,GAARA,CAAgB,WAE9BG,EAAAD,QAAA,SAAAoI,GACA,IAAAoG,EAAAtM,EAAAkG,GACAuO,GAAAnI,MAAAoI,IAAA/R,EAAAC,EAAA0J,EAAAoI,GACA9E,cAAA,EACA/Q,IAAA,WAAsB,OAAA6F,wBCVtB3G,EAAAD,QAAA,SAAA+D,EAAA8S,EAAApW,EAAAqW,GACA,KAAA/S,aAAA8S,SAAApT,IAAAqT,QAAA/S,EACA,MAAAC,UAAAvD,EAAA,2BACG,OAAAsD,oBCHH,IAAAzB,EAAUxC,EAAQ,IAClBO,EAAWP,EAAQ,KACnBoK,EAAkBpK,EAAQ,KAC1B4E,EAAe5E,EAAQ,IACvBuI,EAAevI,EAAQ,IACvBsK,EAAgBtK,EAAQ,KACxBiX,KACAC,MACAhX,EAAAC,EAAAD,QAAA,SAAAiX,EAAA3K,EAAAzE,EAAAC,EAAAsF,GACA,IAGAlH,EAAA8I,EAAAC,EAAA9F,EAHAkG,EAAAjC,EAAA,WAAuC,OAAA6J,GAAmB7M,EAAA6M,GAC1DnS,EAAAxC,EAAAuF,EAAAC,EAAAwE,EAAA,KACApD,EAAA,EAEA,sBAAAmG,EAAA,MAAArL,UAAAiT,EAAA,qBAEA,GAAA/M,EAAAmF,IAAA,IAAAnJ,EAAAmC,EAAA4O,EAAA/Q,QAAmEA,EAAAgD,EAAgBA,IAEnF,IADAC,EAAAmD,EAAAxH,EAAAJ,EAAAsK,EAAAiI,EAAA/N,IAAA,GAAA8F,EAAA,IAAAlK,EAAAmS,EAAA/N,OACA6N,GAAA5N,IAAA6N,EAAA,OAAA7N,OACG,IAAA8F,EAAAI,EAAAhP,KAAA4W,KAA4CjI,EAAAC,EAAAK,QAAAC,MAE/C,IADApG,EAAA9I,EAAA4O,EAAAnK,EAAAkK,EAAA7N,MAAAmL,MACAyK,GAAA5N,IAAA6N,EAAA,OAAA7N,IAGA4N,QACA/W,EAAAgX,0BCxBA,IAAA3U,EAAevC,EAAQ,IACvBG,EAAAD,QAAA,SAAAuD,EAAAgO,EAAA9K,GACA,QAAAhF,KAAA8P,EAAAlP,EAAAkB,EAAA9B,EAAA8P,EAAA9P,GAAAgF,GACA,OAAAlD,kBCHA,IAAA2T,EAGAA,EAAA,WACA,OAAAtQ,KADA,GAIA,IAEAsQ,KAAAxT,SAAA,cAAAA,KAAA,EAAAyT,MAAA,QACC,MAAA7S,GAED,iBAAAL,SAAAiT,EAAAjT,QAOAhE,EAAAD,QAAAkX,oBCnBA,IAAAE,EAAUtX,EAAQ,IAAcgF,EAChCqB,EAAUrG,EAAQ,IAClBuN,EAAUvN,EAAQ,GAARA,CAAgB,eAE1BG,EAAAD,QAAA,SAAA+D,EAAA0B,EAAA4R,GACAtT,IAAAoC,EAAApC,EAAAsT,EAAAtT,IAAAjC,UAAAuL,IAAA+J,EAAArT,EAAAsJ,GAAoEyE,cAAA,EAAA3Q,MAAAsE,oBCLpExF,EAAAD,4BCAA,IAAA8D,EAAehE,EAAQ,IACvBG,EAAAD,QAAA,SAAA+D,EAAAwE,GACA,IAAAzE,EAAAC,MAAAuT,KAAA/O,EAAA,MAAAvE,UAAA,0BAAAuE,EAAA,cACA,OAAAxE,yBCFA,IAAAwT,EAAUzX,EAAQ,IAClBuN,EAAUvN,EAAQ,GAARA,CAAgB,eAE1B0X,EAA+C,aAA/CD,EAAA,WAA2B,OAAAtP,UAA3B,IASAhI,EAAAD,QAAA,SAAA+D,GACA,IAAAgB,EAAA0S,EAAAnU,EACA,YAAAG,IAAAM,EAAA,mBAAAA,EAAA,OAEA,iBAAA0T,EAVA,SAAA1T,EAAAtC,GACA,IACA,OAAAsC,EAAAtC,GACG,MAAA6C,KAOHoT,CAAA3S,EAAAnE,OAAAmD,GAAAsJ,IAAAoK,EAEAD,EAAAD,EAAAxS,GAEA,WAAAzB,EAAAiU,EAAAxS,KAAA,mBAAAA,EAAA4S,OAAA,YAAArU,yBCpBA,IAAAiU,EAAUzX,EAAQ,IAElBG,EAAAD,QAAAY,OAAA,KAAAgX,qBAAA,GAAAhX,OAAA,SAAAmD,GACA,gBAAAwT,EAAAxT,KAAAkC,MAAA,IAAArF,OAAAmD,qBCJA,IAAAxB,EAAczC,EAAQ,GACtBsF,EAActF,EAAQ,IACtBuF,EAAYvF,EAAQ,IACpB+X,EAAa/X,EAAQ,KACrBgY,EAAA,IAAAD,EAAA,IAEAE,EAAAC,OAAA,IAAAF,IAAA,KACAG,EAAAD,OAAAF,IAAA,MAEAI,EAAA,SAAA9P,EAAA/D,EAAA8T,GACA,IAAAvV,KACAwV,EAAA/S,EAAA,WACA,QAAAwS,EAAAzP,MAPA,WAOAA,OAEAP,EAAAjF,EAAAwF,GAAAgQ,EAAA/T,EAAAgU,GAAAR,EAAAzP,GACA+P,IAAAvV,EAAAuV,GAAAtQ,GACAtF,IAAAa,EAAAb,EAAAO,EAAAsV,EAAA,SAAAxV,IAMAyV,EAAAH,EAAAG,KAAA,SAAA7S,EAAA+C,GAIA,OAHA/C,EAAAG,OAAAP,EAAAI,IACA,EAAA+C,IAAA/C,IAAAK,QAAAkS,EAAA,KACA,EAAAxP,IAAA/C,IAAAK,QAAAoS,EAAA,KACAzS,GAGAvF,EAAAD,QAAAkY,uBC7BAlY,EAAA8E,KAAc8S,6CCAd,IAAAzV,EAAWrC,EAAQ,IACnBoC,EAAapC,EAAQ,IAErByE,EAAArC,EADA,wBACAA,EADA,2BAGAjC,EAAAD,QAAA,SAAAyB,EAAAN,GACA,OAAAoD,EAAA9C,KAAA8C,EAAA9C,QAAAgC,IAAAtC,UACC,eAAAiI,MACDtC,QAAA3E,EAAA2E,QACAzF,KAAQvB,EAAQ,IAAY,gBAC5BwY,UAAA,wDCVAtY,EAAA8E,EAAAlE,OAAA2X,uCCAA,IAAAtO,EAAcnK,EAAQ,IACtBsN,EAAetN,EAAQ,GAARA,CAAgB,YAC/B4K,EAAgB5K,EAAQ,IACxBG,EAAAD,QAAiBF,EAAQ,IAAS0Y,kBAAA,SAAAzU,GAClC,QAAAN,GAAAM,EAAA,OAAAA,EAAAqJ,IACArJ,EAAA,eACA2G,EAAAT,EAAAlG,sBCNA,IAAAqJ,EAAetN,EAAQ,GAARA,CAAgB,YAC/B2Y,GAAA,EAEA,IACA,IAAAC,GAAA,GAAAtL,KACAsL,EAAA,kBAAiCD,GAAA,GAEjCrN,MAAAuI,KAAA+E,EAAA,WAAiC,UAChC,MAAApU,IAEDrE,EAAAD,QAAA,SAAAqE,EAAAsU,GACA,IAAAA,IAAAF,EAAA,SACA,IAAAhS,GAAA,EACA,IACA,IAAAmS,GAAA,GACAvF,EAAAuF,EAAAxL,KACAiG,EAAA/D,KAAA,WAA6B,OAASC,KAAA9I,GAAA,IACtCmS,EAAAxL,GAAA,WAAiC,OAAAiG,GACjChP,EAAAuU,GACG,MAAAtU,IACH,OAAAmC,iCCnBA,IAAArE,EAAWtC,EAAQ,IACnBuC,EAAevC,EAAQ,IACvBuF,EAAYvF,EAAQ,IACpBsF,EAActF,EAAQ,IACtBuK,EAAUvK,EAAQ,IAElBG,EAAAD,QAAA,SAAAoI,EAAAlC,EAAA7B,GACA,IAAAwU,EAAAxO,EAAAjC,GACA0Q,EAAAzU,EAAAe,EAAAyT,EAAA,GAAAzQ,IACA2Q,EAAAD,EAAA,GACAE,EAAAF,EAAA,GACAzT,EAAA,WACA,IAAAN,KAEA,OADAA,EAAA8T,GAAA,WAA6B,UAC7B,MAAAzQ,GAAArD,OAEA1C,EAAAsD,OAAA7D,UAAAsG,EAAA2Q,GACA3W,EAAA4V,OAAAlW,UAAA+W,EAAA,GAAA3S,EAGA,SAAAV,EAAAmC,GAAgC,OAAAqR,EAAA3Y,KAAAmF,EAAAoB,KAAAe,IAGhC,SAAAnC,GAA2B,OAAAwT,EAAA3Y,KAAAmF,EAAAoB,wCCvB3B,IAAA1E,EAAapC,EAAQ,IACrByC,EAAczC,EAAQ,GACtBuC,EAAevC,EAAQ,IACvBgK,EAAkBhK,EAAQ,IAC1BgV,EAAWhV,EAAQ,IACnBmZ,EAAYnZ,EAAQ,IACpB8J,EAAiB9J,EAAQ,IACzBgE,EAAehE,EAAQ,IACvBuF,EAAYvF,EAAQ,IACpB6K,EAAkB7K,EAAQ,KAC1BoZ,EAAqBpZ,EAAQ,IAC7BqZ,EAAwBrZ,EAAQ,KAEhCG,EAAAD,QAAA,SAAA8F,EAAAmM,EAAAmH,EAAAC,EAAA5Q,EAAA6Q,GACA,IAAAhH,EAAApQ,EAAA4D,GACA0I,EAAA8D,EACAiH,EAAA9Q,EAAA,YACAkH,EAAAnB,KAAA1M,UACAiD,KACAyU,EAAA,SAAApR,GACA,IAAAP,EAAA8H,EAAAvH,GACA/F,EAAAsN,EAAAvH,EACA,UAAAA,EAAA,SAAAnD,GACA,QAAAqU,IAAAxV,EAAAmB,KAAA4C,EAAAxH,KAAAuG,KAAA,IAAA3B,EAAA,EAAAA,IACO,OAAAmD,EAAA,SAAAnD,GACP,QAAAqU,IAAAxV,EAAAmB,KAAA4C,EAAAxH,KAAAuG,KAAA,IAAA3B,EAAA,EAAAA,IACO,OAAAmD,EAAA,SAAAnD,GACP,OAAAqU,IAAAxV,EAAAmB,QAAAxB,EAAAoE,EAAAxH,KAAAuG,KAAA,IAAA3B,EAAA,EAAAA,IACO,OAAAmD,EAAA,SAAAnD,GAAmE,OAAhC4C,EAAAxH,KAAAuG,KAAA,IAAA3B,EAAA,EAAAA,GAAgC2B,MAC1E,SAAA3B,EAAA8C,GAAiE,OAAnCF,EAAAxH,KAAAuG,KAAA,IAAA3B,EAAA,EAAAA,EAAA8C,GAAmCnB,QAGjE,sBAAA4H,IAAA8K,GAAA3J,EAAAS,UAAA/K,EAAA,YACA,IAAAmJ,GAAAlC,UAAAgD,UAMG,CACH,IAAAmK,EAAA,IAAAjL,EAEAkL,EAAAD,EAAAF,GAAAD,MAAqD,MAAAG,EAErDE,EAAAtU,EAAA,WAAkDoU,EAAAtT,IAAA,KAElDyT,EAAAjP,EAAA,SAAA0I,GAAwD,IAAA7E,EAAA6E,KAExDwG,GAAAP,GAAAjU,EAAA,WAIA,IAFA,IAAAyU,EAAA,IAAAtL,EACAtF,EAAA,EACAA,KAAA4Q,EAAAP,GAAArQ,KACA,OAAA4Q,EAAA3T,KAAA,KAEAyT,KACApL,EAAAyD,EAAA,SAAA1O,EAAA0T,GACArN,EAAArG,EAAAiL,EAAA1I,GACA,IAAAgC,EAAAqR,EAAA,IAAA7G,EAAA/O,EAAAiL,GAEA,YADA/K,GAAAwT,GAAAgC,EAAAhC,EAAAxO,EAAAX,EAAAyR,GAAAzR,GACAA,KAEAhG,UAAA6N,EACAA,EAAAtI,YAAAmH,IAEAmL,GAAAE,KACAL,EAAA,UACAA,EAAA,OACA/Q,GAAA+Q,EAAA,SAEAK,GAAAH,IAAAF,EAAAD,GAEAD,GAAA3J,EAAAoK,cAAApK,EAAAoK,WApCAvL,EAAA6K,EAAAW,eAAA/H,EAAAnM,EAAA2C,EAAA8Q,GACAzP,EAAA0E,EAAA1M,UAAAsX,GACAtE,EAAAC,MAAA,EA4CA,OAPAmE,EAAA1K,EAAA1I,GAEAf,EAAAe,GAAA0I,EACAjM,IAAAS,EAAAT,EAAAqB,EAAArB,EAAAO,GAAA0L,GAAA8D,GAAAvN,GAEAuU,GAAAD,EAAAY,UAAAzL,EAAA1I,EAAA2C,GAEA+F,oBCpEA,IAfA,IASA0L,EATAhY,EAAapC,EAAQ,IACrBsC,EAAWtC,EAAQ,IACnB0E,EAAU1E,EAAQ,IAClB6N,EAAAnJ,EAAA,eACAoJ,EAAApJ,EAAA,QACAiO,KAAAvQ,EAAAoJ,cAAApJ,EAAAsJ,UACAiC,EAAAgF,EACAvS,EAAA,EAIAia,EAAA,iHAEAlU,MAAA,KAEA/F,EAPA,IAQAga,EAAAhY,EAAAiY,EAAAja,QACAkC,EAAA8X,EAAApY,UAAA6L,GAAA,GACAvL,EAAA8X,EAAApY,UAAA8L,GAAA,IACGH,GAAA,EAGHxN,EAAAD,SACAyS,MACAhF,SACAE,QACAC,gCCxBA,IAAArG,EAAgBzH,EAAQ,IACxBuI,EAAevI,EAAQ,IACvBkK,EAAsBlK,EAAQ,IAC9BG,EAAAD,QAAA,SAAAoa,GACA,gBAAArR,EAAAsR,EAAAC,GACA,IAGAnZ,EAHA4D,EAAAwC,EAAAwB,GACA7C,EAAAmC,EAAAtD,EAAAmB,QACAgD,EAAAc,EAAAsQ,EAAApU,GAIA,GAAAkU,GAAAC,MAAA,KAAAnU,EAAAgD,GAGA,IAFA/H,EAAA4D,EAAAmE,OAEA/H,EAAA,cAEK,KAAY+E,EAAAgD,EAAeA,IAAA,IAAAkR,GAAAlR,KAAAnE,IAChCA,EAAAmE,KAAAmR,EAAA,OAAAD,GAAAlR,GAAA,EACK,OAAAkR,IAAA,qBCnBL,IAAA7C,EAAUzX,EAAQ,IAClBG,EAAAD,QAAAoL,MAAAmP,SAAA,SAAA5S,GACA,eAAA4P,EAAA5P,kCCFA,IAAA8B,EAAc3J,EAAQ,IACtByC,EAAczC,EAAQ,GACtBuC,EAAevC,EAAQ,IACvBsC,EAAWtC,EAAQ,IACnB4K,EAAgB5K,EAAQ,IACxB0a,EAAkB1a,EAAQ,KAC1BoZ,EAAqBpZ,EAAQ,IAC7BsH,EAAqBtH,EAAQ,IAC7BsN,EAAetN,EAAQ,GAARA,CAAgB,YAC/B2a,OAAArO,MAAA,WAAAA,QAKAsO,EAAA,WAA8B,OAAA9T,MAE9B3G,EAAAD,QAAA,SAAAsS,EAAAxM,EAAA+Q,EAAAvH,EAAAqL,EAAAC,EAAApI,GACAgI,EAAA3D,EAAA/Q,EAAAwJ,GACA,IAeA8J,EAAA3X,EAAAoZ,EAfAC,EAAA,SAAAC,GACA,IAAAN,GAAAM,KAAApL,EAAA,OAAAA,EAAAoL,GACA,OAAAA,GACA,IAVA,OAWA,IAVA,SAUA,kBAA6C,WAAAlE,EAAAjQ,KAAAmU,IACxC,kBAA4B,WAAAlE,EAAAjQ,KAAAmU,KAEjC1N,EAAAvH,EAAA,YACAkV,EAdA,UAcAL,EACAM,GAAA,EACAtL,EAAA2C,EAAAxQ,UACAoZ,EAAAvL,EAAAvC,IAAAuC,EAnBA,eAmBAgL,GAAAhL,EAAAgL,GACAQ,EAAAD,GAAAJ,EAAAH,GACAS,EAAAT,EAAAK,EAAAF,EAAA,WAAAK,OAAA1X,EACA4X,EAAA,SAAAvV,GAAA6J,EAAArD,SAAA4O,EAwBA,GArBAG,IACAR,EAAAzT,EAAAiU,EAAAhb,KAAA,IAAAiS,OACA1R,OAAAkB,WAAA+Y,EAAAvL,OAEA4J,EAAA2B,EAAAxN,GAAA,GAEA5D,GAAA,mBAAAoR,EAAAzN,IAAAhL,EAAAyY,EAAAzN,EAAAsN,IAIAM,GAAAE,GAjCA,WAiCAA,EAAAza,OACAwa,GAAA,EACAE,EAAA,WAAkC,OAAAD,EAAA7a,KAAAuG,QAGlC6C,IAAA+I,IAAAiI,IAAAQ,GAAAtL,EAAAvC,IACAhL,EAAAuN,EAAAvC,EAAA+N,GAGAzQ,EAAA5E,GAAAqV,EACAzQ,EAAA2C,GAAAqN,EACAC,EAMA,GALAvB,GACAlN,OAAA8O,EAAAG,EAAAL,EA9CA,UA+CA1O,KAAAwO,EAAAO,EAAAL,EAhDA,QAiDAxO,QAAA8O,GAEA5I,EAAA,IAAA/Q,KAAA2X,EACA3X,KAAAkO,GAAAtN,EAAAsN,EAAAlO,EAAA2X,EAAA3X,SACKc,IAAAa,EAAAb,EAAAO,GAAA2X,GAAAQ,GAAAnV,EAAAsT,GAEL,OAAAA,oBClEA,IAAAtV,EAAehE,EAAQ,IACvByX,EAAUzX,EAAQ,IAClBwb,EAAYxb,EAAQ,GAARA,CAAgB,SAC5BG,EAAAD,QAAA,SAAA+D,GACA,IAAAwX,EACA,OAAAzX,EAAAC,UAAAN,KAAA8X,EAAAxX,EAAAuX,MAAAC,EAAA,UAAAhE,EAAAxT,mCCJA,IAAAW,EAAe5E,EAAQ,IACvBG,EAAAD,QAAA,WACA,IAAA8H,EAAApD,EAAAkC,MACAuC,EAAA,GAMA,OALArB,EAAA5F,SAAAiH,GAAA,KACArB,EAAA0T,aAAArS,GAAA,KACArB,EAAA2T,YAAAtS,GAAA,KACArB,EAAA4T,UAAAvS,GAAA,KACArB,EAAA6T,SAAAxS,GAAA,KACAA,oBCVA,IAAAzE,EAAe5E,EAAQ,IACvB8H,EAAgB9H,EAAQ,IACxB8W,EAAc9W,EAAQ,GAARA,CAAgB,WAC9BG,EAAAD,QAAA,SAAA+E,EAAA6W,GACA,IACA1Y,EADAsL,EAAA9J,EAAAK,GAAAsC,YAEA,YAAA5D,IAAA+K,QAAA/K,IAAAP,EAAAwB,EAAA8J,GAAAoI,IAAAgF,EAAAhU,EAAA1E,0BCPA,IAAAY,EAAehE,EAAQ,IACvB+V,EAAe/V,EAAQ,IAAW+V,SAElCgG,EAAA/X,EAAA+R,IAAA/R,EAAA+R,EAAAiG,eACA7b,EAAAD,QAAA,SAAA+D,GACA,OAAA8X,EAAAhG,EAAAiG,cAAA/X,wBCLA,IAAA8P,EAAa/T,EAAQ,IAARA,CAAmB,QAChC0E,EAAU1E,EAAQ,IAClBG,EAAAD,QAAA,SAAAyB,GACA,OAAAoS,EAAApS,KAAAoS,EAAApS,GAAA+C,EAAA/C,oBCFAxB,EAAAD,QAAA,gGAEAiG,MAAA,sBCHA,IAAA4P,EAAe/V,EAAQ,IAAW+V,SAClC5V,EAAAD,QAAA6V,KAAAkG,iCCCA,IAAAjY,EAAehE,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBkc,EAAA,SAAAjX,EAAA4K,GAEA,GADAjL,EAAAK,IACAjB,EAAA6L,IAAA,OAAAA,EAAA,MAAA3L,UAAA2L,EAAA,8BAEA1P,EAAAD,SACAmO,IAAAvN,OAAAqb,iBAAA,gBACA,SAAAlW,EAAAmW,EAAA/N,GACA,KACAA,EAAcrO,EAAQ,GAARA,CAAgB4D,SAAArD,KAAiBP,EAAQ,IAAgBgF,EAAAlE,OAAAkB,UAAA,aAAAqM,IAAA,IACvEpI,MACAmW,IAAAnW,aAAAqF,OACO,MAAA9G,GAAY4X,GAAA,EACnB,gBAAAnX,EAAA4K,GAIA,OAHAqM,EAAAjX,EAAA4K,GACAuM,EAAAnX,EAAAoX,UAAAxM,EACAxB,EAAApJ,EAAA4K,GACA5K,GAVA,KAYQ,QAAAtB,GACRuY,wBCvBA/b,EAAAD,QAAA,kECAA,IAAA8D,EAAehE,EAAQ,IACvBmc,EAAqBnc,EAAQ,KAAcqO,IAC3ClO,EAAAD,QAAA,SAAA8H,EAAAvE,EAAAiL,GACA,IACApL,EADAF,EAAAK,EAAA8D,YAIG,OAFHnE,IAAAsL,GAAA,mBAAAtL,IAAAE,EAAAF,EAAApB,aAAA0M,EAAA1M,WAAAgC,EAAAV,IAAA6Y,GACAA,EAAAnU,EAAA1E,GACG0E,kBCNH7H,EAAAD,QAAAkE,KAAAkY,MAAA,SAAAC,GAEA,WAAAA,gBAAA,uBCFA,IAAAC,EAAApY,KAAAqY,MACAtc,EAAAD,SAAAsc,GAEAA,EAAA,wBAAAA,EAAA,yBAEA,OAAAA,GAAA,OACA,SAAAD,GACA,WAAAA,WAAA,MAAAA,EAAA,KAAAA,MAAA,EAAAnY,KAAAtB,IAAAyZ,GAAA,GACCC,gCCRD,IAAA9a,EAAa1B,EAAQ,IACrB0c,EAAiB1c,EAAQ,IACzBoZ,EAAqBpZ,EAAQ,IAC7B+a,KAGA/a,EAAQ,GAARA,CAAiB+a,EAAqB/a,EAAQ,GAARA,CAAgB,uBAA4B,OAAA8G,OAElF3G,EAAAD,QAAA,SAAA6W,EAAA/Q,EAAAwJ,GACAuH,EAAA/U,UAAAN,EAAAqZ,GAAqDvL,KAAAkN,EAAA,EAAAlN,KACrD4J,EAAArC,EAAA/Q,EAAA,+BCVA,IAAAyV,EAAezb,EAAQ,KACvBsF,EAActF,EAAQ,IAEtBG,EAAAD,QAAA,SAAA8H,EAAA2U,EAAA3W,GACA,GAAAyV,EAAAkB,GAAA,MAAAzY,UAAA,UAAA8B,EAAA,0BACA,OAAAH,OAAAP,EAAA0C,sBCNA,IAAAwT,EAAYxb,EAAQ,GAARA,CAAgB,SAC5BG,EAAAD,QAAA,SAAAoI,GACA,IAAAsU,EAAA,IACA,IACA,MAAAtU,GAAAsU,GACG,MAAApY,GACH,IAEA,OADAoY,EAAApB,IAAA,GACA,MAAAlT,GAAAsU,GACK,MAAA5X,KACF,2BCTH,IAAA4F,EAAgB5K,EAAQ,IACxBsN,EAAetN,EAAQ,GAARA,CAAgB,YAC/BqL,EAAAC,MAAAtJ,UAEA7B,EAAAD,QAAA,SAAA+D,GACA,YAAAN,IAAAM,IAAA2G,EAAAU,QAAArH,GAAAoH,EAAAiC,KAAArJ,kCCJA,IAAAkD,EAAenH,EAAQ,IACvBkK,EAAsBlK,EAAQ,IAC9BuI,EAAevI,EAAQ,IACvBG,EAAAD,QAAA,SAAAmB,GAOA,IANA,IAAA4D,EAAAkC,EAAAL,MACAV,EAAAmC,EAAAtD,EAAAmB,QACAgJ,EAAAjH,UAAA/B,OACAgD,EAAAc,EAAAkF,EAAA,EAAAjH,UAAA,QAAAxE,EAAAyC,GACA8K,EAAA9B,EAAA,EAAAjH,UAAA,QAAAxE,EACAkZ,OAAAlZ,IAAAuN,EAAA9K,EAAA8D,EAAAgH,EAAA9K,GACAyW,EAAAzT,GAAAnE,EAAAmE,KAAA/H,EACA,OAAA4D,iCCZA,IAAA7C,EAAapC,EAAQ,IACrB6W,EAAkB7W,EAAQ,IAC1B2J,EAAc3J,EAAQ,IACtB4J,EAAa5J,EAAQ,KACrBsC,EAAWtC,EAAQ,IACnBgK,EAAkBhK,EAAQ,IAC1BuF,EAAYvF,EAAQ,IACpB8J,EAAiB9J,EAAQ,IACzBoF,EAAgBpF,EAAQ,IACxBuI,EAAevI,EAAQ,IACvBiK,EAAcjK,EAAQ,KACtBqK,EAAWrK,EAAQ,IAAgBgF,EACnCD,EAAS/E,EAAQ,IAAcgF,EAC/B+F,EAAgB/K,EAAQ,KACxBoZ,EAAqBpZ,EAAQ,IAG7B8c,EAAA,YAEAC,EAAA,eACAxR,EAAAnJ,EAAA,YACAqJ,EAAArJ,EAAA,SACAgC,EAAAhC,EAAAgC,KACA+G,EAAA/I,EAAA+I,WAEA6R,EAAA5a,EAAA4a,SACAC,EAAA1R,EACA2R,EAAA9Y,EAAA8Y,IACAC,EAAA/Y,EAAA+Y,IACA3T,EAAApF,EAAAoF,MACA4T,EAAAhZ,EAAAgZ,IACAC,EAAAjZ,EAAAiZ,IAIAC,EAAAzG,EAAA,KAHA,SAIA0G,EAAA1G,EAAA,KAHA,aAIA2G,EAAA3G,EAAA,KAHA,aAMA,SAAA4G,EAAApc,EAAAqc,EAAAC,GACA,IAOAnZ,EAAAhE,EAAAC,EAPA0N,EAAA,IAAA7C,MAAAqS,GACAC,EAAA,EAAAD,EAAAD,EAAA,EACAG,GAAA,GAAAD,GAAA,EACAE,EAAAD,GAAA,EACAE,EAAA,KAAAL,EAAAP,EAAA,OAAAA,EAAA,SACA/c,EAAA,EACA+B,EAAAd,EAAA,OAAAA,GAAA,EAAAA,EAAA,MAkCA,KAhCAA,EAAA6b,EAAA7b,KAEAA,OAAA2b,GAEAxc,EAAAa,KAAA,IACAmD,EAAAqZ,IAEArZ,EAAAgF,EAAA4T,EAAA/b,GAAAgc,GACAhc,GAAAZ,EAAA0c,EAAA,GAAA3Y,IAAA,IACAA,IACA/D,GAAA,IAGAY,GADAmD,EAAAsZ,GAAA,EACAC,EAAAtd,EAEAsd,EAAAZ,EAAA,IAAAW,IAEArd,GAAA,IACA+D,IACA/D,GAAA,GAEA+D,EAAAsZ,GAAAD,GACArd,EAAA,EACAgE,EAAAqZ,GACKrZ,EAAAsZ,GAAA,GACLtd,GAAAa,EAAAZ,EAAA,GAAA0c,EAAA,EAAAO,GACAlZ,GAAAsZ,IAEAtd,EAAAa,EAAA8b,EAAA,EAAAW,EAAA,GAAAX,EAAA,EAAAO,GACAlZ,EAAA,IAGQkZ,GAAA,EAAWvP,EAAA/N,KAAA,IAAAI,KAAA,IAAAkd,GAAA,GAGnB,IAFAlZ,KAAAkZ,EAAAld,EACAod,GAAAF,EACQE,EAAA,EAAUzP,EAAA/N,KAAA,IAAAoE,KAAA,IAAAoZ,GAAA,GAElB,OADAzP,IAAA/N,IAAA,IAAA+B,EACAgM,EAEA,SAAA6P,EAAA7P,EAAAuP,EAAAC,GACA,IAOAnd,EAPAod,EAAA,EAAAD,EAAAD,EAAA,EACAG,GAAA,GAAAD,GAAA,EACAE,EAAAD,GAAA,EACAI,EAAAL,EAAA,EACAxd,EAAAud,EAAA,EACAxb,EAAAgM,EAAA/N,KACAoE,EAAA,IAAArC,EAGA,IADAA,IAAA,EACQ8b,EAAA,EAAWzZ,EAAA,IAAAA,EAAA2J,EAAA/N,OAAA6d,GAAA,GAInB,IAHAzd,EAAAgE,GAAA,IAAAyZ,GAAA,EACAzZ,KAAAyZ,EACAA,GAAAP,EACQO,EAAA,EAAWzd,EAAA,IAAAA,EAAA2N,EAAA/N,OAAA6d,GAAA,GACnB,OAAAzZ,EACAA,EAAA,EAAAsZ,MACG,IAAAtZ,IAAAqZ,EACH,OAAArd,EAAA0d,IAAA/b,GAAA6a,IAEAxc,GAAA2c,EAAA,EAAAO,GACAlZ,GAAAsZ,EACG,OAAA3b,GAAA,KAAA3B,EAAA2c,EAAA,EAAA3Y,EAAAkZ,GAGH,SAAAS,EAAAC,GACA,OAAAA,EAAA,OAAAA,EAAA,OAAAA,EAAA,MAAAA,EAAA,GAEA,SAAAC,EAAApa,GACA,WAAAA,GAEA,SAAAqa,EAAAra,GACA,WAAAA,KAAA,OAEA,SAAAsa,EAAAta,GACA,WAAAA,KAAA,MAAAA,GAAA,OAAAA,GAAA,QAEA,SAAAua,EAAAva,GACA,OAAAwZ,EAAAxZ,EAAA,MAEA,SAAAwa,EAAAxa,GACA,OAAAwZ,EAAAxZ,EAAA,MAGA,SAAA6K,EAAAJ,EAAA/M,EAAAoN,GACAhK,EAAA2J,EAAAoO,GAAAnb,GAAyBV,IAAA,WAAmB,OAAA6F,KAAAiI,MAG5C,SAAA9N,EAAAyd,EAAAN,EAAAhV,EAAAuV,GACA,IACAC,EAAA3U,GADAb,GAEA,GAAAwV,EAAAR,EAAAM,EAAAnB,GAAA,MAAApS,EAAA4R,GACA,IAAAtY,EAAAia,EAAApB,GAAAuB,GACA9O,EAAA6O,EAAAF,EAAAlB,GACAsB,EAAAra,EAAA4D,MAAA0H,IAAAqO,GACA,OAAAO,EAAAG,IAAAlO,UAEA,SAAAvC,EAAAqQ,EAAAN,EAAAhV,EAAA2V,EAAA1d,EAAAsd,GACA,IACAC,EAAA3U,GADAb,GAEA,GAAAwV,EAAAR,EAAAM,EAAAnB,GAAA,MAAApS,EAAA4R,GAIA,IAHA,IAAAtY,EAAAia,EAAApB,GAAAuB,GACA9O,EAAA6O,EAAAF,EAAAlB,GACAsB,EAAAC,GAAA1d,GACAjB,EAAA,EAAiBA,EAAAge,EAAWhe,IAAAqE,EAAAsL,EAAA3P,GAAA0e,EAAAH,EAAAve,EAAAge,EAAAhe,EAAA,GAG5B,GAAAwJ,EAAA+I,IAgFC,CACD,IAAApN,EAAA,WACAgG,EAAA,OACGhG,EAAA,WACH,IAAAgG,GAAA,MACGhG,EAAA,WAIH,OAHA,IAAAgG,EACA,IAAAA,EAAA,KACA,IAAAA,EAAA2S,KApOA,eAqOA3S,EAAA5K,OACG,CAMH,IADA,IACAgB,EADAqd,GAJAzT,EAAA,SAAAnF,GAEA,OADA0D,EAAAhD,KAAAyE,GACA,IAAA0R,EAAAhT,EAAA7D,MAEA0W,GAAAG,EAAAH,GACAxQ,EAAAjC,EAAA4S,GAAAgC,EAAA,EAAiD3S,EAAAlG,OAAA6Y,IACjDtd,EAAA2K,EAAA2S,QAAA1T,GAAAjJ,EAAAiJ,EAAA5J,EAAAsb,EAAAtb,IAEAgI,IAAAqV,EAAAzX,YAAAgE,GAGA,IAAAmT,EAAA,IAAAjT,EAAA,IAAAF,EAAA,IACA2T,EAAAzT,EAAAqR,GAAAqC,QACAT,EAAAS,QAAA,cACAT,EAAAS,QAAA,eACAT,EAAAU,QAAA,IAAAV,EAAAU,QAAA,IAAApV,EAAAyB,EAAAqR,IACAqC,QAAA,SAAA/N,EAAA/P,GACA6d,EAAA3e,KAAAuG,KAAAsK,EAAA/P,GAAA,SAEAge,SAAA,SAAAjO,EAAA/P,GACA6d,EAAA3e,KAAAuG,KAAAsK,EAAA/P,GAAA,WAEG,QAhHHkK,EAAA,SAAAnF,GACA0D,EAAAhD,KAAAyE,EA9IA,eA+IA,IAAA6H,EAAAnJ,EAAA7D,GACAU,KAAA+X,GAAA9T,EAAAxK,KAAA,IAAA+K,MAAA8H,GAAA,GACAtM,KAAAyW,GAAAnK,GAGA3H,EAAA,SAAA0C,EAAAiD,EAAAgC,GACAtJ,EAAAhD,KAAA2E,EApJA,YAqJA3B,EAAAqE,EAAA5C,EArJA,YAsJA,IAAA+T,EAAAnR,EAAAoP,GACA/O,EAAApJ,EAAAgM,GACA,GAAA5C,EAAA,GAAAA,EAAA8Q,EAAA,MAAAnU,EAAA,iBAEA,GAAAqD,GADA4E,OAAAzP,IAAAyP,EAAAkM,EAAA9Q,EAAAjG,EAAA6K,IACAkM,EAAA,MAAAnU,EAxJA,iBAyJArE,KAAAwW,GAAAnP,EACArH,KAAA0W,GAAAhP,EACA1H,KAAAyW,GAAAnK,GAGAyD,IACA/H,EAAAvD,EAhJA,aAgJA,MACAuD,EAAArD,EAlJA,SAkJA,MACAqD,EAAArD,EAlJA,aAkJA,MACAqD,EAAArD,EAlJA,aAkJA,OAGAzB,EAAAyB,EAAAqR,IACAsC,QAAA,SAAAhO,GACA,OAAAnQ,EAAA6F,KAAA,EAAAsK,GAAA,YAEAmO,SAAA,SAAAnO,GACA,OAAAnQ,EAAA6F,KAAA,EAAAsK,GAAA,IAEAoO,SAAA,SAAApO,GACA,IAAAgN,EAAAnd,EAAA6F,KAAA,EAAAsK,EAAAjJ,UAAA,IACA,OAAAiW,EAAA,MAAAA,EAAA,aAEAqB,UAAA,SAAArO,GACA,IAAAgN,EAAAnd,EAAA6F,KAAA,EAAAsK,EAAAjJ,UAAA,IACA,OAAAiW,EAAA,MAAAA,EAAA,IAEAsB,SAAA,SAAAtO,GACA,OAAA+M,EAAAld,EAAA6F,KAAA,EAAAsK,EAAAjJ,UAAA,MAEAwX,UAAA,SAAAvO,GACA,OAAA+M,EAAAld,EAAA6F,KAAA,EAAAsK,EAAAjJ,UAAA,UAEAyX,WAAA,SAAAxO,GACA,OAAA4M,EAAA/c,EAAA6F,KAAA,EAAAsK,EAAAjJ,UAAA,WAEA0X,WAAA,SAAAzO,GACA,OAAA4M,EAAA/c,EAAA6F,KAAA,EAAAsK,EAAAjJ,UAAA,WAEAgX,QAAA,SAAA/N,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAiN,EAAAhd,IAEAge,SAAA,SAAAjO,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAiN,EAAAhd,IAEAye,SAAA,SAAA1O,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAkN,EAAAjd,EAAA8G,UAAA,KAEA4X,UAAA,SAAA3O,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAkN,EAAAjd,EAAA8G,UAAA,KAEA6X,SAAA,SAAA5O,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAmN,EAAAld,EAAA8G,UAAA,KAEA8X,UAAA,SAAA7O,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAmN,EAAAld,EAAA8G,UAAA,KAEA+X,WAAA,SAAA9O,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAqN,EAAApd,EAAA8G,UAAA,KAEAgY,WAAA,SAAA/O,EAAA/P,GACAgN,EAAAvH,KAAA,EAAAsK,EAAAoN,EAAAnd,EAAA8G,UAAA,OAsCAiR,EAAA7N,EA/PA,eAgQA6N,EAAA3N,EA/PA,YAgQAnJ,EAAAmJ,EAAAqR,GAAAlT,EAAAkE,MAAA,GACA5N,EAAA,YAAAqL,EACArL,EAAA,SAAAuL,8CCjRA,IAAA2U,EAAcpgB,EAAQ,IACtBqgB,EAAWrgB,EAAQ,KACnBwH,EAAUxH,EAAQ,KAClBmH,EAAenH,EAAQ,IACvB+G,EAAc/G,EAAQ,KACtBsgB,EAAAxf,OAAAyf,OAGApgB,EAAAD,SAAAogB,GAA6BtgB,EAAQ,GAARA,CAAkB,WAC/C,IAAAwgB,KACAhd,KAEAJ,EAAAjC,SACAsf,EAAA,uBAGA,OAFAD,EAAApd,GAAA,EACAqd,EAAAta,MAAA,IAAAmK,QAAA,SAAAoQ,GAAoCld,EAAAkd,OACjB,GAAnBJ,KAAmBE,GAAApd,IAAAtC,OAAAwL,KAAAgU,KAAsC9c,IAAAqD,KAAA,KAAA4Z,IACxD,SAAAhd,EAAAd,GAMD,IALA,IAAAgV,EAAAxQ,EAAA1D,GACA2L,EAAAjH,UAAA/B,OACAgD,EAAA,EACAuX,EAAAN,EAAArb,EACA4b,EAAApZ,EAAAxC,EACAoK,EAAAhG,GAMA,IALA,IAIAzH,EAJAyB,EAAA2D,EAAAoB,UAAAiB,MACAkD,EAAAqU,EAAAP,EAAAhd,GAAAoQ,OAAAmN,EAAAvd,IAAAgd,EAAAhd,GACAgD,EAAAkG,EAAAlG,OACA6Y,EAAA,EAEA7Y,EAAA6Y,GAAA2B,EAAArgB,KAAA6C,EAAAzB,EAAA2K,EAAA2S,QAAAtH,EAAAhW,GAAAyB,EAAAzB,IACG,OAAAgW,GACF2I,iBChCDngB,EAAAD,QAAA,SAAA6H,EAAA8Y,EAAA7Y,GACA,IAAA8Y,OAAAnd,IAAAqE,EACA,OAAA6Y,EAAAza,QACA,cAAA0a,EAAA/Y,IACAA,EAAAxH,KAAAyH,GACA,cAAA8Y,EAAA/Y,EAAA8Y,EAAA,IACA9Y,EAAAxH,KAAAyH,EAAA6Y,EAAA,IACA,cAAAC,EAAA/Y,EAAA8Y,EAAA,GAAAA,EAAA,IACA9Y,EAAAxH,KAAAyH,EAAA6Y,EAAA,GAAAA,EAAA,IACA,cAAAC,EAAA/Y,EAAA8Y,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA9Y,EAAAxH,KAAAyH,EAAA6Y,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA,cAAAC,EAAA/Y,EAAA8Y,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA9Y,EAAAxH,KAAAyH,EAAA6Y,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACG,OAAA9Y,EAAAG,MAAAF,EAAA6Y,kCCbH,IAAAzb,EAAgBpF,EAAQ,IACxBsF,EAActF,EAAQ,IAEtBG,EAAAD,QAAA,SAAA6gB,GACA,IAAAC,EAAAnb,OAAAP,EAAAwB,OACAqC,EAAA,GACAtH,EAAAuD,EAAA2b,GACA,GAAAlf,EAAA,GAAAA,GAAAmb,IAAA,MAAA7R,WAAA,2BACA,KAAQtJ,EAAA,GAAMA,KAAA,KAAAmf,MAAA,EAAAnf,IAAAsH,GAAA6X,GACd,OAAA7X,oBCVA,IAAA/D,EAAgBpF,EAAQ,IACxBsF,EAActF,EAAQ,IAGtBG,EAAAD,QAAA,SAAA+gB,GACA,gBAAAjZ,EAAAkZ,GACA,IAGA/b,EAAA8C,EAHA9F,EAAA0D,OAAAP,EAAA0C,IACA5H,EAAAgF,EAAA8b,GACA7gB,EAAA8B,EAAAiE,OAEA,OAAAhG,EAAA,GAAAA,GAAAC,EAAA4gB,EAAA,QAAAtd,GACAwB,EAAAhD,EAAAgf,WAAA/gB,IACA,OAAA+E,EAAA,OAAA/E,EAAA,IAAAC,IAAA4H,EAAA9F,EAAAgf,WAAA/gB,EAAA,WAAA6H,EAAA,MACAgZ,EAAA9e,EAAAif,OAAAhhB,GAAA+E,EACA8b,EAAA9e,EAAAkG,MAAAjI,IAAA,GAAA6H,EAAA,OAAA9C,EAAA,iDCbA,IAAAkc,EAAsBrhB,EAAQ,IAC9BkH,EAAiBlH,EAAQ,IAEzBG,EAAAD,QAAA,SAAA4B,EAAAsH,EAAA/H,GACA+H,KAAAtH,EAAAuf,EAAArc,EAAAlD,EAAAsH,EAAAlC,EAAA,EAAA7F,IACAS,EAAAsH,GAAA/H,iCCLA,IAAAigB,EAAuBthB,EAAQ,IAC/BkP,EAAWlP,EAAQ,KACnB4K,EAAgB5K,EAAQ,IACxByH,EAAgBzH,EAAQ,IAMxBG,EAAAD,QAAiBF,EAAQ,IAARA,CAAwBsL,MAAA,iBAAAiW,EAAAtG,GACzCnU,KAAA0Q,GAAA/P,EAAA8Z,GACAza,KAAA0a,GAAA,EACA1a,KAAA2a,GAAAxG,GAEC,WACD,IAAAhW,EAAA6B,KAAA0Q,GACAyD,EAAAnU,KAAA2a,GACArY,EAAAtC,KAAA0a,KACA,OAAAvc,GAAAmE,GAAAnE,EAAAmB,QACAU,KAAA0Q,QAAA7T,EACAuL,EAAA,IAEAA,EAAA,UAAA+L,EAAA7R,EACA,UAAA6R,EAAAhW,EAAAmE,IACAA,EAAAnE,EAAAmE,MACC,UAGDwB,EAAA8W,UAAA9W,EAAAU,MAEAgW,EAAA,QACAA,EAAA,UACAA,EAAA,0BCjCAnhB,EAAAD,QAAA,SAAAuP,EAAApO,GACA,OAAUA,QAAAoO,4BCDV,IAaAkS,EAAAC,EAAAC,EAbArf,EAAUxC,EAAQ,IAClB8hB,EAAa9hB,EAAQ,KACrB+hB,EAAW/hB,EAAQ,KACnBgiB,EAAUhiB,EAAQ,KAClBoC,EAAapC,EAAQ,IACrBiiB,EAAA7f,EAAA6f,QACAC,EAAA9f,EAAA+f,aACAC,EAAAhgB,EAAAigB,eACAC,EAAAlgB,EAAAkgB,eACAC,EAAAngB,EAAAmgB,SACAC,EAAA,EACAC,KAGAC,EAAA,WACA,IAAAhO,GAAA5N,KAEA,GAAA2b,EAAAxgB,eAAAyS,GAAA,CACA,IAAA3M,EAAA0a,EAAA/N,UACA+N,EAAA/N,GACA3M,MAGA4a,EAAA,SAAAC,GACAF,EAAAniB,KAAAqiB,EAAA9P,OAGAoP,GAAAE,IACAF,EAAA,SAAAna,GAGA,IAFA,IAAA8Y,KACAzgB,EAAA,EACA+H,UAAA/B,OAAAhG,GAAAygB,EAAAvX,KAAAnB,UAAA/H,MAMA,OALAqiB,IAAAD,GAAA,WAEAV,EAAA,mBAAA/Z,IAAAnE,SAAAmE,GAAA8Y,IAEAc,EAAAa,GACAA,GAEAJ,EAAA,SAAA1N,UACA+N,EAAA/N,IAGsB,WAAhB1U,EAAQ,GAARA,CAAgBiiB,GACtBN,EAAA,SAAAjN,GACAuN,EAAAY,SAAArgB,EAAAkgB,EAAAhO,EAAA,KAGG6N,KAAAO,IACHnB,EAAA,SAAAjN,GACA6N,EAAAO,IAAAtgB,EAAAkgB,EAAAhO,EAAA,KAGG4N,GAEHT,GADAD,EAAA,IAAAU,GACAS,MACAnB,EAAAoB,MAAAC,UAAAN,EACAhB,EAAAnf,EAAAqf,EAAAqB,YAAArB,EAAA,IAGGzf,EAAA+gB,kBAAA,mBAAAD,cAAA9gB,EAAAghB,eACHzB,EAAA,SAAAjN,GACAtS,EAAA8gB,YAAAxO,EAAA,SAEAtS,EAAA+gB,iBAAA,UAAAR,GAAA,IAGAhB,EAvDA,uBAsDGK,EAAA,UACH,SAAAtN,GACAqN,EAAAlM,YAAAmM,EAAA,yCACAD,EAAAsB,YAAAvc,MACA4b,EAAAniB,KAAAmU,KAKA,SAAAA,GACA4O,WAAA9gB,EAAAkgB,EAAAhO,EAAA,QAIAvU,EAAAD,SACAmO,IAAA6T,EACAjI,MAAAmI,iCChFA,IAAAta,EAAgB9H,EAAQ,IAaxBG,EAAAD,QAAA8E,EAAA,SAAA0J,GACA,WAZA,SAAAA,GACA,IAAA6U,EAAAC,EACA1c,KAAA2c,QAAA,IAAA/U,EAAA,SAAAgV,EAAAC,GACA,QAAAhgB,IAAA4f,QAAA5f,IAAA6f,EAAA,MAAAtf,UAAA,2BACAqf,EAAAG,EACAF,EAAAG,IAEA7c,KAAAyc,QAAAzb,EAAAyb,GACAzc,KAAA0c,OAAA1b,EAAA0b,GAIA,CAAA9U,qBChBA,IACAkV,EADa5jB,EAAQ,IACrB4jB,UAEAzjB,EAAAD,QAAA0jB,KAAAC,WAAA,iCCHA1jB,EAAAD,SAAkBF,EAAQ,MAAsBA,EAAQ,GAARA,CAAkB,WAClE,OAAuG,GAAvGc,OAAAC,eAA+Bf,EAAQ,IAARA,CAAuB,YAAgBiB,IAAA,WAAmB,YAAckE,qBCDvGjF,EAAA8E,EAAYhF,EAAQ,qBCApB,IAAAoC,EAAapC,EAAQ,IACrBqC,EAAWrC,EAAQ,IACnB2J,EAAc3J,EAAQ,IACtB8jB,EAAa9jB,EAAQ,KACrBe,EAAqBf,EAAQ,IAAcgF,EAC3C7E,EAAAD,QAAA,SAAAS,GACA,IAAAojB,EAAA1hB,EAAAlB,SAAAkB,EAAAlB,OAAAwI,KAA0DvH,EAAAjB,YAC1D,KAAAR,EAAAygB,OAAA,IAAAzgB,KAAAojB,GAAAhjB,EAAAgjB,EAAApjB,GAAkFU,MAAAyiB,EAAA9e,EAAArE,uBCPlF,IAAA0F,EAAUrG,EAAQ,IAClByH,EAAgBzH,EAAQ,IACxBkM,EAAmBlM,EAAQ,IAARA,EAA2B,GAC9CoH,EAAepH,EAAQ,IAARA,CAAuB,YAEtCG,EAAAD,QAAA,SAAA4B,EAAAkiB,GACA,IAGAriB,EAHAsD,EAAAwC,EAAA3F,GACA1B,EAAA,EACAiJ,KAEA,IAAA1H,KAAAsD,EAAAtD,GAAAyF,GAAAf,EAAApB,EAAAtD,IAAA0H,EAAAC,KAAA3H,GAEA,KAAAqiB,EAAA5d,OAAAhG,GAAAiG,EAAApB,EAAAtD,EAAAqiB,EAAA5jB,SACA8L,EAAA7C,EAAA1H,IAAA0H,EAAAC,KAAA3H,IAEA,OAAA0H,oBCfA,IAAAtE,EAAS/E,EAAQ,IACjB4E,EAAe5E,EAAQ,IACvBogB,EAAcpgB,EAAQ,IAEtBG,EAAAD,QAAiBF,EAAQ,IAAgBc,OAAAmjB,iBAAA,SAAAhf,EAAAmR,GACzCxR,EAAAK,GAKA,IAJA,IAGA3B,EAHAgJ,EAAA8T,EAAAhK,GACAhQ,EAAAkG,EAAAlG,OACAhG,EAAA,EAEAgG,EAAAhG,GAAA2E,EAAAC,EAAAC,EAAA3B,EAAAgJ,EAAAlM,KAAAgW,EAAA9S,IACA,OAAA2B,oBCVA,IAAAwC,EAAgBzH,EAAQ,IACxBqK,EAAWrK,EAAQ,IAAgBgF,EACnCoD,KAAiBA,SAEjB8b,EAAA,iBAAA/f,gBAAArD,OAAA6V,oBACA7V,OAAA6V,oBAAAxS,WAUAhE,EAAAD,QAAA8E,EAAA,SAAAf,GACA,OAAAigB,GAAA,mBAAA9b,EAAA7H,KAAA0D,GATA,SAAAA,GACA,IACA,OAAAoG,EAAApG,GACG,MAAAO,GACH,OAAA0f,EAAA7b,SAKA8b,CAAAlgB,GAAAoG,EAAA5C,EAAAxD,mCChBA,IAAA6D,EAAgB9H,EAAQ,IACxBgE,EAAehE,EAAQ,IACvB8hB,EAAa9hB,EAAQ,KACrBkN,KAAA7E,MACA+b,KAUAjkB,EAAAD,QAAA0D,SAAAhC,MAAA,SAAAoG,GACA,IAAAD,EAAAD,EAAAhB,MACAud,EAAAnX,EAAA3M,KAAA4H,UAAA,GACAmc,EAAA,WACA,IAAAzD,EAAAwD,EAAA7Q,OAAAtG,EAAA3M,KAAA4H,YACA,OAAArB,gBAAAwd,EAbA,SAAAthB,EAAA0O,EAAAmP,GACA,KAAAnP,KAAA0S,GAAA,CACA,QAAAviB,KAAAzB,EAAA,EAA2BA,EAAAsR,EAAStR,IAAAyB,EAAAzB,GAAA,KAAAA,EAAA,IAEpCgkB,EAAA1S,GAAA9N,SAAA,sBAAA/B,EAAAgF,KAAA,UACG,OAAAud,EAAA1S,GAAA1O,EAAA6d,GAQH0D,CAAAxc,EAAA8Y,EAAAza,OAAAya,GAAAiB,EAAA/Z,EAAA8Y,EAAA7Y,IAGA,OADAhE,EAAA+D,EAAA/F,aAAAsiB,EAAAtiB,UAAA+F,EAAA/F,WACAsiB,oBCvBA,IAAAE,EAAgBxkB,EAAQ,IAAWykB,SACnCC,EAAY1kB,EAAQ,KAAgBuY,KACpCoM,EAAS3kB,EAAQ,KACjB4kB,EAAA,cAEAzkB,EAAAD,QAAA,IAAAskB,EAAAG,EAAA,YAAAH,EAAAG,EAAA,iBAAA3D,EAAA6D,GACA,IAAAnf,EAAAgf,EAAA7e,OAAAmb,GAAA,GACA,OAAAwD,EAAA9e,EAAAmf,IAAA,IAAAD,EAAA3e,KAAAP,GAAA,SACC8e,mBCRD,IAAAM,EAAkB9kB,EAAQ,IAAW+kB,WACrCL,EAAY1kB,EAAQ,KAAgBuY,KAEpCpY,EAAAD,QAAA,EAAA4kB,EAAiC9kB,EAAQ,KAAc,QAAAgd,IAAA,SAAAgE,GACvD,IAAAtb,EAAAgf,EAAA7e,OAAAmb,GAAA,GACA3X,EAAAyb,EAAApf,GACA,WAAA2D,GAAA,KAAA3D,EAAA0b,OAAA,MAAA/X,GACCyb,mBCPD,IAAArN,EAAUzX,EAAQ,IAClBG,EAAAD,QAAA,SAAA+D,EAAA+gB,GACA,oBAAA/gB,GAAA,UAAAwT,EAAAxT,GAAA,MAAAC,UAAA8gB,GACA,OAAA/gB,oBCFA,IAAAD,EAAehE,EAAQ,IACvBwJ,EAAApF,KAAAoF,MACArJ,EAAAD,QAAA,SAAA+D,GACA,OAAAD,EAAAC,IAAAghB,SAAAhhB,IAAAuF,EAAAvF,uBCHA9D,EAAAD,QAAAkE,KAAA8gB,OAAA,SAAA3I,GACA,OAAAA,OAAA,MAAAA,EAAA,KAAAA,MAAA,EAAAnY,KAAAgZ,IAAA,EAAAb,qBCDA,IAAA3X,EAAe5E,EAAQ,IACvBG,EAAAD,QAAA,SAAAiP,EAAApH,EAAA1G,EAAAmL,GACA,IACA,OAAAA,EAAAzE,EAAAnD,EAAAvD,GAAA,GAAAA,EAAA,IAAA0G,EAAA1G,GAEG,MAAAmD,GACH,IAAA2gB,EAAAhW,EAAA,OAEA,WADAxL,IAAAwhB,GAAAvgB,EAAAugB,EAAA5kB,KAAA4O,IACA3K,qBCRA,IAAAkG,EAAyB1K,EAAQ,KAEjCG,EAAAD,QAAA,SAAAklB,EAAAhf,GACA,WAAAsE,EAAA0a,GAAA,CAAAhf,qBCJA,IAAA0B,EAAgB9H,EAAQ,IACxBmH,EAAenH,EAAQ,IACvB+G,EAAc/G,EAAQ,KACtBuI,EAAevI,EAAQ,IAEvBG,EAAAD,QAAA,SAAA8H,EAAAkB,EAAAkG,EAAAiW,EAAAC,GACAxd,EAAAoB,GACA,IAAAjE,EAAAkC,EAAAa,GACA3D,EAAA0C,EAAA9B,GACAmB,EAAAmC,EAAAtD,EAAAmB,QACAgD,EAAAkc,EAAAlf,EAAA,IACAhG,EAAAklB,GAAA,IACA,GAAAlW,EAAA,SAAuB,CACvB,GAAAhG,KAAA/E,EAAA,CACAghB,EAAAhhB,EAAA+E,GACAA,GAAAhJ,EACA,MAGA,GADAgJ,GAAAhJ,EACAklB,EAAAlc,EAAA,EAAAhD,GAAAgD,EACA,MAAAlF,UAAA,+CAGA,KAAQohB,EAAAlc,GAAA,EAAAhD,EAAAgD,EAAsCA,GAAAhJ,EAAAgJ,KAAA/E,IAC9CghB,EAAAnc,EAAAmc,EAAAhhB,EAAA+E,KAAAnE,IAEA,OAAAogB,iCCxBA,IAAAle,EAAenH,EAAQ,IACvBkK,EAAsBlK,EAAQ,IAC9BuI,EAAevI,EAAQ,IAEvBG,EAAAD,WAAA4P,YAAA,SAAArM,EAAAsM,GACA,IAAA9K,EAAAkC,EAAAL,MACA4K,EAAAnJ,EAAAtD,EAAAmB,QACAmf,EAAArb,EAAAzG,EAAAiO,GACAmC,EAAA3J,EAAA6F,EAAA2B,GACAR,EAAA/I,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,EACAod,EAAA3c,KAAAiB,UAAA1B,IAAAuN,EAAAQ,EAAAxH,EAAAgH,EAAAQ,IAAAmC,EAAAnC,EAAA6T,GACAC,EAAA,EAMA,IALA3R,EAAA0R,KAAA1R,EAAAkN,IACAyE,GAAA,EACA3R,GAAAkN,EAAA,EACAwE,GAAAxE,EAAA,GAEAA,KAAA,GACAlN,KAAA5O,IAAAsgB,GAAAtgB,EAAA4O,UACA5O,EAAAsgB,GACAA,GAAAC,EACA3R,GAAA2R,EACG,OAAAvgB,oBCvBCjF,EAAQ,KAAgB,UAAAylB,OAAwBzlB,EAAQ,IAAcgF,EAAAkT,OAAAlW,UAAA,SAC1EgQ,cAAA,EACA/Q,IAAOjB,EAAQ,wBCHf,IAAAoC,EAAapC,EAAQ,IACrB0lB,EAAgB1lB,EAAQ,KAASqO,IACjCsX,EAAAvjB,EAAAwjB,kBAAAxjB,EAAAyjB,uBACA5D,EAAA7f,EAAA6f,QACA6D,EAAA1jB,EAAA0jB,QACAC,EAA6B,WAAhB/lB,EAAQ,GAARA,CAAgBiiB,GAE7B9hB,EAAAD,QAAA,WACA,IAAA8lB,EAAAC,EAAAC,EAEAC,EAAA,WACA,IAAAC,EAAAre,EAEA,IADAge,IAAAK,EAAAnE,EAAAoE,SAAAD,EAAAE,OACAN,GAAA,CACAje,EAAAie,EAAAje,GACAie,IAAAxW,KACA,IACAzH,IACO,MAAAvD,GAGP,MAFAwhB,EAAAE,IACAD,OAAAtiB,EACAa,GAEKyhB,OAAAtiB,EACLyiB,KAAAG,SAIA,GAAAR,EACAG,EAAA,WACAjE,EAAAY,SAAAsD,SAGG,IAAAR,GAAAvjB,EAAAwhB,WAAAxhB,EAAAwhB,UAAA4C,WAQA,GAAAV,KAAAvC,QAAA,CAEH,IAAAE,EAAAqC,EAAAvC,aAAA5f,GACAuiB,EAAA,WACAzC,EAAAgD,KAAAN,SASAD,EAAA,WAEAR,EAAAnlB,KAAA6B,EAAA+jB,QAvBG,CACH,IAAAO,GAAA,EACAC,EAAA5Q,SAAA6Q,eAAA,IACA,IAAAjB,EAAAQ,GAAAU,QAAAF,GAAuCG,eAAA,IACvCZ,EAAA,WACAS,EAAA7T,KAAA4T,MAsBA,gBAAA3e,GACA,IAAAgf,GAAgBhf,KAAAyH,UAAA7L,GAChBsiB,MAAAzW,KAAAuX,GACAf,IACAA,EAAAe,EACAb,KACKD,EAAAc,kCCjEL,IAAAC,EAAahnB,EAAQ,KACrByO,EAAezO,EAAQ,IAIvBG,EAAAD,QAAiBF,EAAQ,IAARA,CAHjB,MAGwC,SAAAiB,GACxC,kBAAyB,OAAAA,EAAA6F,KAAAqB,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,MAGzB1C,IAAA,SAAAU,GACA,IAAAslB,EAAAD,EAAAE,SAAAzY,EAAA3H,KARA,OAQAnF,GACA,OAAAslB,KAAAlU,GAGA1E,IAAA,SAAA1M,EAAAN,GACA,OAAA2lB,EAAA1P,IAAA7I,EAAA3H,KAbA,OAaA,IAAAnF,EAAA,EAAAA,EAAAN,KAEC2lB,GAAA,iCCjBD,IAAAjiB,EAAS/E,EAAQ,IAAcgF,EAC/BtD,EAAa1B,EAAQ,IACrBgK,EAAkBhK,EAAQ,IAC1BwC,EAAUxC,EAAQ,IAClB8J,EAAiB9J,EAAQ,IACzBmZ,EAAYnZ,EAAQ,IACpBmnB,EAAkBnnB,EAAQ,KAC1BkP,EAAWlP,EAAQ,KACnB8K,EAAiB9K,EAAQ,IACzB6W,EAAkB7W,EAAQ,IAC1BkV,EAAclV,EAAQ,IAASkV,QAC/BzG,EAAezO,EAAQ,IACvBonB,EAAAvQ,EAAA,YAEAqQ,EAAA,SAAAlf,EAAArG,GAEA,IACAslB,EADA7d,EAAA8L,EAAAvT,GAEA,SAAAyH,EAAA,OAAApB,EAAAwZ,GAAApY,GAEA,IAAA6d,EAAAjf,EAAAqf,GAAuBJ,EAAOA,IAAAplB,EAC9B,GAAAolB,EAAAvG,GAAA/e,EAAA,OAAAslB,GAIA9mB,EAAAD,SACAga,eAAA,SAAA/H,EAAAnM,EAAA2C,EAAA8Q,GACA,IAAA/K,EAAAyD,EAAA,SAAAnK,EAAAmP,GACArN,EAAA9B,EAAA0G,EAAA1I,EAAA,MACAgC,EAAAwP,GAAAxR,EACAgC,EAAAwZ,GAAA9f,EAAA,MACAsG,EAAAqf,QAAA1jB,EACAqE,EAAAsf,QAAA3jB,EACAqE,EAAAof,GAAA,OACAzjB,GAAAwT,GAAAgC,EAAAhC,EAAAxO,EAAAX,EAAAyR,GAAAzR,KAsDA,OApDAgC,EAAA0E,EAAA1M,WAGAiY,MAAA,WACA,QAAAjS,EAAAyG,EAAA3H,KAAAd,GAAA8M,EAAA9K,EAAAwZ,GAAAyF,EAAAjf,EAAAqf,GAA8EJ,EAAOA,IAAAplB,EACrFolB,EAAA/lB,GAAA,EACA+lB,EAAA/kB,IAAA+kB,EAAA/kB,EAAA+kB,EAAA/kB,EAAAL,OAAA8B,UACAmP,EAAAmU,EAAA7mB,GAEA4H,EAAAqf,GAAArf,EAAAsf,QAAA3jB,EACAqE,EAAAof,GAAA,GAIAG,OAAA,SAAA5lB,GACA,IAAAqG,EAAAyG,EAAA3H,KAAAd,GACAihB,EAAAC,EAAAlf,EAAArG,GACA,GAAAslB,EAAA,CACA,IAAAzX,EAAAyX,EAAAplB,EACA2lB,EAAAP,EAAA/kB,SACA8F,EAAAwZ,GAAAyF,EAAA7mB,GACA6mB,EAAA/lB,GAAA,EACAsmB,MAAA3lB,EAAA2N,GACAA,MAAAtN,EAAAslB,GACAxf,EAAAqf,IAAAJ,IAAAjf,EAAAqf,GAAA7X,GACAxH,EAAAsf,IAAAL,IAAAjf,EAAAsf,GAAAE,GACAxf,EAAAof,KACS,QAAAH,GAIT3W,QAAA,SAAApH,GACAuF,EAAA3H,KAAAd,GAGA,IAFA,IACAihB,EADAjiB,EAAAxC,EAAA0G,EAAAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,EAAA,GAEAsjB,MAAAplB,EAAAiF,KAAAugB,IAGA,IAFAriB,EAAAiiB,EAAAlU,EAAAkU,EAAAvG,EAAA5Z,MAEAmgB,KAAA/lB,GAAA+lB,IAAA/kB,GAKAmE,IAAA,SAAA1E,GACA,QAAAulB,EAAAzY,EAAA3H,KAAAd,GAAArE,MAGAkV,GAAA9R,EAAA2J,EAAA1M,UAAA,QACAf,IAAA,WACA,OAAAwN,EAAA3H,KAAAd,GAAAohB,MAGA1Y,GAEA4I,IAAA,SAAAtP,EAAArG,EAAAN,GACA,IACAmmB,EAAApe,EADA6d,EAAAC,EAAAlf,EAAArG,GAoBK,OAjBLslB,EACAA,EAAAlU,EAAA1R,GAGA2G,EAAAsf,GAAAL,GACA7mB,EAAAgJ,EAAA8L,EAAAvT,GAAA,GACA+e,EAAA/e,EACAoR,EAAA1R,EACAa,EAAAslB,EAAAxf,EAAAsf,GACAzlB,OAAA8B,EACAzC,GAAA,GAEA8G,EAAAqf,KAAArf,EAAAqf,GAAAJ,GACAO,MAAA3lB,EAAAolB,GACAjf,EAAAof,KAEA,MAAAhe,IAAApB,EAAAwZ,GAAApY,GAAA6d,IACKjf,GAELkf,WACA/M,UAAA,SAAAzL,EAAA1I,EAAA2C,GAGAwe,EAAAzY,EAAA1I,EAAA,SAAAub,EAAAtG,GACAnU,KAAA0Q,GAAA/I,EAAA8S,EAAAvb,GACAc,KAAA2a,GAAAxG,EACAnU,KAAAwgB,QAAA3jB,GACK,WAKL,IAJA,IACAsX,EADAnU,KACA2a,GACAwF,EAFAngB,KAEAwgB,GAEAL,KAAA/lB,GAAA+lB,IAAA/kB,EAEA,OANA4E,KAMA0Q,KANA1Q,KAMAwgB,GAAAL,MAAAplB,EANAiF,KAMA0Q,GAAA6P,IAMAnY,EAAA,UAAA+L,EAAAgM,EAAAvG,EACA,UAAAzF,EAAAgM,EAAAlU,GACAkU,EAAAvG,EAAAuG,EAAAlU,KAdAjM,KAQA0Q,QAAA7T,EACAuL,EAAA,KAMKvG,EAAA,oBAAAA,GAAA,GAGLmC,EAAA9E,mCC5IA,IAAAghB,EAAahnB,EAAQ,KACrByO,EAAezO,EAAQ,IAIvBG,EAAAD,QAAiBF,EAAQ,IAARA,CAHjB,MAGwC,SAAAiB,GACxC,kBAAyB,OAAAA,EAAA6F,KAAAqB,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,MAGzB8jB,IAAA,SAAApmB,GACA,OAAA2lB,EAAA1P,IAAA7I,EAAA3H,KARA,OAQAzF,EAAA,IAAAA,EAAA,EAAAA,OAEC2lB,iCCZD,IAaAU,EAbAC,EAAW3nB,EAAQ,GAARA,CAA0B,GACrCuC,EAAevC,EAAQ,IACvBgV,EAAWhV,EAAQ,IACnBugB,EAAavgB,EAAQ,KACrB4nB,EAAW5nB,EAAQ,KACnBgE,EAAehE,EAAQ,IACvBuF,EAAYvF,EAAQ,IACpByO,EAAezO,EAAQ,IAEvBmV,EAAAH,EAAAG,QACAR,EAAA7T,OAAA6T,aACAkT,EAAAD,EAAAE,QACAC,KAGA5V,EAAA,SAAAlR,GACA,kBACA,OAAAA,EAAA6F,KAAAqB,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,KAIA2V,GAEArY,IAAA,SAAAU,GACA,GAAAqC,EAAArC,GAAA,CACA,IAAAmR,EAAAqC,EAAAxT,GACA,WAAAmR,EAAA+U,EAAApZ,EAAA3H,KAlBA,YAkBA7F,IAAAU,GACAmR,IAAAhM,KAAA0a,SAAA7d,IAIA0K,IAAA,SAAA1M,EAAAN,GACA,OAAAumB,EAAAtQ,IAAA7I,EAAA3H,KAxBA,WAwBAnF,EAAAN,KAKA2mB,EAAA7nB,EAAAD,QAAgCF,EAAQ,IAARA,CA7BhC,UA6BuDmS,EAAAmH,EAAAsO,GAAA,MAGvDriB,EAAA,WAAuB,eAAAyiB,GAAA3Z,KAAAvN,OAAAmnB,QAAAnnB,QAAAinB,GAAA,GAAA9mB,IAAA8mB,OAEvBxH,GADAmH,EAAAE,EAAA1N,eAAA/H,EAjCA,YAkCAnQ,UAAAsX,GACAtE,EAAAC,MAAA,EACA0S,GAAA,qCAAAhmB,GACA,IAAAkO,EAAAmY,EAAAhmB,UACA4F,EAAAiI,EAAAlO,GACAY,EAAAsN,EAAAlO,EAAA,SAAAwD,EAAA8C,GAEA,GAAAjE,EAAAmB,KAAAwP,EAAAxP,GAAA,CACA2B,KAAAugB,KAAAvgB,KAAAugB,GAAA,IAAAK,GACA,IAAAre,EAAAvC,KAAAugB,GAAA1lB,GAAAwD,EAAA8C,GACA,aAAAtG,EAAAmF,KAAAuC,EAEO,OAAAzB,EAAArH,KAAAuG,KAAA3B,EAAA8C,sCCtDP,IAAA+B,EAAkBhK,EAAQ,IAC1BmV,EAAcnV,EAAQ,IAASmV,QAC/BvQ,EAAe5E,EAAQ,IACvBgE,EAAehE,EAAQ,IACvB8J,EAAiB9J,EAAQ,IACzBmZ,EAAYnZ,EAAQ,IACpBwK,EAAwBxK,EAAQ,IAChCkoB,EAAWloB,EAAQ,IACnByO,EAAezO,EAAQ,IACvB+L,EAAAvB,EAAA,GACAwB,EAAAxB,EAAA,GACAkK,EAAA,EAGAmT,EAAA,SAAA7f,GACA,OAAAA,EAAAsf,KAAAtf,EAAAsf,GAAA,IAAAa,IAEAA,EAAA,WACArhB,KAAA3B,MAEAijB,EAAA,SAAA3jB,EAAA9C,GACA,OAAAoK,EAAAtH,EAAAU,EAAA,SAAAlB,GACA,OAAAA,EAAA,KAAAtC,KAGAwmB,EAAAnmB,WACAf,IAAA,SAAAU,GACA,IAAAslB,EAAAmB,EAAAthB,KAAAnF,GACA,GAAAslB,EAAA,OAAAA,EAAA,IAEA5gB,IAAA,SAAA1E,GACA,QAAAymB,EAAAthB,KAAAnF,IAEA0M,IAAA,SAAA1M,EAAAN,GACA,IAAA4lB,EAAAmB,EAAAthB,KAAAnF,GACAslB,IAAA,GAAA5lB,EACAyF,KAAA3B,EAAAmE,MAAA3H,EAAAN,KAEAkmB,OAAA,SAAA5lB,GACA,IAAAyH,EAAA4C,EAAAlF,KAAA3B,EAAA,SAAAlB,GACA,OAAAA,EAAA,KAAAtC,IAGA,OADAyH,GAAAtC,KAAA3B,EAAAkjB,OAAAjf,EAAA,MACAA,IAIAjJ,EAAAD,SACAga,eAAA,SAAA/H,EAAAnM,EAAA2C,EAAA8Q,GACA,IAAA/K,EAAAyD,EAAA,SAAAnK,EAAAmP,GACArN,EAAA9B,EAAA0G,EAAA1I,EAAA,MACAgC,EAAAwP,GAAAxR,EACAgC,EAAAwZ,GAAA9M,IACA1M,EAAAsf,QAAA3jB,OACAA,GAAAwT,GAAAgC,EAAAhC,EAAAxO,EAAAX,EAAAyR,GAAAzR,KAoBA,OAlBAgC,EAAA0E,EAAA1M,WAGAulB,OAAA,SAAA5lB,GACA,IAAAqC,EAAArC,GAAA,SACA,IAAAmR,EAAAqC,EAAAxT,GACA,WAAAmR,EAAA+U,EAAApZ,EAAA3H,KAAAd,IAAA,OAAArE,GACAmR,GAAAoV,EAAApV,EAAAhM,KAAA0a,YAAA1O,EAAAhM,KAAA0a,KAIAnb,IAAA,SAAA1E,GACA,IAAAqC,EAAArC,GAAA,SACA,IAAAmR,EAAAqC,EAAAxT,GACA,WAAAmR,EAAA+U,EAAApZ,EAAA3H,KAAAd,IAAAK,IAAA1E,GACAmR,GAAAoV,EAAApV,EAAAhM,KAAA0a,OAGA9S,GAEA4I,IAAA,SAAAtP,EAAArG,EAAAN,GACA,IAAAyR,EAAAqC,EAAAvQ,EAAAjD,IAAA,GAGA,OAFA,IAAAmR,EAAA+U,EAAA7f,GAAAqG,IAAA1M,EAAAN,GACAyR,EAAA9K,EAAAwZ,IAAAngB,EACA2G,GAEA8f,QAAAD,oBClFA,IAAAziB,EAAgBpF,EAAQ,IACxBuI,EAAevI,EAAQ,IACvBG,EAAAD,QAAA,SAAA+D,GACA,QAAAN,IAAAM,EAAA,SACA,IAAAqkB,EAAAljB,EAAAnB,GACAmC,EAAAmC,EAAA+f,GACA,GAAAA,IAAAliB,EAAA,MAAA+E,WAAA,iBACA,OAAA/E,oBCPA,IAAAiE,EAAWrK,EAAQ,IACnBqgB,EAAWrgB,EAAQ,KACnB4E,EAAe5E,EAAQ,IACvBuoB,EAAcvoB,EAAQ,IAAWuoB,QACjCpoB,EAAAD,QAAAqoB,KAAAC,SAAA,SAAAvkB,GACA,IAAAqI,EAAAjC,EAAArF,EAAAJ,EAAAX,IACA0c,EAAAN,EAAArb,EACA,OAAA2b,EAAArU,EAAAkH,OAAAmN,EAAA1c,IAAAqI,uCCPA,IAAAgQ,EAAWtc,EAAQ,KACnBmd,EAAA/Y,KAAA+Y,IACAsL,EAAAtL,EAAA,OACAuL,EAAAvL,EAAA,OACAwL,EAAAxL,EAAA,UAAAuL,GACAE,EAAAzL,EAAA,QAMAhd,EAAAD,QAAAkE,KAAAykB,QAAA,SAAAtM,GACA,IAEApX,EAAAkE,EAFAyf,EAAA1kB,KAAA8Y,IAAAX,GACAwM,EAAAzM,EAAAC,GAEA,OAAAuM,EAAAF,EAAAG,EARA,SAAAlnB,GACA,OAAAA,EAAA,EAAA4mB,EAAA,EAAAA,EAOAO,CAAAF,EAAAF,EAAAF,GAAAE,EAAAF,GAEArf,GADAlE,GAAA,EAAAujB,EAAAD,GAAAK,IACA3jB,EAAA2jB,IAEAH,GAAAtf,KAAA0f,GAAA/L,KACA+L,EAAA1f,kBCrBAlJ,EAAAD,QAAA,SAAAqE,GACA,IACA,OAAYC,GAAA,EAAAuO,EAAAxO,KACT,MAAAC,GACH,OAAYA,GAAA,EAAAuO,EAAAvO,sBCJZ,IAAAI,EAAe5E,EAAQ,IACvBgE,EAAehE,EAAQ,IACvBipB,EAA2BjpB,EAAQ,KAEnCG,EAAAD,QAAA,SAAAwO,EAAA6N,GAEA,GADA3X,EAAA8J,GACA1K,EAAAuY,MAAAhV,cAAAmH,EAAA,OAAA6N,EACA,IAAA2M,EAAAD,EAAAjkB,EAAA0J,GAGA,OADA6U,EADA2F,EAAA3F,SACAhH,GACA2M,EAAAzF,0BCVA,IAAAtK,EAAYnZ,EAAQ,IAEpBG,EAAAD,QAAA,SAAAqT,EAAAjG,GACA,IAAAjE,KAEA,OADA8P,EAAA5F,GAAA,EAAAlK,EAAAC,KAAAD,EAAAiE,GACAjE,2ECHA,IAAAjH,EAAapC,EAAQ,IACrBqG,EAAUrG,EAAQ,IAClB6W,EAAkB7W,EAAQ,IAC1ByC,EAAczC,EAAQ,GACtBuC,EAAevC,EAAQ,IACvBwU,EAAWxU,EAAQ,IAASsI,IAC5B6gB,EAAanpB,EAAQ,IACrB+T,EAAa/T,EAAQ,KACrBoZ,EAAqBpZ,EAAQ,IAC7B0E,EAAU1E,EAAQ,IAClBuK,EAAUvK,EAAQ,IAClB8jB,EAAa9jB,EAAQ,KACrBopB,EAAgBppB,EAAQ,KACxBqpB,EAAerpB,EAAQ,KACvBya,EAAcza,EAAQ,KACtB4E,EAAe5E,EAAQ,IACvBgE,EAAehE,EAAQ,IACvByH,EAAgBzH,EAAQ,IACxB8E,EAAkB9E,EAAQ,IAC1BkH,EAAiBlH,EAAQ,IACzBspB,EAActpB,EAAQ,IACtBupB,EAAcvpB,EAAQ,KACtBkL,EAAYlL,EAAQ,IACpBiL,EAAUjL,EAAQ,IAClBwW,EAAYxW,EAAQ,IACpB0H,EAAAwD,EAAAlG,EACAD,EAAAkG,EAAAjG,EACAqF,EAAAkf,EAAAvkB,EACA+e,EAAA3hB,EAAAjB,OACAqoB,EAAApnB,EAAAqnB,KACAC,EAAAF,KAAAG,UAEAC,EAAArf,EAAA,WACAsf,EAAAtf,EAAA,eACAqW,KAAe9I,qBACfgS,EAAA/V,EAAA,mBACAgW,EAAAhW,EAAA,WACAiW,EAAAjW,EAAA,cACA1M,EAAAvG,OAAA,UACAmpB,EAAA,mBAAAlG,EACAmG,EAAA9nB,EAAA8nB,QAEAjX,GAAAiX,MAAA,YAAAA,EAAA,UAAAC,UAGAC,EAAAvT,GAAAsS,EAAA,WACA,OAEG,GAFHG,EAAAvkB,KAAsB,KACtB9D,IAAA,WAAsB,OAAA8D,EAAA+B,KAAA,KAAuBzF,MAAA,IAAW8D,MACrDA,IACF,SAAAlB,EAAAtC,EAAAma,GACD,IAAAuO,EAAA3iB,EAAAL,EAAA1F,GACA0oB,UAAAhjB,EAAA1F,GACAoD,EAAAd,EAAAtC,EAAAma,GACAuO,GAAApmB,IAAAoD,GAAAtC,EAAAsC,EAAA1F,EAAA0oB,IACCtlB,EAEDulB,EAAA,SAAA3kB,GACA,IAAA4kB,EAAAR,EAAApkB,GAAA2jB,EAAAvF,EAAA,WAEA,OADAwG,EAAA9I,GAAA9b,EACA4kB,GAGAC,EAAAP,GAAA,iBAAAlG,EAAA5U,SAAA,SAAAlL,GACA,uBAAAA,GACC,SAAAA,GACD,OAAAA,aAAA8f,GAGA1C,EAAA,SAAApd,EAAAtC,EAAAma,GAKA,OAJA7X,IAAAoD,GAAAga,EAAA2I,EAAAroB,EAAAma,GACAlX,EAAAX,GACAtC,EAAAmD,EAAAnD,GAAA,GACAiD,EAAAkX,GACAzV,EAAA0jB,EAAApoB,IACAma,EAAA9a,YAIAqF,EAAApC,EAAA2lB,IAAA3lB,EAAA2lB,GAAAjoB,KAAAsC,EAAA2lB,GAAAjoB,IAAA,GACAma,EAAAwN,EAAAxN,GAAsB9a,WAAAkG,EAAA,UAJtBb,EAAApC,EAAA2lB,IAAA7kB,EAAAd,EAAA2lB,EAAA1iB,EAAA,OACAjD,EAAA2lB,GAAAjoB,IAAA,GAIKyoB,EAAAnmB,EAAAtC,EAAAma,IACF/W,EAAAd,EAAAtC,EAAAma,IAEH2O,EAAA,SAAAxmB,EAAAX,GACAsB,EAAAX,GAKA,IAJA,IAGAtC,EAHA2K,EAAA+c,EAAA/lB,EAAAmE,EAAAnE,IACAlD,EAAA,EACAC,EAAAiM,EAAAlG,OAEA/F,EAAAD,GAAAihB,EAAApd,EAAAtC,EAAA2K,EAAAlM,KAAAkD,EAAA3B,IACA,OAAAsC,GAKAymB,EAAA,SAAA/oB,GACA,IAAAgpB,EAAA/J,EAAArgB,KAAAuG,KAAAnF,EAAAmD,EAAAnD,GAAA,IACA,QAAAmF,OAAAO,GAAAhB,EAAA0jB,EAAApoB,KAAA0E,EAAA2jB,EAAAroB,QACAgpB,IAAAtkB,EAAAS,KAAAnF,KAAA0E,EAAA0jB,EAAApoB,IAAA0E,EAAAS,KAAA8iB,IAAA9iB,KAAA8iB,GAAAjoB,KAAAgpB,IAEAC,EAAA,SAAA3mB,EAAAtC,GAGA,GAFAsC,EAAAwD,EAAAxD,GACAtC,EAAAmD,EAAAnD,GAAA,GACAsC,IAAAoD,IAAAhB,EAAA0jB,EAAApoB,IAAA0E,EAAA2jB,EAAAroB,GAAA,CACA,IAAAma,EAAApU,EAAAzD,EAAAtC,GAEA,OADAma,IAAAzV,EAAA0jB,EAAApoB,IAAA0E,EAAApC,EAAA2lB,IAAA3lB,EAAA2lB,GAAAjoB,KAAAma,EAAA9a,YAAA,GACA8a,IAEA+O,EAAA,SAAA5mB,GAKA,IAJA,IAGAtC,EAHAqiB,EAAA3Z,EAAA5C,EAAAxD,IACAoF,KACAjJ,EAAA,EAEA4jB,EAAA5d,OAAAhG,GACAiG,EAAA0jB,EAAApoB,EAAAqiB,EAAA5jB,OAAAuB,GAAAioB,GAAAjoB,GAAA6S,GAAAnL,EAAAC,KAAA3H,GACG,OAAA0H,GAEHyhB,EAAA,SAAA7mB,GAMA,IALA,IAIAtC,EAJAopB,EAAA9mB,IAAAoD,EACA2c,EAAA3Z,EAAA0gB,EAAAf,EAAAviB,EAAAxD,IACAoF,KACAjJ,EAAA,EAEA4jB,EAAA5d,OAAAhG,IACAiG,EAAA0jB,EAAApoB,EAAAqiB,EAAA5jB,OAAA2qB,IAAA1kB,EAAAgB,EAAA1F,IAAA0H,EAAAC,KAAAygB,EAAApoB,IACG,OAAA0H,GAIH4gB,IAYA1nB,GAXAwhB,EAAA,WACA,GAAAjd,gBAAAid,EAAA,MAAA7f,UAAA,gCACA,IAAAyB,EAAAjB,EAAAyD,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,GACA4N,EAAA,SAAAlQ,GACAyF,OAAAO,GAAAkK,EAAAhR,KAAAypB,EAAA3oB,GACAgF,EAAAS,KAAA8iB,IAAAvjB,EAAAS,KAAA8iB,GAAAjkB,KAAAmB,KAAA8iB,GAAAjkB,IAAA,GACAykB,EAAAtjB,KAAAnB,EAAAuB,EAAA,EAAA7F,KAGA,OADAwV,GAAA5D,GAAAmX,EAAA/iB,EAAA1B,GAAgEqM,cAAA,EAAA3D,IAAAkD,IAChE+Y,EAAA3kB,KAEA,gCACA,OAAAmB,KAAA2a,KAGAvW,EAAAlG,EAAA4lB,EACA3f,EAAAjG,EAAAqc,EACErhB,EAAQ,IAAgBgF,EAAAukB,EAAAvkB,EAAA6lB,EACxB7qB,EAAQ,KAAegF,EAAA0lB,EACvB1qB,EAAQ,KAAgBgF,EAAA8lB,EAE1BjU,IAAsB7W,EAAQ,KAC9BuC,EAAA8E,EAAA,uBAAAqjB,GAAA,GAGA5G,EAAA9e,EAAA,SAAArE,GACA,OAAA2pB,EAAA/f,EAAA5J,MAIA8B,IAAAS,EAAAT,EAAAqB,EAAArB,EAAAO,GAAAinB,GAA0D9oB,OAAA4iB,IAE1D,QAAAiH,EAAA,iHAGA7kB,MAAA,KAAA8Y,GAAA,EAAoB+L,EAAA5kB,OAAA6Y,IAAuB1U,EAAAygB,EAAA/L,OAE3C,QAAAgM,GAAAzU,EAAAjM,EAAA9F,OAAAic,GAAA,EAAoDuK,GAAA7kB,OAAAsa,IAA6B0I,EAAA6B,GAAAvK,OAEjFje,IAAAW,EAAAX,EAAAO,GAAAinB,EAAA,UAEAiB,IAAA,SAAAvpB,GACA,OAAA0E,EAAAyjB,EAAAnoB,GAAA,IACAmoB,EAAAnoB,GACAmoB,EAAAnoB,GAAAoiB,EAAApiB,IAGAwpB,OAAA,SAAAZ,GACA,IAAAC,EAAAD,GAAA,MAAArmB,UAAAqmB,EAAA,qBACA,QAAA5oB,KAAAmoB,EAAA,GAAAA,EAAAnoB,KAAA4oB,EAAA,OAAA5oB,GAEAypB,UAAA,WAA0BnY,GAAA,GAC1BoY,UAAA,WAA0BpY,GAAA,KAG1BxQ,IAAAW,EAAAX,EAAAO,GAAAinB,EAAA,UAEAvoB,OA/FA,SAAAuC,EAAAX,GACA,YAAAK,IAAAL,EAAAgmB,EAAArlB,GAAAwmB,EAAAnB,EAAArlB,GAAAX,IAgGAvC,eAAAsgB,EAEA4C,iBAAAwG,EAEA9iB,yBAAAijB,EAEAjU,oBAAAkU,EAEApS,sBAAAqS,IAIAtB,GAAA/mB,IAAAW,EAAAX,EAAAO,IAAAinB,GAAAd,EAAA,WACA,IAAA/lB,EAAA2gB,IAIA,gBAAA2F,GAAAtmB,KAA2D,MAA3DsmB,GAAoDvkB,EAAA/B,KAAe,MAAAsmB,EAAA5oB,OAAAsC,OAClE,QACDumB,UAAA,SAAA1lB,GAIA,IAHA,IAEAqnB,EAAAC,EAFA1K,GAAA5c,GACA7D,EAAA,EAEA+H,UAAA/B,OAAAhG,GAAAygB,EAAAvX,KAAAnB,UAAA/H,MAEA,GADAmrB,EAAAD,EAAAzK,EAAA,IACA7c,EAAAsnB,SAAA3nB,IAAAM,KAAAumB,EAAAvmB,GAMA,OALAwW,EAAA6Q,OAAA,SAAA3pB,EAAAN,GAEA,GADA,mBAAAkqB,IAAAlqB,EAAAkqB,EAAAhrB,KAAAuG,KAAAnF,EAAAN,KACAmpB,EAAAnpB,GAAA,OAAAA,IAEAwf,EAAA,GAAAyK,EACA5B,EAAAxhB,MAAAshB,EAAA3I,MAKAkD,EAAA,UAAA8F,IAAoC7pB,EAAQ,GAARA,CAAiB+jB,EAAA,UAAA8F,EAAA9F,EAAA,UAAAra,SAErD0P,EAAA2K,EAAA,UAEA3K,EAAAhV,KAAA,WAEAgV,EAAAhX,EAAAqnB,KAAA,4BCxOA,IAAArJ,EAAcpgB,EAAQ,IACtBqgB,EAAWrgB,EAAQ,KACnBwH,EAAUxH,EAAQ,KAClBG,EAAAD,QAAA,SAAA+D,GACA,IAAAoF,EAAA+W,EAAAnc,GACA0c,EAAAN,EAAArb,EACA,GAAA2b,EAKA,IAJA,IAGAhf,EAHA6pB,EAAA7K,EAAA1c,GACA2c,EAAApZ,EAAAxC,EACA5E,EAAA,EAEAorB,EAAAplB,OAAAhG,GAAAwgB,EAAArgB,KAAA0D,EAAAtC,EAAA6pB,EAAAprB,OAAAiJ,EAAAC,KAAA3H,GACG,OAAA0H,oBCbH,IAAA5G,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,UAA8B1B,OAAS1B,EAAQ,uBCF/C,IAAAyC,EAAczC,EAAQ,GAEtByC,IAAAW,EAAAX,EAAAO,GAAiChD,EAAQ,IAAgB,UAAce,eAAiBf,EAAQ,IAAcgF,qBCF9G,IAAAvC,EAAczC,EAAQ,GAEtByC,IAAAW,EAAAX,EAAAO,GAAiChD,EAAQ,IAAgB,UAAcikB,iBAAmBjkB,EAAQ,wBCDlG,IAAAyH,EAAgBzH,EAAQ,IACxB4qB,EAAgC5qB,EAAQ,IAAgBgF,EAExDhF,EAAQ,GAARA,CAAuB,sCACvB,gBAAAiE,EAAAtC,GACA,OAAAipB,EAAAnjB,EAAAxD,GAAAtC,uBCLA,IAAAwF,EAAenH,EAAQ,IACvByrB,EAAsBzrB,EAAQ,IAE9BA,EAAQ,GAARA,CAAuB,4BACvB,gBAAAiE,GACA,OAAAwnB,EAAAtkB,EAAAlD,wBCLA,IAAAkD,EAAenH,EAAQ,IACvBwW,EAAYxW,EAAQ,IAEpBA,EAAQ,GAARA,CAAuB,kBACvB,gBAAAiE,GACA,OAAAuS,EAAArP,EAAAlD,wBCLAjE,EAAQ,GAARA,CAAuB,iCACvB,OAASA,EAAQ,KAAoBgF,qBCDrC,IAAAhB,EAAehE,EAAQ,IACvBgV,EAAWhV,EAAQ,IAASoV,SAE5BpV,EAAQ,GAARA,CAAuB,kBAAA0rB,GACvB,gBAAAznB,GACA,OAAAynB,GAAA1nB,EAAAC,GAAAynB,EAAA1W,EAAA/Q,0BCLA,IAAAD,EAAehE,EAAQ,IACvBgV,EAAWhV,EAAQ,IAASoV,SAE5BpV,EAAQ,GAARA,CAAuB,gBAAA2rB,GACvB,gBAAA1nB,GACA,OAAA0nB,GAAA3nB,EAAAC,GAAA0nB,EAAA3W,EAAA/Q,0BCLA,IAAAD,EAAehE,EAAQ,IACvBgV,EAAWhV,EAAQ,IAASoV,SAE5BpV,EAAQ,GAARA,CAAuB,6BAAA4rB,GACvB,gBAAA3nB,GACA,OAAA2nB,GAAA5nB,EAAAC,GAAA2nB,EAAA5W,EAAA/Q,0BCLA,IAAAD,EAAehE,EAAQ,IAEvBA,EAAQ,GAARA,CAAuB,oBAAA6rB,GACvB,gBAAA5nB,GACA,OAAAD,EAAAC,MAAA4nB,KAAA5nB,uBCJA,IAAAD,EAAehE,EAAQ,IAEvBA,EAAQ,GAARA,CAAuB,oBAAA8rB,GACvB,gBAAA7nB,GACA,OAAAD,EAAAC,MAAA6nB,KAAA7nB,uBCJA,IAAAD,EAAehE,EAAQ,IAEvBA,EAAQ,GAARA,CAAuB,wBAAA+rB,GACvB,gBAAA9nB,GACA,QAAAD,EAAAC,MAAA8nB,KAAA9nB,wBCJA,IAAAxB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAAX,EAAAO,EAAA,UAA0Cud,OAASvgB,EAAQ,wBCF3D,IAAAyC,EAAczC,EAAQ,GACtByC,IAAAW,EAAA,UAA8B2Y,GAAK/b,EAAQ,sBCD3CG,EAAAD,QAAAY,OAAAib,IAAA,SAAAQ,EAAAyP,GAEA,OAAAzP,IAAAyP,EAAA,IAAAzP,GAAA,EAAAA,GAAA,EAAAyP,EAAAzP,MAAAyP,uBCFA,IAAAvpB,EAAczC,EAAQ,GACtByC,IAAAW,EAAA,UAA8B+Y,eAAiBnc,EAAQ,KAAcqO,oCCArE,IAAAlE,EAAcnK,EAAQ,IACtBiG,KACAA,EAAKjG,EAAQ,GAARA,CAAgB,oBACrBiG,EAAA,kBACEjG,EAAQ,GAARA,CAAqBc,OAAAkB,UAAA,sBACvB,iBAAAmI,EAAArD,MAAA,MACG,oBCPH,IAAArE,EAAczC,EAAQ,GAEtByC,IAAAa,EAAA,YAAgC1B,KAAO5B,EAAQ,wBCH/C,IAAA+E,EAAS/E,EAAQ,IAAcgF,EAC/BinB,EAAAroB,SAAA5B,UACAkqB,EAAA,wBACA,SAGAD,GAAkBjsB,EAAQ,KAAgB+E,EAAAknB,EAH1C,QAIAja,cAAA,EACA/Q,IAAA,WACA,IACA,UAAA6F,MAAAqlB,MAAAD,GAAA,GACK,MAAA1nB,GACL,2CCXA,IAAAR,EAAehE,EAAQ,IACvBsH,EAAqBtH,EAAQ,IAC7BosB,EAAmBpsB,EAAQ,GAARA,CAAgB,eACnCqsB,EAAAzoB,SAAA5B,UAEAoqB,KAAAC,GAAsCrsB,EAAQ,IAAcgF,EAAAqnB,EAAAD,GAAkC/qB,MAAA,SAAA4D,GAC9F,sBAAA6B,OAAA9C,EAAAiB,GAAA,SACA,IAAAjB,EAAA8C,KAAA9E,WAAA,OAAAiD,aAAA6B,KAEA,KAAA7B,EAAAqC,EAAArC,IAAA,GAAA6B,KAAA9E,YAAAiD,EAAA,SACA,6BCXA,IAAAxC,EAAczC,EAAQ,GACtBwkB,EAAgBxkB,EAAQ,KAExByC,IAAAS,EAAAT,EAAAO,GAAAyhB,UAAAD,IAA0DC,SAAAD,qBCH1D,IAAA/hB,EAAczC,EAAQ,GACtB8kB,EAAkB9kB,EAAQ,KAE1ByC,IAAAS,EAAAT,EAAAO,GAAA+hB,YAAAD,IAA8DC,WAAAD,kCCF9D,IAAA1iB,EAAapC,EAAQ,IACrBqG,EAAUrG,EAAQ,IAClByX,EAAUzX,EAAQ,IAClBqZ,EAAwBrZ,EAAQ,KAChC8E,EAAkB9E,EAAQ,IAC1BuF,EAAYvF,EAAQ,IACpBqK,EAAWrK,EAAQ,IAAgBgF,EACnC0C,EAAW1H,EAAQ,IAAgBgF,EACnCD,EAAS/E,EAAQ,IAAcgF,EAC/B0f,EAAY1kB,EAAQ,KAAgBuY,KAEpC+T,EAAAlqB,EAAA,OACAoQ,EAAA8Z,EACAzc,EAAAyc,EAAAtqB,UAEAuqB,EALA,UAKA9U,EAAqBzX,EAAQ,GAARA,CAA0B6P,IAC/C2c,EAAA,SAAA3mB,OAAA7D,UAGAyqB,EAAA,SAAAC,GACA,IAAAzoB,EAAAa,EAAA4nB,GAAA,GACA,oBAAAzoB,KAAAmC,OAAA,GAEA,IACAumB,EAAA9H,EAAA+H,EADAC,GADA5oB,EAAAuoB,EAAAvoB,EAAAsU,OAAAmM,EAAAzgB,EAAA,IACAkd,WAAA,GAEA,QAAA0L,GAAA,KAAAA,GAEA,SADAF,EAAA1oB,EAAAkd,WAAA,KACA,MAAAwL,EAAA,OAAAzO,SACK,QAAA2O,EAAA,CACL,OAAA5oB,EAAAkd,WAAA,IACA,gBAAA0D,EAAA,EAAoC+H,EAAA,GAAc,MAClD,iBAAA/H,EAAA,EAAqC+H,EAAA,GAAc,MACnD,eAAA3oB,EAEA,QAAA6oB,EAAAC,EAAA9oB,EAAAoE,MAAA,GAAAjI,EAAA,EAAAC,EAAA0sB,EAAA3mB,OAAoEhG,EAAAC,EAAOD,IAI3E,IAHA0sB,EAAAC,EAAA5L,WAAA/gB,IAGA,IAAA0sB,EAAAF,EAAA,OAAA1O,IACO,OAAAuG,SAAAsI,EAAAlI,IAEJ,OAAA5gB,GAGH,IAAAqoB,EAAA,UAAAA,EAAA,QAAAA,EAAA,SACAA,EAAA,SAAAjrB,GACA,IAAA4C,EAAAkE,UAAA/B,OAAA,IAAA/E,EACA2G,EAAAlB,KACA,OAAAkB,aAAAskB,IAEAC,EAAAhnB,EAAA,WAA0CsK,EAAAnG,QAAAnJ,KAAAyH,KAxC1C,UAwCsEyP,EAAAzP,IACtEqR,EAAA,IAAA7G,EAAAia,EAAAxoB,IAAA+D,EAAAskB,GAAAG,EAAAxoB,IAEA,QAMAtC,EANA2K,EAAkBtM,EAAQ,IAAgBqK,EAAAmI,GAAA,6KAM1CrM,MAAA,KAAA8Y,EAAA,EAA2B3S,EAAAlG,OAAA6Y,EAAiBA,IAC5C5Y,EAAAmM,EAAA7Q,EAAA2K,EAAA2S,MAAA5Y,EAAAimB,EAAA3qB,IACAoD,EAAAunB,EAAA3qB,EAAA+F,EAAA8K,EAAA7Q,IAGA2qB,EAAAtqB,UAAA6N,EACAA,EAAAtI,YAAA+kB,EACEtsB,EAAQ,GAARA,CAAqBoC,EAxDvB,SAwDuBkqB,kCClEvB,IAAA7pB,EAAczC,EAAQ,GACtBoF,EAAgBpF,EAAQ,IACxBgtB,EAAmBhtB,EAAQ,KAC3BitB,EAAajtB,EAAQ,KACrBktB,EAAA,GAAAC,QACA3jB,EAAApF,KAAAoF,MACAsJ,GAAA,aACAsa,EAAA,wCAGAC,EAAA,SAAAxrB,EAAApB,GAGA,IAFA,IAAAL,GAAA,EACAktB,EAAA7sB,IACAL,EAAA,GACAktB,GAAAzrB,EAAAiR,EAAA1S,GACA0S,EAAA1S,GAAAktB,EAAA,IACAA,EAAA9jB,EAAA8jB,EAAA,MAGAC,EAAA,SAAA1rB,GAGA,IAFA,IAAAzB,EAAA,EACAK,EAAA,IACAL,GAAA,GACAK,GAAAqS,EAAA1S,GACA0S,EAAA1S,GAAAoJ,EAAA/I,EAAAoB,GACApB,IAAAoB,EAAA,KAGA2rB,EAAA,WAGA,IAFA,IAAAptB,EAAA,EACA+B,EAAA,KACA/B,GAAA,GACA,QAAA+B,GAAA,IAAA/B,GAAA,IAAA0S,EAAA1S,GAAA,CACA,IAAAkB,EAAAuE,OAAAiN,EAAA1S,IACA+B,EAAA,KAAAA,EAAAb,EAAAa,EAAA8qB,EAAA1sB,KA1BA,IA0BA,EAAAe,EAAA8E,QAAA9E,EAEG,OAAAa,GAEHgb,EAAA,SAAAZ,EAAA1a,EAAA4rB,GACA,WAAA5rB,EAAA4rB,EAAA5rB,EAAA,KAAAsb,EAAAZ,EAAA1a,EAAA,EAAA4rB,EAAAlR,GAAAY,EAAAZ,IAAA1a,EAAA,EAAA4rB,IAeAhrB,IAAAa,EAAAb,EAAAO,KAAAkqB,IACA,eAAAC,QAAA,IACA,SAAAA,QAAA,IACA,eAAAA,QAAA,IACA,4CAAAA,QAAA,MACMntB,EAAQ,GAARA,CAAkB,WAExBktB,EAAA3sB,YACC,UACD4sB,QAAA,SAAAO,GACA,IAIAlpB,EAAAmpB,EAAA1O,EAAAyB,EAJAnE,EAAAyQ,EAAAlmB,KAAAsmB,GACApoB,EAAAI,EAAAsoB,GACAvrB,EAAA,GACA3B,EA3DA,IA6DA,GAAAwE,EAAA,GAAAA,EAAA,SAAAmG,WAAAiiB,GAEA,GAAA7Q,KAAA,YACA,GAAAA,IAAA,MAAAA,GAAA,YAAA1W,OAAA0W,GAKA,GAJAA,EAAA,IACApa,EAAA,IACAoa,MAEAA,EAAA,MAKA,GAHAoR,GADAnpB,EArCA,SAAA+X,GAGA,IAFA,IAAA1a,EAAA,EACA+rB,EAAArR,EACAqR,GAAA,MACA/rB,GAAA,GACA+rB,GAAA,KAEA,KAAAA,GAAA,GACA/rB,GAAA,EACA+rB,GAAA,EACG,OAAA/rB,EA2BHub,CAAAb,EAAAY,EAAA,aACA,EAAAZ,EAAAY,EAAA,GAAA3Y,EAAA,GAAA+X,EAAAY,EAAA,EAAA3Y,EAAA,GACAmpB,GAAA,kBACAnpB,EAAA,GAAAA,GACA,GAGA,IAFA6oB,EAAA,EAAAM,GACA1O,EAAAja,EACAia,GAAA,GACAoO,EAAA,OACApO,GAAA,EAIA,IAFAoO,EAAAlQ,EAAA,GAAA8B,EAAA,MACAA,EAAAza,EAAA,EACAya,GAAA,IACAsO,EAAA,OACAtO,GAAA,GAEAsO,EAAA,GAAAtO,GACAoO,EAAA,KACAE,EAAA,GACA/sB,EAAAgtB,SAEAH,EAAA,EAAAM,GACAN,EAAA,IAAA7oB,EAAA,GACAhE,EAAAgtB,IAAAP,EAAA1sB,KA9FA,IA8FAyE,GAQK,OAHLxE,EAFAwE,EAAA,EAEA7C,IADAue,EAAAlgB,EAAA4F,SACApB,EAAA,KAAAioB,EAAA1sB,KAnGA,IAmGAyE,EAAA0b,GAAAlgB,IAAA6H,MAAA,EAAAqY,EAAA1b,GAAA,IAAAxE,EAAA6H,MAAAqY,EAAA1b,IAEA7C,EAAA3B,mCC7GA,IAAAiC,EAAczC,EAAQ,GACtBmpB,EAAanpB,EAAQ,IACrBgtB,EAAmBhtB,EAAQ,KAC3B6tB,EAAA,GAAAC,YAEArrB,IAAAa,EAAAb,EAAAO,GAAAmmB,EAAA,WAEA,YAAA0E,EAAAttB,KAAA,OAAAoD,OACCwlB,EAAA,WAED0E,EAAAttB,YACC,UACDutB,YAAA,SAAAC,GACA,IAAA/lB,EAAAglB,EAAAlmB,KAAA,6CACA,YAAAnD,IAAAoqB,EAAAF,EAAAttB,KAAAyH,GAAA6lB,EAAAttB,KAAAyH,EAAA+lB,uBCdA,IAAAtrB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,UAA8BqlB,QAAArkB,KAAA+Y,IAAA,0BCF9B,IAAA1a,EAAczC,EAAQ,GACtBguB,EAAgBhuB,EAAQ,IAAWilB,SAEnCxiB,IAAAW,EAAA,UACA6hB,SAAA,SAAAhhB,GACA,uBAAAA,GAAA+pB,EAAA/pB,uBCLA,IAAAxB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,UAA8B6qB,UAAYjuB,EAAQ,wBCFlD,IAAAyC,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,UACAqG,MAAA,SAAA6e,GAEA,OAAAA,yBCLA,IAAA7lB,EAAczC,EAAQ,GACtBiuB,EAAgBjuB,EAAQ,KACxBkd,EAAA9Y,KAAA8Y,IAEAza,IAAAW,EAAA,UACA8qB,cAAA,SAAA5F,GACA,OAAA2F,EAAA3F,IAAApL,EAAAoL,IAAA,qCCNA,IAAA7lB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,UAA8B+qB,iBAAA,oCCF9B,IAAA1rB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,UAA8BgrB,kBAAA,oCCH9B,IAAA3rB,EAAczC,EAAQ,GACtB8kB,EAAkB9kB,EAAQ,KAE1ByC,IAAAW,EAAAX,EAAAO,GAAAqrB,OAAAtJ,YAAAD,GAAA,UAA+EC,WAAAD,qBCH/E,IAAAriB,EAAczC,EAAQ,GACtBwkB,EAAgBxkB,EAAQ,KAExByC,IAAAW,EAAAX,EAAAO,GAAAqrB,OAAA5J,UAAAD,GAAA,UAA2EC,SAAAD,qBCF3E,IAAA/hB,EAAczC,EAAQ,GACtBklB,EAAYllB,EAAQ,KACpBsuB,EAAAlqB,KAAAkqB,KACAC,EAAAnqB,KAAAoqB,MAEA/rB,IAAAW,EAAAX,EAAAO,IAAAurB,GAEA,KAAAnqB,KAAAoF,MAAA+kB,EAAAF,OAAAI,aAEAF,EAAAvR,WACA,QACAwR,MAAA,SAAAjS,GACA,OAAAA,MAAA,EAAA2B,IAAA3B,EAAA,kBACAnY,KAAAgZ,IAAAb,GAAAnY,KAAAiZ,IACA6H,EAAA3I,EAAA,EAAA+R,EAAA/R,EAAA,GAAA+R,EAAA/R,EAAA,wBCdA,IAAA9Z,EAAczC,EAAQ,GACtB0uB,EAAAtqB,KAAAuqB,MAOAlsB,IAAAW,EAAAX,EAAAO,IAAA0rB,GAAA,EAAAA,EAAA,cAAyEC,MALzE,SAAAA,EAAApS,GACA,OAAA0I,SAAA1I,OAAA,GAAAA,IAAA,GAAAoS,GAAApS,GAAAnY,KAAAgZ,IAAAb,EAAAnY,KAAAkqB,KAAA/R,IAAA,IAAAA,sBCJA,IAAA9Z,EAAczC,EAAQ,GACtB4uB,EAAAxqB,KAAAyqB,MAGApsB,IAAAW,EAAAX,EAAAO,IAAA4rB,GAAA,EAAAA,GAAA,cACAC,MAAA,SAAAtS,GACA,WAAAA,QAAAnY,KAAAgZ,KAAA,EAAAb,IAAA,EAAAA,IAAA,sBCNA,IAAA9Z,EAAczC,EAAQ,GACtBsc,EAAWtc,EAAQ,KAEnByC,IAAAW,EAAA,QACA0rB,KAAA,SAAAvS,GACA,OAAAD,EAAAC,MAAAnY,KAAA+Y,IAAA/Y,KAAA8Y,IAAAX,GAAA,yBCLA,IAAA9Z,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QACA2rB,MAAA,SAAAxS,GACA,OAAAA,KAAA,MAAAnY,KAAAoF,MAAApF,KAAAgZ,IAAAb,EAAA,IAAAnY,KAAA4qB,OAAA,uBCJA,IAAAvsB,EAAczC,EAAQ,GACtB8C,EAAAsB,KAAAtB,IAEAL,IAAAW,EAAA,QACA6rB,KAAA,SAAA1S,GACA,OAAAzZ,EAAAyZ,MAAAzZ,GAAAyZ,IAAA,sBCLA,IAAA9Z,EAAczC,EAAQ,GACtBwc,EAAaxc,EAAQ,KAErByC,IAAAW,EAAAX,EAAAO,GAAAwZ,GAAApY,KAAAqY,OAAA,QAAiEA,MAAAD,qBCHjE,IAAA/Z,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QAA4BylB,OAAS7oB,EAAQ,wBCF7C,IAAAyC,EAAczC,EAAQ,GACtBkd,EAAA9Y,KAAA8Y,IAEAza,IAAAW,EAAA,QACA8rB,MAAA,SAAAC,EAAAC,GAMA,IALA,IAIAvnB,EAAAwnB,EAJAC,EAAA,EACAlvB,EAAA,EACAgP,EAAAjH,UAAA/B,OACAmpB,EAAA,EAEAnvB,EAAAgP,GAEAmgB,GADA1nB,EAAAqV,EAAA/U,UAAA/H,QAGAkvB,KADAD,EAAAE,EAAA1nB,GACAwnB,EAAA,EACAE,EAAA1nB,GAGAynB,GAFOznB,EAAA,GACPwnB,EAAAxnB,EAAA0nB,GACAF,EACOxnB,EAEP,OAAA0nB,IAAAvS,QAAAuS,EAAAnrB,KAAAkqB,KAAAgB,uBCrBA,IAAA7sB,EAAczC,EAAQ,GACtBwvB,EAAAprB,KAAAqrB,KAGAhtB,IAAAW,EAAAX,EAAAO,EAAgChD,EAAQ,GAARA,CAAkB,WAClD,UAAAwvB,EAAA,kBAAAA,EAAAppB,SACC,QACDqpB,KAAA,SAAAlT,EAAAyP,GACA,IACA0D,GAAAnT,EACAoT,GAAA3D,EACA4D,EAHA,MAGAF,EACAG,EAJA,MAIAF,EACA,SAAAC,EAAAC,IALA,MAKAH,IAAA,IAAAG,EAAAD,GALA,MAKAD,IAAA,iCCbA,IAAAltB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QACA0sB,MAAA,SAAAvT,GACA,OAAAnY,KAAAgZ,IAAAb,GAAAnY,KAAA2rB,2BCJA,IAAAttB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QAA4B8hB,MAAQllB,EAAQ,wBCF5C,IAAAyC,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QACA4sB,KAAA,SAAAzT,GACA,OAAAnY,KAAAgZ,IAAAb,GAAAnY,KAAAiZ,wBCJA,IAAA5a,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QAA4BkZ,KAAOtc,EAAQ,wBCF3C,IAAAyC,EAAczC,EAAQ,GACtByc,EAAYzc,EAAQ,KACpB8C,EAAAsB,KAAAtB,IAGAL,IAAAW,EAAAX,EAAAO,EAAgChD,EAAQ,GAARA,CAAkB,WAClD,eAAAoE,KAAA6rB,MAAA,SACC,QACDA,KAAA,SAAA1T,GACA,OAAAnY,KAAA8Y,IAAAX,MAAA,GACAE,EAAAF,GAAAE,GAAAF,IAAA,GACAzZ,EAAAyZ,EAAA,GAAAzZ,GAAAyZ,EAAA,KAAAnY,KAAAumB,EAAA,uBCXA,IAAAloB,EAAczC,EAAQ,GACtByc,EAAYzc,EAAQ,KACpB8C,EAAAsB,KAAAtB,IAEAL,IAAAW,EAAA,QACA8sB,KAAA,SAAA3T,GACA,IAAApX,EAAAsX,EAAAF,MACAtU,EAAAwU,GAAAF,GACA,OAAApX,GAAA6X,IAAA,EAAA/U,GAAA+U,KAAA,GAAA7X,EAAA8C,IAAAnF,EAAAyZ,GAAAzZ,GAAAyZ,wBCRA,IAAA9Z,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QACA+sB,MAAA,SAAAlsB,GACA,OAAAA,EAAA,EAAAG,KAAAoF,MAAApF,KAAAmF,MAAAtF,uBCLA,IAAAxB,EAAczC,EAAQ,GACtBkK,EAAsBlK,EAAQ,IAC9BowB,EAAAvqB,OAAAuqB,aACAC,EAAAxqB,OAAAyqB,cAGA7tB,IAAAW,EAAAX,EAAAO,KAAAqtB,GAAA,GAAAA,EAAAjqB,QAAA,UAEAkqB,cAAA,SAAA/T,GAKA,IAJA,IAGAuQ,EAHA3jB,KACAiG,EAAAjH,UAAA/B,OACAhG,EAAA,EAEAgP,EAAAhP,GAAA,CAEA,GADA0sB,GAAA3kB,UAAA/H,KACA8J,EAAA4iB,EAAA,WAAAA,EAAA,MAAA3hB,WAAA2hB,EAAA,8BACA3jB,EAAAG,KAAAwjB,EAAA,MACAsD,EAAAtD,GACAsD,EAAA,QAAAtD,GAAA,YAAAA,EAAA,aAEK,OAAA3jB,EAAAtC,KAAA,wBCpBL,IAAApE,EAAczC,EAAQ,GACtByH,EAAgBzH,EAAQ,IACxBuI,EAAevI,EAAQ,IAEvByC,IAAAW,EAAA,UAEAmtB,IAAA,SAAAC,GAMA,IALA,IAAAC,EAAAhpB,EAAA+oB,EAAAD,KACA7e,EAAAnJ,EAAAkoB,EAAArqB,QACAgJ,EAAAjH,UAAA/B,OACA+C,KACA/I,EAAA,EACAsR,EAAAtR,GACA+I,EAAAG,KAAAzD,OAAA4qB,EAAArwB,OACAA,EAAAgP,GAAAjG,EAAAG,KAAAzD,OAAAsC,UAAA/H,KACK,OAAA+I,EAAAtC,KAAA,qCCbL7G,EAAQ,IAARA,CAAwB,gBAAA0kB,GACxB,kBACA,OAAAA,EAAA5d,KAAA,oCCHA,IAAA4pB,EAAU1wB,EAAQ,IAARA,EAAsB,GAGhCA,EAAQ,IAARA,CAAwB6F,OAAA,kBAAA0b,GACxBza,KAAA0Q,GAAA3R,OAAA0b,GACAza,KAAA0a,GAAA,GAEC,WACD,IAEAmP,EAFA1rB,EAAA6B,KAAA0Q,GACApO,EAAAtC,KAAA0a,GAEA,OAAApY,GAAAnE,EAAAmB,QAAiC/E,WAAAsC,EAAA8L,MAAA,IACjCkhB,EAAAD,EAAAzrB,EAAAmE,GACAtC,KAAA0a,IAAAmP,EAAAvqB,QACU/E,MAAAsvB,EAAAlhB,MAAA,oCCdV,IAAAhN,EAAczC,EAAQ,GACtB0wB,EAAU1wB,EAAQ,IAARA,EAAsB,GAChCyC,IAAAa,EAAA,UAEAstB,YAAA,SAAA1P,GACA,OAAAwP,EAAA5pB,KAAAoa,oCCJA,IAAAze,EAAczC,EAAQ,GACtBuI,EAAevI,EAAQ,IACvB6wB,EAAc7wB,EAAQ,KAEtB8wB,EAAA,YAEAruB,IAAAa,EAAAb,EAAAO,EAAgChD,EAAQ,IAARA,CAHhC,YAG4D,UAC5D+wB,SAAA,SAAApU,GACA,IAAA3U,EAAA6oB,EAAA/pB,KAAA6V,EALA,YAMAqU,EAAA7oB,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,EACA+N,EAAAnJ,EAAAP,EAAA5B,QACA8K,OAAAvN,IAAAqtB,EAAAtf,EAAAtN,KAAAiB,IAAAkD,EAAAyoB,GAAAtf,GACAuf,EAAAprB,OAAA8W,GACA,OAAAmU,EACAA,EAAAvwB,KAAAyH,EAAAipB,EAAA/f,GACAlJ,EAAAK,MAAA6I,EAAA+f,EAAA7qB,OAAA8K,KAAA+f,mCCfA,IAAAxuB,EAAczC,EAAQ,GACtB6wB,EAAc7wB,EAAQ,KAGtByC,IAAAa,EAAAb,EAAAO,EAAgChD,EAAQ,IAARA,CAFhC,YAE4D,UAC5DyQ,SAAA,SAAAkM,GACA,SAAAkU,EAAA/pB,KAAA6V,EAJA,YAKApM,QAAAoM,EAAAxU,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,uBCTA,IAAAlB,EAAczC,EAAQ,GAEtByC,IAAAa,EAAA,UAEA2pB,OAAUjtB,EAAQ,qCCFlB,IAAAyC,EAAczC,EAAQ,GACtBuI,EAAevI,EAAQ,IACvB6wB,EAAc7wB,EAAQ,KAEtBkxB,EAAA,cAEAzuB,IAAAa,EAAAb,EAAAO,EAAgChD,EAAQ,IAARA,CAHhC,cAG4D,UAC5DmxB,WAAA,SAAAxU,GACA,IAAA3U,EAAA6oB,EAAA/pB,KAAA6V,EALA,cAMAvT,EAAAb,EAAAnE,KAAAiB,IAAA8C,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,EAAAqE,EAAA5B,SACA6qB,EAAAprB,OAAA8W,GACA,OAAAuU,EACAA,EAAA3wB,KAAAyH,EAAAipB,EAAA7nB,GACApB,EAAAK,MAAAe,IAAA6nB,EAAA7qB,UAAA6qB,mCCbAjxB,EAAQ,GAARA,CAAwB,kBAAAyF,GACxB,gBAAA9E,GACA,OAAA8E,EAAAqB,KAAA,WAAAnG,oCCFAX,EAAQ,GAARA,CAAwB,eAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,8CCFA9G,EAAQ,GAARA,CAAwB,iBAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,gDCFA9G,EAAQ,GAARA,CAAwB,gBAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,4CCFA9G,EAAQ,GAARA,CAAwB,iBAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,6CCFA9G,EAAQ,GAARA,CAAwB,qBAAAyF,GACxB,gBAAA2rB,GACA,OAAA3rB,EAAAqB,KAAA,eAAAsqB,oCCFApxB,EAAQ,GAARA,CAAwB,oBAAAyF,GACxB,gBAAA4rB,GACA,OAAA5rB,EAAAqB,KAAA,cAAAuqB,oCCFArxB,EAAQ,GAARA,CAAwB,mBAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,4CCFA9G,EAAQ,GAARA,CAAwB,gBAAAyF,GACxB,gBAAA6rB,GACA,OAAA7rB,EAAAqB,KAAA,WAAAwqB,oCCFAtxB,EAAQ,GAARA,CAAwB,iBAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,gDCFA9G,EAAQ,GAARA,CAAwB,kBAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,iDCFA9G,EAAQ,GAARA,CAAwB,eAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,8CCFA9G,EAAQ,GAARA,CAAwB,eAAAyF,GACxB,kBACA,OAAAA,EAAAqB,KAAA,iCCHA,IAAArE,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,QAA4B0f,IAAA,WAAmB,WAAAyO,MAAAC,2CCF/C,IAAA/uB,EAAczC,EAAQ,GACtBmH,EAAenH,EAAQ,IACvB8E,EAAkB9E,EAAQ,IAE1ByC,IAAAa,EAAAb,EAAAO,EAAgChD,EAAQ,GAARA,CAAkB,WAClD,kBAAAuxB,KAAArT,KAAAuT,UAC4E,IAA5EF,KAAAvvB,UAAAyvB,OAAAlxB,MAAmCmxB,YAAA,WAA2B,cAC7D,QAEDD,OAAA,SAAA9vB,GACA,IAAAsD,EAAAkC,EAAAL,MACA6qB,EAAA7sB,EAAAG,GACA,uBAAA0sB,GAAA1M,SAAA0M,GAAA1sB,EAAAysB,cAAA,yBCZA,IAAAjvB,EAAczC,EAAQ,GACtB0xB,EAAkB1xB,EAAQ,KAG1ByC,IAAAa,EAAAb,EAAAO,GAAAuuB,KAAAvvB,UAAA0vB,iBAAA,QACAA,8CCJA,IAAAnsB,EAAYvF,EAAQ,IACpBwxB,EAAAD,KAAAvvB,UAAAwvB,QACAI,EAAAL,KAAAvvB,UAAA0vB,YAEAG,EAAA,SAAAC,GACA,OAAAA,EAAA,EAAAA,EAAA,IAAAA,GAIA3xB,EAAAD,QAAAqF,EAAA,WACA,kCAAAqsB,EAAArxB,KAAA,IAAAgxB,MAAA,aACChsB,EAAA,WACDqsB,EAAArxB,KAAA,IAAAgxB,KAAArT,QACC,WACD,IAAA+G,SAAAuM,EAAAjxB,KAAAuG,OAAA,MAAAqE,WAAA,sBACA,IAAAzK,EAAAoG,KACAklB,EAAAtrB,EAAAqxB,iBACAvxB,EAAAE,EAAAsxB,qBACA7vB,EAAA6pB,EAAA,MAAAA,EAAA,YACA,OAAA7pB,GAAA,QAAAiC,KAAA8Y,IAAA8O,IAAA3jB,MAAAlG,GAAA,MACA,IAAA0vB,EAAAnxB,EAAAuxB,cAAA,OAAAJ,EAAAnxB,EAAAwxB,cACA,IAAAL,EAAAnxB,EAAAyxB,eAAA,IAAAN,EAAAnxB,EAAA0xB,iBACA,IAAAP,EAAAnxB,EAAA2xB,iBAAA,KAAA7xB,EAAA,GAAAA,EAAA,IAAAqxB,EAAArxB,IAAA,KACCoxB,mBCzBD,IAAAU,EAAAf,KAAAvvB,UAGAuE,EAAA+rB,EAAA,SACAd,EAAAc,EAAAd,QACA,IAAAD,KAAArT,KAAA,IAJA,gBAKEle,EAAQ,GAARA,CAAqBsyB,EAJvB,WAIuB,WACvB,IAAAjxB,EAAAmwB,EAAAjxB,KAAAuG,MAEA,OAAAzF,KAAAkF,EAAAhG,KAAAuG,MARA,kCCDA,IAAA+iB,EAAmB7pB,EAAQ,GAARA,CAAgB,eACnC6P,EAAA0hB,KAAAvvB,UAEA6nB,KAAAha,GAA8B7P,EAAQ,GAARA,CAAiB6P,EAAAga,EAAuB7pB,EAAQ,oCCF9E,IAAA4E,EAAe5E,EAAQ,IACvB8E,EAAkB9E,EAAQ,IAG1BG,EAAAD,QAAA,SAAAqyB,GACA,cAAAA,GAHA,WAGAA,GAAA,YAAAA,EAAA,MAAAruB,UAAA,kBACA,OAAAY,EAAAF,EAAAkC,MAJA,UAIAyrB,qBCNA,IAAA9vB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,SAA6BqX,QAAUza,EAAQ,qCCF/C,IAAAwC,EAAUxC,EAAQ,IAClByC,EAAczC,EAAQ,GACtBmH,EAAenH,EAAQ,IACvBO,EAAWP,EAAQ,KACnBoK,EAAkBpK,EAAQ,KAC1BuI,EAAevI,EAAQ,IACvBwyB,EAAqBxyB,EAAQ,KAC7BsK,EAAgBtK,EAAQ,KAExByC,IAAAW,EAAAX,EAAAO,GAAiChD,EAAQ,IAARA,CAAwB,SAAAuT,GAAmBjI,MAAAuI,KAAAN,KAAoB,SAEhGM,KAAA,SAAArC,GACA,IAOApL,EAAAiD,EAAA6F,EAAAC,EAPAlK,EAAAkC,EAAAqK,GACA9C,EAAA,mBAAA5H,UAAAwE,MACA8D,EAAAjH,UAAA/B,OACAiJ,EAAAD,EAAA,EAAAjH,UAAA,QAAAxE,EACA2L,OAAA3L,IAAA0L,EACAjG,EAAA,EACAmG,EAAAjF,EAAArF,GAIA,GAFAqK,IAAAD,EAAA7M,EAAA6M,EAAAD,EAAA,EAAAjH,UAAA,QAAAxE,EAAA,SAEAA,GAAA4L,GAAAb,GAAApD,OAAAlB,EAAAmF,GAMA,IAAAlG,EAAA,IAAAqF,EADAtI,EAAAmC,EAAAtD,EAAAmB,SACkCA,EAAAgD,EAAgBA,IAClDopB,EAAAnpB,EAAAD,EAAAkG,EAAAD,EAAApK,EAAAmE,MAAAnE,EAAAmE,SANA,IAAA+F,EAAAI,EAAAhP,KAAA0E,GAAAoE,EAAA,IAAAqF,IAAuDQ,EAAAC,EAAAK,QAAAC,KAAgCrG,IACvFopB,EAAAnpB,EAAAD,EAAAkG,EAAA/O,EAAA4O,EAAAE,GAAAH,EAAA7N,MAAA+H,IAAA,GAAA8F,EAAA7N,OASA,OADAgI,EAAAjD,OAAAgD,EACAC,mCCjCA,IAAA5G,EAAczC,EAAQ,GACtBwyB,EAAqBxyB,EAAQ,KAG7ByC,IAAAW,EAAAX,EAAAO,EAAgChD,EAAQ,GAARA,CAAkB,WAClD,SAAAgD,KACA,QAAAsI,MAAAsI,GAAArT,KAAAyC,kBACC,SAED4Q,GAAA,WAIA,IAHA,IAAAxK,EAAA,EACAgG,EAAAjH,UAAA/B,OACAiD,EAAA,uBAAAvC,UAAAwE,OAAA8D,GACAA,EAAAhG,GAAAopB,EAAAnpB,EAAAD,EAAAjB,UAAAiB,MAEA,OADAC,EAAAjD,OAAAgJ,EACA/F,mCCdA,IAAA5G,EAAczC,EAAQ,GACtByH,EAAgBzH,EAAQ,IACxB+M,KAAAlG,KAGApE,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,MAAYc,SAAgBd,EAAQ,GAARA,CAA0B+M,IAAA,SAC/FlG,KAAA,SAAA6J,GACA,OAAA3D,EAAAxM,KAAAkH,EAAAX,WAAAnD,IAAA+M,EAAA,IAAAA,oCCRA,IAAAjO,EAAczC,EAAQ,GACtB+hB,EAAW/hB,EAAQ,KACnByX,EAAUzX,EAAQ,IAClBkK,EAAsBlK,EAAQ,IAC9BuI,EAAevI,EAAQ,IACvBkN,KAAA7E,MAGA5F,IAAAa,EAAAb,EAAAO,EAAgChD,EAAQ,GAARA,CAAkB,WAClD+hB,GAAA7U,EAAA3M,KAAAwhB,KACC,SACD1Z,MAAA,SAAA4I,EAAAC,GACA,IAAAQ,EAAAnJ,EAAAzB,KAAAV,QACAiN,EAAAoE,EAAA3Q,MAEA,GADAoK,OAAAvN,IAAAuN,EAAAQ,EAAAR,EACA,SAAAmC,EAAA,OAAAnG,EAAA3M,KAAAuG,KAAAmK,EAAAC,GAMA,IALA,IAAAnB,EAAA7F,EAAA+G,EAAAS,GACA+gB,EAAAvoB,EAAAgH,EAAAQ,GACA2f,EAAA9oB,EAAAkqB,EAAA1iB,GACA2iB,EAAA,IAAApnB,MAAA+lB,GACAjxB,EAAA,EACUA,EAAAixB,EAAUjxB,IAAAsyB,EAAAtyB,GAAA,UAAAiT,EACpBvM,KAAAsa,OAAArR,EAAA3P,GACA0G,KAAAiJ,EAAA3P,GACA,OAAAsyB,mCCxBA,IAAAjwB,EAAczC,EAAQ,GACtB8H,EAAgB9H,EAAQ,IACxBmH,EAAenH,EAAQ,IACvBuF,EAAYvF,EAAQ,IACpB2yB,KAAA1lB,KACAhH,GAAA,OAEAxD,IAAAa,EAAAb,EAAAO,GAAAuC,EAAA,WAEAU,EAAAgH,UAAAtJ,OACC4B,EAAA,WAEDU,EAAAgH,KAAA,UAEOjN,EAAQ,GAARA,CAA0B2yB,IAAA,SAEjC1lB,KAAA,SAAA8D,GACA,YAAApN,IAAAoN,EACA4hB,EAAApyB,KAAA4G,EAAAL,OACA6rB,EAAApyB,KAAA4G,EAAAL,MAAAgB,EAAAiJ,qCCnBA,IAAAtO,EAAczC,EAAQ,GACtB4yB,EAAe5yB,EAAQ,GAARA,CAA0B,GACzC6yB,EAAa7yB,EAAQ,GAARA,IAA0BsQ,SAAA,GAEvC7N,IAAAa,EAAAb,EAAAO,GAAA6vB,EAAA,SAEAviB,QAAA,SAAApH,GACA,OAAA0pB,EAAA9rB,KAAAoC,EAAAf,UAAA,wBCRA,IAAAnE,EAAehE,EAAQ,IACvBya,EAAcza,EAAQ,KACtB8W,EAAc9W,EAAQ,GAARA,CAAgB,WAE9BG,EAAAD,QAAA,SAAAklB,GACA,IAAA1W,EASG,OARH+L,EAAA2K,KAGA,mBAFA1W,EAAA0W,EAAA7d,cAEAmH,IAAApD,QAAAmP,EAAA/L,EAAA1M,aAAA0M,OAAA/K,GACAK,EAAA0K,IAEA,QADAA,IAAAoI,MACApI,OAAA/K,SAEGA,IAAA+K,EAAApD,MAAAoD,iCCbH,IAAAjM,EAAczC,EAAQ,GACtB+N,EAAW/N,EAAQ,GAARA,CAA0B,GAErCyC,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,GAARA,IAA0B2Q,KAAA,YAE3DA,IAAA,SAAAzH,GACA,OAAA6E,EAAAjH,KAAAoC,EAAAf,UAAA,qCCNA,IAAA1F,EAAczC,EAAQ,GACtB8yB,EAAc9yB,EAAQ,GAARA,CAA0B,GAExCyC,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,GAARA,IAA0BkQ,QAAA,YAE3DA,OAAA,SAAAhH,GACA,OAAA4pB,EAAAhsB,KAAAoC,EAAAf,UAAA,qCCNA,IAAA1F,EAAczC,EAAQ,GACtB+yB,EAAY/yB,EAAQ,GAARA,CAA0B,GAEtCyC,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,GAARA,IAA0B8Q,MAAA,YAE3DA,KAAA,SAAA5H,GACA,OAAA6pB,EAAAjsB,KAAAoC,EAAAf,UAAA,qCCNA,IAAA1F,EAAczC,EAAQ,GACtBgzB,EAAahzB,EAAQ,GAARA,CAA0B,GAEvCyC,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,GAARA,IAA0BgQ,OAAA,YAE3DA,MAAA,SAAA9G,GACA,OAAA8pB,EAAAlsB,KAAAoC,EAAAf,UAAA,qCCNA,IAAA1F,EAAczC,EAAQ,GACtBizB,EAAcjzB,EAAQ,KAEtByC,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,GAARA,IAA0B4M,QAAA,YAE3DA,OAAA,SAAA1D,GACA,OAAA+pB,EAAAnsB,KAAAoC,EAAAf,UAAA/B,OAAA+B,UAAA,wCCNA,IAAA1F,EAAczC,EAAQ,GACtBizB,EAAcjzB,EAAQ,KAEtByC,IAAAa,EAAAb,EAAAO,GAAiChD,EAAQ,GAARA,IAA0B8M,aAAA,YAE3DA,YAAA,SAAA5D,GACA,OAAA+pB,EAAAnsB,KAAAoC,EAAAf,UAAA/B,OAAA+B,UAAA,wCCNA,IAAA1F,EAAczC,EAAQ,GACtBkzB,EAAelzB,EAAQ,IAARA,EAA2B,GAC1Cob,KAAA7K,QACA4iB,IAAA/X,GAAA,MAAA7K,QAAA,QAEA9N,IAAAa,EAAAb,EAAAO,GAAAmwB,IAAmDnzB,EAAQ,GAARA,CAA0Bob,IAAA,SAE7E7K,QAAA,SAAAC,GACA,OAAA2iB,EAEA/X,EAAAlT,MAAApB,KAAAqB,YAAA,EACA+qB,EAAApsB,KAAA0J,EAAArI,UAAA,qCCXA,IAAA1F,EAAczC,EAAQ,GACtByH,EAAgBzH,EAAQ,IACxBoF,EAAgBpF,EAAQ,IACxBuI,EAAevI,EAAQ,IACvBob,KAAA1O,YACAymB,IAAA/X,GAAA,MAAA1O,YAAA,QAEAjK,IAAAa,EAAAb,EAAAO,GAAAmwB,IAAmDnzB,EAAQ,GAARA,CAA0Bob,IAAA,SAE7E1O,YAAA,SAAA8D,GAEA,GAAA2iB,EAAA,OAAA/X,EAAAlT,MAAApB,KAAAqB,YAAA,EACA,IAAAlD,EAAAwC,EAAAX,MACAV,EAAAmC,EAAAtD,EAAAmB,QACAgD,EAAAhD,EAAA,EAGA,IAFA+B,UAAA/B,OAAA,IAAAgD,EAAAhF,KAAAiB,IAAA+D,EAAAhE,EAAA+C,UAAA,MACAiB,EAAA,IAAAA,EAAAhD,EAAAgD,GACUA,GAAA,EAAWA,IAAA,GAAAA,KAAAnE,KAAAmE,KAAAoH,EAAA,OAAApH,GAAA,EACrB,6BClBA,IAAA3G,EAAczC,EAAQ,GAEtByC,IAAAa,EAAA,SAA6BwM,WAAa9P,EAAQ,OAElDA,EAAQ,GAARA,CAA+B,+BCJ/B,IAAAyC,EAAczC,EAAQ,GAEtByC,IAAAa,EAAA,SAA6B2M,KAAOjQ,EAAQ,OAE5CA,EAAQ,GAARA,CAA+B,sCCH/B,IAAAyC,EAAczC,EAAQ,GACtBozB,EAAYpzB,EAAQ,GAARA,CAA0B,GAEtCqzB,GAAA,EADA,YAGA/nB,MAAA,mBAA0C+nB,GAAA,IAC1C5wB,IAAAa,EAAAb,EAAAO,EAAAqwB,EAAA,SACAljB,KAAA,SAAAjH,GACA,OAAAkqB,EAAAtsB,KAAAoC,EAAAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,MAGA3D,EAAQ,GAARA,CATA,sCCFA,IAAAyC,EAAczC,EAAQ,GACtBozB,EAAYpzB,EAAQ,GAARA,CAA0B,GACtCsI,EAAA,YACA+qB,GAAA,EAEA/qB,QAAAgD,MAAA,GAAAhD,GAAA,WAA0C+qB,GAAA,IAC1C5wB,IAAAa,EAAAb,EAAAO,EAAAqwB,EAAA,SACAhjB,UAAA,SAAAnH,GACA,OAAAkqB,EAAAtsB,KAAAoC,EAAAf,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,MAGA3D,EAAQ,GAARA,CAA+BsI,oBCb/BtI,EAAQ,GAARA,CAAwB,0BCAxB,IAAAoC,EAAapC,EAAQ,IACrBqZ,EAAwBrZ,EAAQ,KAChC+E,EAAS/E,EAAQ,IAAcgF,EAC/BqF,EAAWrK,EAAQ,IAAgBgF,EACnCyW,EAAezb,EAAQ,KACvBszB,EAAatzB,EAAQ,KACrBuzB,EAAAnxB,EAAA8V,OACA1F,EAAA+gB,EACA1jB,EAAA0jB,EAAAvxB,UACAwxB,EAAA,KACAC,EAAA,KAEAC,EAAA,IAAAH,EAAAC,OAEA,GAAIxzB,EAAQ,OAAgB0zB,GAAsB1zB,EAAQ,GAARA,CAAkB,WAGpE,OAFAyzB,EAAMzzB,EAAQ,GAARA,CAAgB,aAEtBuzB,EAAAC,OAAAD,EAAAE,OAAA,QAAAF,EAAAC,EAAA,QACC,CACDD,EAAA,SAAArxB,EAAA8C,GACA,IAAA2uB,EAAA7sB,gBAAAysB,EACAK,EAAAnY,EAAAvZ,GACA2xB,OAAAlwB,IAAAqB,EACA,OAAA2uB,GAAAC,GAAA1xB,EAAAqF,cAAAgsB,GAAAM,EAAA3xB,EACAmX,EAAAqa,EACA,IAAAlhB,EAAAohB,IAAAC,EAAA3xB,EAAAS,OAAAT,EAAA8C,GACAwN,GAAAohB,EAAA1xB,aAAAqxB,GAAArxB,EAAAS,OAAAT,EAAA0xB,GAAAC,EAAAP,EAAA/yB,KAAA2B,GAAA8C,GACA2uB,EAAA7sB,KAAA+I,EAAA0jB,IASA,IAPA,IAAAO,EAAA,SAAAnyB,GACAA,KAAA4xB,GAAAxuB,EAAAwuB,EAAA5xB,GACAqQ,cAAA,EACA/Q,IAAA,WAAwB,OAAAuR,EAAA7Q,IACxB0M,IAAA,SAAApK,GAA0BuO,EAAA7Q,GAAAsC,MAG1BqI,EAAAjC,EAAAmI,GAAApS,EAAA,EAAoCkM,EAAAlG,OAAAhG,GAAiB0zB,EAAAxnB,EAAAlM,MACrDyP,EAAAtI,YAAAgsB,EACAA,EAAAvxB,UAAA6N,EACE7P,EAAQ,GAARA,CAAqBoC,EAAA,SAAAmxB,GAGvBvzB,EAAQ,GAARA,CAAwB,wCCzCxBA,EAAQ,KACR,IAAA4E,EAAe5E,EAAQ,IACvBszB,EAAatzB,EAAQ,KACrB6W,EAAkB7W,EAAQ,IAE1BuG,EAAA,aAEAwtB,EAAA,SAAAhsB,GACE/H,EAAQ,GAARA,CAAqBkY,OAAAlW,UAJvB,WAIuB+F,GAAA,IAInB/H,EAAQ,GAARA,CAAkB,WAAe,MAAkD,QAAlDuG,EAAAhG,MAAwBoC,OAAA,IAAA8iB,MAAA,QAC7DsO,EAAA,WACA,IAAAhwB,EAAAa,EAAAkC,MACA,UAAA0M,OAAAzP,EAAApB,OAAA,IACA,UAAAoB,IAAA0hB,OAAA5O,GAAA9S,aAAAmU,OAAAob,EAAA/yB,KAAAwD,QAAAJ,KAZA,YAeC4C,EAAA5F,MACDozB,EAAA,WACA,OAAAxtB,EAAAhG,KAAAuG,yBCrBA9G,EAAQ,IAARA,CAAuB,mBAAAsF,EAAAkW,EAAAwY,GAEvB,gBAAAC,GACA,aACA,IAAAhvB,EAAAK,EAAAwB,MACAiB,OAAApE,GAAAswB,OAAAtwB,EAAAswB,EAAAzY,GACA,YAAA7X,IAAAoE,IAAAxH,KAAA0zB,EAAAhvB,GAAA,IAAAiT,OAAA+b,GAAAzY,GAAA3V,OAAAZ,KACG+uB,sBCPHh0B,EAAQ,IAARA,CAAuB,qBAAAsF,EAAA4uB,EAAAC,GAEvB,gBAAAC,EAAAC,GACA,aACA,IAAApvB,EAAAK,EAAAwB,MACAiB,OAAApE,GAAAywB,OAAAzwB,EAAAywB,EAAAF,GACA,YAAAvwB,IAAAoE,EACAA,EAAAxH,KAAA6zB,EAAAnvB,EAAAovB,GACAF,EAAA5zB,KAAAsF,OAAAZ,GAAAmvB,EAAAC,IACGF,sBCTHn0B,EAAQ,IAARA,CAAuB,oBAAAsF,EAAAgvB,EAAAC,GAEvB,gBAAAN,GACA,aACA,IAAAhvB,EAAAK,EAAAwB,MACAiB,OAAApE,GAAAswB,OAAAtwB,EAAAswB,EAAAK,GACA,YAAA3wB,IAAAoE,IAAAxH,KAAA0zB,EAAAhvB,GAAA,IAAAiT,OAAA+b,GAAAK,GAAAzuB,OAAAZ,KACGsvB,sBCPHv0B,EAAQ,IAARA,CAAuB,mBAAAsF,EAAAkvB,EAAAC,GACvB,aACA,IAAAhZ,EAAiBzb,EAAQ,KACzB00B,EAAAD,EACAE,KAAArrB,KAIA,GACA,8BACA,mCACA,iCACA,iCACA,4BACA,sBACA,CACA,IAAAsrB,OAAAjxB,IAAA,OAAAY,KAAA,OAEAkwB,EAAA,SAAA/jB,EAAAmkB,GACA,IAAAnvB,EAAAG,OAAAiB,MACA,QAAAnD,IAAA+M,GAAA,IAAAmkB,EAAA,SAEA,IAAApZ,EAAA/K,GAAA,OAAAgkB,EAAAn0B,KAAAmF,EAAAgL,EAAAmkB,GACA,IASAC,EAAA3I,EAAA4I,EAAAC,EAAA50B,EATA60B,KACAxP,GAAA/U,EAAAgL,WAAA,SACAhL,EAAAiL,UAAA,SACAjL,EAAAkL,QAAA,SACAlL,EAAAmL,OAAA,QACAqZ,EAAA,EACAC,OAAAxxB,IAAAkxB,EAAA,WAAAA,IAAA,EAEAO,EAAA,IAAAld,OAAAxH,EAAA/N,OAAA8iB,EAAA,KAIA,IADAmP,IAAAE,EAAA,IAAA5c,OAAA,IAAAkd,EAAAzyB,OAAA,WAAA8iB,KACA0G,EAAAiJ,EAAA7wB,KAAAmB,QAEAqvB,EAAA5I,EAAA/iB,MAAA+iB,EAAA,WACA+I,IACAD,EAAA3rB,KAAA5D,EAAA2C,MAAA6sB,EAAA/I,EAAA/iB,SAGAwrB,GAAAzI,EAAA,UAAAA,EAAA,GAAApmB,QAAA+uB,EAAA,WACA,IAAA10B,EAAA,EAAuBA,EAAA+H,UAAA,SAA2B/H,SAAAuD,IAAAwE,UAAA/H,KAAA+rB,EAAA/rB,QAAAuD,KAElDwoB,EAAA,UAAAA,EAAA/iB,MAAA1D,EAAA,QAAAivB,EAAAzsB,MAAA+sB,EAAA9I,EAAA9jB,MAAA,IACA2sB,EAAA7I,EAAA,UACA+I,EAAAH,EACAE,EAAA,QAAAE,KAEAC,EAAA,YAAAjJ,EAAA/iB,OAAAgsB,EAAA,YAKA,OAHAF,IAAAxvB,EAAA,QACAsvB,GAAAI,EAAAnvB,KAAA,KAAAgvB,EAAA3rB,KAAA,IACO2rB,EAAA3rB,KAAA5D,EAAA2C,MAAA6sB,IACPD,EAAA,OAAAE,EAAAF,EAAA5sB,MAAA,EAAA8sB,GAAAF,OAGG,eAAAtxB,EAAA,YACH8wB,EAAA,SAAA/jB,EAAAmkB,GACA,YAAAlxB,IAAA+M,GAAA,IAAAmkB,KAAAH,EAAAn0B,KAAAuG,KAAA4J,EAAAmkB,KAIA,gBAAAnkB,EAAAmkB,GACA,IAAA5vB,EAAAK,EAAAwB,MACAiB,OAAApE,GAAA+M,OAAA/M,EAAA+M,EAAA8jB,GACA,YAAA7wB,IAAAoE,IAAAxH,KAAAmQ,EAAAzL,EAAA4vB,GAAAJ,EAAAl0B,KAAAsF,OAAAZ,GAAAyL,EAAAmkB,IACGJ,mCCpEH,IAwBAY,EAAAC,EAAAC,EAAAC,EAxBA7rB,EAAc3J,EAAQ,IACtBoC,EAAapC,EAAQ,IACrBwC,EAAUxC,EAAQ,IAClBmK,EAAcnK,EAAQ,IACtByC,EAAczC,EAAQ,GACtBgE,EAAehE,EAAQ,IACvB8H,EAAgB9H,EAAQ,IACxB8J,EAAiB9J,EAAQ,IACzBmZ,EAAYnZ,EAAQ,IACpB0K,EAAyB1K,EAAQ,KACjC+mB,EAAW/mB,EAAQ,KAASqO,IAC5BonB,EAAgBz1B,EAAQ,IAARA,GAChB01B,EAAiC11B,EAAQ,KACzC21B,EAAc31B,EAAQ,KACtB6jB,EAAgB7jB,EAAQ,KACxB41B,EAAqB51B,EAAQ,KAE7BkE,EAAA9B,EAAA8B,UACA+d,EAAA7f,EAAA6f,QACA4T,EAAA5T,KAAA4T,SACAC,EAAAD,KAAAC,IAAA,GACAC,EAAA3zB,EAAA,QACA2jB,EAAA,WAAA5b,EAAA8X,GACA+T,EAAA,aAEA/M,EAAAqM,EAAAI,EAAA1wB,EAEAilB,IAAA,WACA,IAEA,IAAAxG,EAAAsS,EAAAxS,QAAA,GACA0S,GAAAxS,EAAAlc,gBAAiDvH,EAAQ,GAARA,CAAgB,qBAAAuE,GACjEA,EAAAyxB,MAGA,OAAAjQ,GAAA,mBAAAmQ,wBACAzS,EAAAgD,KAAAuP,aAAAC,GAIA,IAAAH,EAAAvlB,QAAA,SACA,IAAAsT,EAAAtT,QAAA,aACG,MAAA/L,KAfH,GAmBA2xB,EAAA,SAAAlyB,GACA,IAAAwiB,EACA,SAAAziB,EAAAC,IAAA,mBAAAwiB,EAAAxiB,EAAAwiB,WAEAP,EAAA,SAAAzC,EAAA2S,GACA,IAAA3S,EAAA4S,GAAA,CACA5S,EAAA4S,IAAA,EACA,IAAAC,EAAA7S,EAAA8S,GACAd,EAAA,WAoCA,IAnCA,IAAAp0B,EAAAoiB,EAAA+S,GACAC,EAAA,GAAAhT,EAAAiT,GACAt2B,EAAA,EACAsiB,EAAA,SAAAiU,GACA,IAIAttB,EAAAod,EAAAmQ,EAJAC,EAAAJ,EAAAE,EAAAF,GAAAE,EAAAG,KACAvT,EAAAoT,EAAApT,QACAC,EAAAmT,EAAAnT,OACA6C,EAAAsQ,EAAAtQ,OAEA,IACAwQ,GACAJ,IACA,GAAAhT,EAAAsT,IAAAC,EAAAvT,GACAA,EAAAsT,GAAA,IAEA,IAAAF,EAAAxtB,EAAAhI,GAEAglB,KAAAE,QACAld,EAAAwtB,EAAAx1B,GACAglB,IACAA,EAAAC,OACAsQ,GAAA,IAGAvtB,IAAAstB,EAAAlT,QACAD,EAAAtf,EAAA,yBACWuiB,EAAA0P,EAAA9sB,IACXod,EAAAlmB,KAAA8I,EAAAka,EAAAC,GACWD,EAAAla,IACFma,EAAAniB,GACF,MAAAmD,GACP6hB,IAAAuQ,GAAAvQ,EAAAC,OACA9C,EAAAhf,KAGA8xB,EAAAlwB,OAAAhG,GAAAsiB,EAAA4T,EAAAl2B,MACAqjB,EAAA8S,MACA9S,EAAA4S,IAAA,EACAD,IAAA3S,EAAAsT,IAAAE,EAAAxT,OAGAwT,EAAA,SAAAxT,GACAsD,EAAAxmB,KAAA6B,EAAA,WACA,IAEAiH,EAAAwtB,EAAAK,EAFA71B,EAAAoiB,EAAA+S,GACAW,EAAAC,EAAA3T,GAeA,GAbA0T,IACA9tB,EAAAssB,EAAA,WACA5P,EACA9D,EAAAoV,KAAA,qBAAAh2B,EAAAoiB,IACSoT,EAAAz0B,EAAAk1B,sBACTT,GAAmBpT,UAAA8T,OAAAl2B,KACV61B,EAAA90B,EAAA80B,YAAAM,OACTN,EAAAM,MAAA,8BAAAn2B,KAIAoiB,EAAAsT,GAAAhR,GAAAqR,EAAA3T,GAAA,KACKA,EAAAgU,QAAA9zB,EACLwzB,GAAA9tB,EAAA7E,EAAA,MAAA6E,EAAA0J,KAGAqkB,EAAA,SAAA3T,GACA,WAAAA,EAAAsT,IAAA,KAAAtT,EAAAgU,IAAAhU,EAAA8S,IAAAnwB,QAEA4wB,EAAA,SAAAvT,GACAsD,EAAAxmB,KAAA6B,EAAA,WACA,IAAAy0B,EACA9Q,EACA9D,EAAAoV,KAAA,mBAAA5T,IACKoT,EAAAz0B,EAAAs1B,qBACLb,GAAepT,UAAA8T,OAAA9T,EAAA+S,QAIfmB,EAAA,SAAAt2B,GACA,IAAAoiB,EAAA3c,KACA2c,EAAAzU,KACAyU,EAAAzU,IAAA,GACAyU,IAAAmU,IAAAnU,GACA+S,GAAAn1B,EACAoiB,EAAAiT,GAAA,EACAjT,EAAAgU,KAAAhU,EAAAgU,GAAAhU,EAAA8S,GAAAluB,SACA6d,EAAAzC,GAAA,KAEAoU,EAAA,SAAAx2B,GACA,IACAolB,EADAhD,EAAA3c,KAEA,IAAA2c,EAAAzU,GAAA,CACAyU,EAAAzU,IAAA,EACAyU,IAAAmU,IAAAnU,EACA,IACA,GAAAA,IAAApiB,EAAA,MAAA6C,EAAA,qCACAuiB,EAAA0P,EAAA90B,IACAo0B,EAAA,WACA,IAAAtjB,GAAuBylB,GAAAnU,EAAAzU,IAAA,GACvB,IACAyX,EAAAlmB,KAAAc,EAAAmB,EAAAq1B,EAAA1lB,EAAA,GAAA3P,EAAAm1B,EAAAxlB,EAAA,IACS,MAAA3N,GACTmzB,EAAAp3B,KAAA4R,EAAA3N,OAIAif,EAAA+S,GAAAn1B,EACAoiB,EAAAiT,GAAA,EACAxQ,EAAAzC,GAAA,IAEG,MAAAjf,GACHmzB,EAAAp3B,MAAkBq3B,GAAAnU,EAAAzU,IAAA,GAAyBxK,MAK3CylB,IAEA8L,EAAA,SAAA+B,GACAhuB,EAAAhD,KAAAivB,EA3JA,UA2JA,MACAjuB,EAAAgwB,GACAzC,EAAA90B,KAAAuG,MACA,IACAgxB,EAAAt1B,EAAAq1B,EAAA/wB,KAAA,GAAAtE,EAAAm1B,EAAA7wB,KAAA,IACK,MAAAixB,GACLJ,EAAAp3B,KAAAuG,KAAAixB,MAIA1C,EAAA,SAAAyC,GACAhxB,KAAAyvB,MACAzvB,KAAA2wB,QAAA9zB,EACAmD,KAAA4vB,GAAA,EACA5vB,KAAAkI,IAAA,EACAlI,KAAA0vB,QAAA7yB,EACAmD,KAAAiwB,GAAA,EACAjwB,KAAAuvB,IAAA,IAEAr0B,UAAuBhC,EAAQ,GAARA,CAAyB+1B,EAAA/zB,WAEhDykB,KAAA,SAAAuR,EAAAC,GACA,IAAAtB,EAAA1N,EAAAve,EAAA5D,KAAAivB,IAOA,OANAY,EAAAF,GAAA,mBAAAuB,KACArB,EAAAG,KAAA,mBAAAmB,KACAtB,EAAAtQ,OAAAN,EAAA9D,EAAAoE,YAAA1iB,EACAmD,KAAAyvB,GAAAjtB,KAAAqtB,GACA7vB,KAAA2wB,IAAA3wB,KAAA2wB,GAAAnuB,KAAAqtB,GACA7vB,KAAA4vB,IAAAxQ,EAAApf,MAAA,GACA6vB,EAAAlT,SAGAyU,MAAA,SAAAD,GACA,OAAAnxB,KAAA2f,UAAA9iB,EAAAs0B,MAGA1C,EAAA,WACA,IAAA9R,EAAA,IAAA4R,EACAvuB,KAAA2c,UACA3c,KAAAyc,QAAA/gB,EAAAq1B,EAAApU,EAAA,GACA3c,KAAA0c,OAAAhhB,EAAAm1B,EAAAlU,EAAA,IAEAiS,EAAA1wB,EAAAikB,EAAA,SAAAva,GACA,OAAAA,IAAAqnB,GAAArnB,IAAA8mB,EACA,IAAAD,EAAA7mB,GACA4mB,EAAA5mB,KAIAjM,IAAAS,EAAAT,EAAAqB,EAAArB,EAAAO,GAAAinB,GAA0DnE,QAAAiQ,IAC1D/1B,EAAQ,GAARA,CAA8B+1B,EA7M9B,WA8MA/1B,EAAQ,GAARA,CA9MA,WA+MAw1B,EAAUx1B,EAAQ,IAAS,QAG3ByC,IAAAW,EAAAX,EAAAO,GAAAinB,EAlNA,WAoNAzG,OAAA,SAAAtiB,GACA,IAAAi3B,EAAAlP,EAAAniB,MAGA,OADA6c,EADAwU,EAAA3U,QACAtiB,GACAi3B,EAAA1U,WAGAhhB,IAAAW,EAAAX,EAAAO,GAAA2G,IAAAsgB,GA3NA,WA6NA1G,QAAA,SAAAhH,GACA,OAAAqZ,EAAAjsB,GAAA7C,OAAA0uB,EAAAO,EAAAjvB,KAAAyV,MAGA9Z,IAAAW,EAAAX,EAAAO,IAAAinB,GAAgDjqB,EAAQ,IAARA,CAAwB,SAAAuT,GACxEwiB,EAAAqC,IAAA7kB,GAAA,MAAAyiB,MAlOA,WAqOAoC,IAAA,SAAAjhB,GACA,IAAAzI,EAAA5H,KACAqxB,EAAAlP,EAAAva,GACA6U,EAAA4U,EAAA5U,QACAC,EAAA2U,EAAA3U,OACAna,EAAAssB,EAAA,WACA,IAAAvpB,KACAhD,EAAA,EACAivB,EAAA,EACAlf,EAAAhC,GAAA,WAAAsM,GACA,IAAA6U,EAAAlvB,IACAmvB,GAAA,EACAnsB,EAAA9C,UAAA3F,GACA00B,IACA3pB,EAAA6U,QAAAE,GAAAgD,KAAA,SAAAplB,GACAk3B,IACAA,GAAA,EACAnsB,EAAAksB,GAAAj3B,IACAg3B,GAAA9U,EAAAnX,KACSoX,OAET6U,GAAA9U,EAAAnX,KAGA,OADA/C,EAAA7E,GAAAgf,EAAAna,EAAA0J,GACAolB,EAAA1U,SAGA+U,KAAA,SAAArhB,GACA,IAAAzI,EAAA5H,KACAqxB,EAAAlP,EAAAva,GACA8U,EAAA2U,EAAA3U,OACAna,EAAAssB,EAAA,WACAxc,EAAAhC,GAAA,WAAAsM,GACA/U,EAAA6U,QAAAE,GAAAgD,KAAA0R,EAAA5U,QAAAC,OAIA,OADAna,EAAA7E,GAAAgf,EAAAna,EAAA0J,GACAolB,EAAA1U,yCC1RA,IAAAmE,EAAW5nB,EAAQ,KACnByO,EAAezO,EAAQ,IAIvBA,EAAQ,IAARA,CAHA,UAGuB,SAAAiB,GACvB,kBAA6B,OAAAA,EAAA6F,KAAAqB,UAAA/B,OAAA,EAAA+B,UAAA,QAAAxE,MAG7B8jB,IAAA,SAAApmB,GACA,OAAAumB,EAAAtQ,IAAA7I,EAAA3H,KARA,WAQAzF,GAAA,KAECumB,GAAA,oCCZD,IAAAnlB,EAAczC,EAAQ,GACtB4J,EAAa5J,EAAQ,KACrBmO,EAAanO,EAAQ,KACrB4E,EAAe5E,EAAQ,IACvBkK,EAAsBlK,EAAQ,IAC9BuI,EAAevI,EAAQ,IACvBgE,EAAehE,EAAQ,IACvBwL,EAAkBxL,EAAQ,IAAWwL,YACrCd,EAAyB1K,EAAQ,KACjCuL,EAAA4C,EAAA3C,YACAC,EAAA0C,EAAAzC,SACA+sB,EAAA7uB,EAAA+I,KAAAnH,EAAAktB,OACApnB,EAAA/F,EAAAvJ,UAAAqG,MACAyF,EAAAlE,EAAAkE,KAGArL,IAAAS,EAAAT,EAAAqB,EAAArB,EAAAO,GAAAwI,IAAAD,IAA6EC,YAAAD,IAE7E9I,IAAAW,EAAAX,EAAAO,GAAA4G,EAAA+D,OAJA,eAMA+qB,OAAA,SAAAz0B,GACA,OAAAw0B,KAAAx0B,IAAAD,EAAAC,IAAA6J,KAAA7J,KAIAxB,IAAAa,EAAAb,EAAAoB,EAAApB,EAAAO,EAA4ChD,EAAQ,GAARA,CAAkB,WAC9D,WAAAuL,EAAA,GAAAlD,MAAA,OAAA1E,GAAAyP,aAZA,eAeA/K,MAAA,SAAA0H,EAAAmB,GACA,QAAAvN,IAAA2N,QAAA3N,IAAAuN,EAAA,OAAAI,EAAA/Q,KAAAqE,EAAAkC,MAAAiJ,GAQA,IAPA,IAAA2B,EAAA9M,EAAAkC,MAAAsM,WACAyZ,EAAA3iB,EAAA6F,EAAA2B,GACAinB,EAAAzuB,OAAAvG,IAAAuN,EAAAQ,EAAAR,EAAAQ,GACArI,EAAA,IAAAqB,EAAA5D,KAAAyE,GAAA,CAAAhD,EAAAowB,EAAA9L,IACA+L,EAAA,IAAAntB,EAAA3E,MACA+xB,EAAA,IAAAptB,EAAApC,GACAD,EAAA,EACAyjB,EAAA8L,GACAE,EAAAxZ,SAAAjW,IAAAwvB,EAAArZ,SAAAsN,MACK,OAAAxjB,KAILrJ,EAAQ,GAARA,CA9BA,gCCfA,IAAAyC,EAAczC,EAAQ,GACtByC,IAAAS,EAAAT,EAAAqB,EAAArB,EAAAO,GAA6ChD,EAAQ,KAAU2S,KAC/DjH,SAAY1L,EAAQ,KAAiB0L,4BCFrC1L,EAAQ,GAARA,CAAwB,kBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,mBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,mBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,MAEC,oBCJDpG,EAAQ,GAARA,CAAwB,mBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,oBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,mBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,oBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,qBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCFApG,EAAQ,GAARA,CAAwB,qBAAA84B,GACxB,gBAAAhmB,EAAA1B,EAAAhL,GACA,OAAA0yB,EAAAhyB,KAAAgM,EAAA1B,EAAAhL,uBCDA,IAAA3D,EAAczC,EAAQ,GACtB8H,EAAgB9H,EAAQ,IACxB4E,EAAe5E,EAAQ,IACvB+4B,GAAc/4B,EAAQ,IAAWuoB,aAAergB,MAChD8wB,EAAAp1B,SAAAsE,MAEAzF,IAAAW,EAAAX,EAAAO,GAAiChD,EAAQ,GAARA,CAAkB,WACnD+4B,EAAA,gBACC,WACD7wB,MAAA,SAAAzE,EAAAw1B,EAAAC,GACA,IAAAvhB,EAAA7P,EAAArE,GACA01B,EAAAv0B,EAAAs0B,GACA,OAAAH,IAAAphB,EAAAshB,EAAAE,GAAAH,EAAAz4B,KAAAoX,EAAAshB,EAAAE,uBCZA,IAAA12B,EAAczC,EAAQ,GACtB0B,EAAa1B,EAAQ,IACrB8H,EAAgB9H,EAAQ,IACxB4E,EAAe5E,EAAQ,IACvBgE,EAAehE,EAAQ,IACvBuF,EAAYvF,EAAQ,IACpB4B,EAAW5B,EAAQ,KACnBo5B,GAAkBp5B,EAAQ,IAAWuoB,aAAehE,UAIpD8U,EAAA9zB,EAAA,WACA,SAAAvC,KACA,QAAAo2B,EAAA,gBAAiDp2B,kBAEjDs2B,GAAA/zB,EAAA,WACA6zB,EAAA,gBAGA32B,IAAAW,EAAAX,EAAAO,GAAAq2B,GAAAC,GAAA,WACA/U,UAAA,SAAAgV,EAAA1Y,GACA/Y,EAAAyxB,GACA30B,EAAAic,GACA,IAAA2Y,EAAArxB,UAAA/B,OAAA,EAAAmzB,EAAAzxB,EAAAK,UAAA,IACA,GAAAmxB,IAAAD,EAAA,OAAAD,EAAAG,EAAA1Y,EAAA2Y,GACA,GAAAD,GAAAC,EAAA,CAEA,OAAA3Y,EAAAza,QACA,kBAAAmzB,EACA,kBAAAA,EAAA1Y,EAAA,IACA,kBAAA0Y,EAAA1Y,EAAA,GAAAA,EAAA,IACA,kBAAA0Y,EAAA1Y,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA,kBAAA0Y,EAAA1Y,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,IAGA,IAAA4Y,GAAA,MAEA,OADAA,EAAAnwB,KAAApB,MAAAuxB,EAAA5Y,GACA,IAAAjf,EAAAsG,MAAAqxB,EAAAE,IAGA,IAAA5pB,EAAA2pB,EAAAx3B,UACA2X,EAAAjY,EAAAsC,EAAA6L,KAAA/O,OAAAkB,WACAqH,EAAAzF,SAAAsE,MAAA3H,KAAAg5B,EAAA5f,EAAAkH,GACA,OAAA7c,EAAAqF,KAAAsQ,sBC3CA,IAAA5U,EAAS/E,EAAQ,IACjByC,EAAczC,EAAQ,GACtB4E,EAAe5E,EAAQ,IACvB8E,EAAkB9E,EAAQ,IAG1ByC,IAAAW,EAAAX,EAAAO,EAAgChD,EAAQ,GAARA,CAAkB,WAElDuoB,QAAAxnB,eAAAgE,EAAAC,KAAgC,GAAM3D,MAAA,IAAW,GAAOA,MAAA,MACvD,WACDN,eAAA,SAAA0C,EAAAi2B,EAAAC,GACA/0B,EAAAnB,GACAi2B,EAAA50B,EAAA40B,GAAA,GACA90B,EAAA+0B,GACA,IAEA,OADA50B,EAAAC,EAAAvB,EAAAi2B,EAAAC,IACA,EACK,MAAAn1B,GACL,8BClBA,IAAA/B,EAAczC,EAAQ,GACtB0H,EAAW1H,EAAQ,IAAgBgF,EACnCJ,EAAe5E,EAAQ,IAEvByC,IAAAW,EAAA,WACAw2B,eAAA,SAAAn2B,EAAAi2B,GACA,IAAA3nB,EAAArK,EAAA9C,EAAAnB,GAAAi2B,GACA,QAAA3nB,MAAAC,sBAAAvO,EAAAi2B,oCCNA,IAAAj3B,EAAczC,EAAQ,GACtB4E,EAAe5E,EAAQ,IACvB65B,EAAA,SAAAtY,GACAza,KAAA0Q,GAAA5S,EAAA2c,GACAza,KAAA0a,GAAA,EACA,IACA7f,EADA2K,EAAAxF,KAAA2a,MAEA,IAAA9f,KAAA4f,EAAAjV,EAAAhD,KAAA3H,IAEA3B,EAAQ,IAARA,CAAwB65B,EAAA,oBACxB,IAEAl4B,EADA2K,EADAxF,KACA2a,GAEA,GACA,GAJA3a,KAIA0a,IAAAlV,EAAAlG,OAAA,OAAwC/E,WAAAsC,EAAA8L,MAAA,YACrC9N,EAAA2K,EALHxF,KAKG0a,SALH1a,KAKG0Q,KACH,OAAUnW,MAAAM,EAAA8N,MAAA,KAGVhN,IAAAW,EAAA,WACA02B,UAAA,SAAAr2B,GACA,WAAAo2B,EAAAp2B,uBCtBA,IAAAiE,EAAW1H,EAAQ,IACnBsH,EAAqBtH,EAAQ,IAC7BqG,EAAUrG,EAAQ,IAClByC,EAAczC,EAAQ,GACtBgE,EAAehE,EAAQ,IACvB4E,EAAe5E,EAAQ,IAcvByC,IAAAW,EAAA,WAA+BnC,IAZ/B,SAAAA,EAAAwC,EAAAi2B,GACA,IACA3nB,EAAAlC,EADAkqB,EAAA5xB,UAAA/B,OAAA,EAAA3C,EAAA0E,UAAA,GAEA,OAAAvD,EAAAnB,KAAAs2B,EAAAt2B,EAAAi2B,IACA3nB,EAAArK,EAAA1C,EAAAvB,EAAAi2B,IAAArzB,EAAA0L,EAAA,SACAA,EAAA1Q,WACAsC,IAAAoO,EAAA9Q,IACA8Q,EAAA9Q,IAAAV,KAAAw5B,QACAp2B,EACAK,EAAA6L,EAAAvI,EAAA7D,IAAAxC,EAAA4O,EAAA6pB,EAAAK,QAAA,sBChBA,IAAAryB,EAAW1H,EAAQ,IACnByC,EAAczC,EAAQ,GACtB4E,EAAe5E,EAAQ,IAEvByC,IAAAW,EAAA,WACAuE,yBAAA,SAAAlE,EAAAi2B,GACA,OAAAhyB,EAAA1C,EAAAJ,EAAAnB,GAAAi2B,uBCNA,IAAAj3B,EAAczC,EAAQ,GACtBg6B,EAAeh6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IAEvByC,IAAAW,EAAA,WACAkE,eAAA,SAAA7D,GACA,OAAAu2B,EAAAp1B,EAAAnB,wBCNA,IAAAhB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,WACAiD,IAAA,SAAA5C,EAAAi2B,GACA,OAAAA,KAAAj2B,sBCJA,IAAAhB,EAAczC,EAAQ,GACtB4E,EAAe5E,EAAQ,IACvB+rB,EAAAjrB,OAAA6T,aAEAlS,IAAAW,EAAA,WACAuR,aAAA,SAAAlR,GAEA,OADAmB,EAAAnB,IACAsoB,KAAAtoB,uBCPA,IAAAhB,EAAczC,EAAQ,GAEtByC,IAAAW,EAAA,WAA+BolB,QAAUxoB,EAAQ,wBCFjD,IAAAyC,EAAczC,EAAQ,GACtB4E,EAAe5E,EAAQ,IACvB4rB,EAAA9qB,OAAA+T,kBAEApS,IAAAW,EAAA,WACAyR,kBAAA,SAAApR,GACAmB,EAAAnB,GACA,IAEA,OADAmoB,KAAAnoB,IACA,EACK,MAAAe,GACL,8BCXA,IAAAO,EAAS/E,EAAQ,IACjB0H,EAAW1H,EAAQ,IACnBsH,EAAqBtH,EAAQ,IAC7BqG,EAAUrG,EAAQ,IAClByC,EAAczC,EAAQ,GACtBkH,EAAiBlH,EAAQ,IACzB4E,EAAe5E,EAAQ,IACvBgE,EAAehE,EAAQ,IAwBvByC,IAAAW,EAAA,WAA+BiL,IAtB/B,SAAAA,EAAA5K,EAAAi2B,EAAAO,GACA,IAEAC,EAAArqB,EAFAkqB,EAAA5xB,UAAA/B,OAAA,EAAA3C,EAAA0E,UAAA,GACAgyB,EAAAzyB,EAAA1C,EAAAJ,EAAAnB,GAAAi2B,GAEA,IAAAS,EAAA,CACA,GAAAn2B,EAAA6L,EAAAvI,EAAA7D,IACA,OAAA4K,EAAAwB,EAAA6pB,EAAAO,EAAAF,GAEAI,EAAAjzB,EAAA,GAEA,GAAAb,EAAA8zB,EAAA,UACA,QAAAA,EAAAloB,WAAAjO,EAAA+1B,GAAA,SACA,GAAAG,EAAAxyB,EAAA1C,EAAA+0B,EAAAL,GAAA,CACA,GAAAQ,EAAAj5B,KAAAi5B,EAAA7rB,MAAA,IAAA6rB,EAAAjoB,SAAA,SACAioB,EAAA74B,MAAA44B,EACAl1B,EAAAC,EAAA+0B,EAAAL,EAAAQ,QACKn1B,EAAAC,EAAA+0B,EAAAL,EAAAxyB,EAAA,EAAA+yB,IACL,SAEA,YAAAt2B,IAAAw2B,EAAA9rB,MAAA8rB,EAAA9rB,IAAA9N,KAAAw5B,EAAAE,IAAA,uBC5BA,IAAAx3B,EAAczC,EAAQ,GACtBo6B,EAAep6B,EAAQ,KAEvBo6B,GAAA33B,IAAAW,EAAA,WACA+Y,eAAA,SAAA1Y,EAAAoM,GACAuqB,EAAAle,MAAAzY,EAAAoM,GACA,IAEA,OADAuqB,EAAA/rB,IAAA5K,EAAAoM,IACA,EACK,MAAArL,GACL,8BCXA,IAAA61B,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBs6B,EAAAD,EAAA14B,IACA44B,EAAAF,EAAAhsB,IAEAgsB,EAAAv3B,KAAc03B,eAAA,SAAAC,EAAAC,EAAAj3B,EAAAwQ,GACdsmB,EAAAE,EAAAC,EAAA91B,EAAAnB,GAAA62B,EAAArmB,wBCNA,IAAAomB,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBs6B,EAAAD,EAAA14B,IACAqS,EAAAqmB,EAAA1pB,IACAlM,EAAA41B,EAAA51B,MAEA41B,EAAAv3B,KAAc63B,eAAA,SAAAF,EAAAh3B,GACd,IAAAwQ,EAAA9L,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,IACAkM,EAAAL,EAAApP,EAAAnB,GAAAwQ,GAAA,GACA,QAAAtQ,IAAA0Q,MAAA,OAAAomB,GAAA,SACA,GAAApmB,EAAAgd,KAAA,SACA,IAAAnd,EAAAzP,EAAAxD,IAAAwC,GAEA,OADAyQ,EAAA,OAAAD,KACAC,EAAAmd,MAAA5sB,EAAA,OAAAhB,uBCbA,IAAA42B,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBsH,EAAqBtH,EAAQ,IAC7B46B,EAAAP,EAAAh0B,IACAw0B,EAAAR,EAAAp5B,IACAq5B,EAAAD,EAAA14B,IAEAm5B,EAAA,SAAA1mB,EAAAnP,EAAA3B,GAEA,GADAs3B,EAAAxmB,EAAAnP,EAAA3B,GACA,OAAAu3B,EAAAzmB,EAAAnP,EAAA3B,GACA,IAAA8iB,EAAA9e,EAAArC,GACA,cAAAmhB,EAAA0U,EAAA1mB,EAAAgS,EAAA9iB,QAAAK,GAGA02B,EAAAv3B,KAAci4B,YAAA,SAAAN,EAAAh3B,GACd,OAAAq3B,EAAAL,EAAA71B,EAAAnB,GAAA0E,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,yBCfA,IAAA6yB,EAAUh7B,EAAQ,KAClB6T,EAAW7T,EAAQ,KACnBq6B,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBsH,EAAqBtH,EAAQ,IAC7Bi7B,EAAAZ,EAAA/tB,KACAguB,EAAAD,EAAA14B,IAEAu5B,EAAA,SAAAj2B,EAAA3B,GACA,IAAA63B,EAAAF,EAAAh2B,EAAA3B,GACA8iB,EAAA9e,EAAArC,GACA,UAAAmhB,EAAA,OAAA+U,EACA,IAAAC,EAAAF,EAAA9U,EAAA9iB,GACA,OAAA83B,EAAAh1B,OAAA+0B,EAAA/0B,OAAAyN,EAAA,IAAAmnB,EAAAG,EAAA3nB,OAAA4nB,OAAAD,GAGAd,EAAAv3B,KAAcu4B,gBAAA,SAAA53B,GACd,OAAAy3B,EAAAt2B,EAAAnB,GAAA0E,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,yBCjBA,IAAAkyB,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvB66B,EAAAR,EAAAp5B,IACAq5B,EAAAD,EAAA14B,IAEA04B,EAAAv3B,KAAcw4B,eAAA,SAAAb,EAAAh3B,GACd,OAAAo3B,EAAAJ,EAAA71B,EAAAnB,GACA0E,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,yBCPA,IAAAkyB,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBi7B,EAAAZ,EAAA/tB,KACAguB,EAAAD,EAAA14B,IAEA04B,EAAAv3B,KAAcy4B,mBAAA,SAAA93B,GACd,OAAAw3B,EAAAr2B,EAAAnB,GAAA0E,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,yBCNA,IAAAkyB,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvBsH,EAAqBtH,EAAQ,IAC7B46B,EAAAP,EAAAh0B,IACAi0B,EAAAD,EAAA14B,IAEA65B,EAAA,SAAApnB,EAAAnP,EAAA3B,GAEA,GADAs3B,EAAAxmB,EAAAnP,EAAA3B,GACA,SACA,IAAA8iB,EAAA9e,EAAArC,GACA,cAAAmhB,GAAAoV,EAAApnB,EAAAgS,EAAA9iB,IAGA+2B,EAAAv3B,KAAc24B,YAAA,SAAAhB,EAAAh3B,GACd,OAAA+3B,EAAAf,EAAA71B,EAAAnB,GAAA0E,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,yBCdA,IAAAkyB,EAAer6B,EAAQ,IACvB4E,EAAe5E,EAAQ,IACvB46B,EAAAP,EAAAh0B,IACAi0B,EAAAD,EAAA14B,IAEA04B,EAAAv3B,KAAc44B,eAAA,SAAAjB,EAAAh3B,GACd,OAAAm3B,EAAAH,EAAA71B,EAAAnB,GACA0E,UAAA/B,OAAA,OAAAzC,EAAA22B,EAAAnyB,UAAA,yBCPA,IAAAwzB,EAAgB37B,EAAQ,IACxB4E,EAAe5E,EAAQ,IACvB8H,EAAgB9H,EAAQ,IACxBs6B,EAAAqB,EAAAh6B,IACA44B,EAAAoB,EAAAttB,IAEAstB,EAAA74B,KAAeu3B,SAAA,SAAAI,EAAAC,GACf,gBAAAj3B,EAAAwQ,GACAsmB,EACAE,EAAAC,QACA/2B,IAAAsQ,EAAArP,EAAAkD,GAAArE,GACA62B,EAAArmB,2TCVAjU,EAAA,KACAA,EAAA,KACAA,EAAQ,KAWRA,EAAQ,KACRA,EAAQ,sBCfRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRG,EAAAD,QAAiBF,EAAQ,qBCzIzBA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRA,EAAQ,KACRG,EAAAD,QAAiBF,EAAQ,IAAkBuoB,0BCT3C,SAAAnmB;;;;;;;;CAOA,SAAAA,EAAAw5B,GAC6DA,IAD7D,CAIC90B,EAAA,WAAqB;;;;;;;IAStB,SAAA1E,GACA,IACAy5B,EAAAz5B,EAAA,YACA,SAAA05B,EAAAn7B,GACAk7B,KAAA,MAAAA,EAAA,KAAAl7B,GAEA,SAAAo7B,EAAAp7B,EAAAq7B,GACAH,KAAA,SAAAA,EAAA,QAAAl7B,EAAAq7B,GAGA,GADAF,EAAA,QACA15B,EAAA,KACA,UAAA65B,MAAA,wBAEA,IAohBAC,EAphBAC,EAAA,WACA,SAAAA,EAAA/V,EAAAgW,GACAt1B,KAAAu1B,YAAA,KACAv1B,KAAAw1B,QAAAlW,EACAtf,KAAAy1B,MAAAH,IAAAz7B,MAAA,mBACAmG,KAAAu1B,YAAAD,KAAAI,eACA11B,KAAA21B,cACA,IAAAC,EAAA51B,UAAAw1B,SAAAx1B,KAAAw1B,QAAAG,cAAAL,GAwPA,OAtPAD,EAAAQ,kBAAA,WACA,GAAAv6B,EAAA,UAAAw6B,EAAA,iBACA,UAAAX,MAAA,kSAOAn7B,OAAAC,eAAAo7B,EAAA,QACAl7B,IAAA,WAEA,IADA,IAAA47B,EAAAV,EAAAW,QACAD,EAAAzW,QACAyW,IAAAzW,OAEA,OAAAyW,GAEA77B,YAAA,EACAgR,cAAA,IAEAlR,OAAAC,eAAAo7B,EAAA,WACAl7B,IAAA,WACA,OAAA87B,EAAAF,MAEA77B,YAAA,EACAgR,cAAA,IAEAlR,OAAAC,eAAAo7B,EAAA,eACAl7B,IAAA,WACA,OAAA+7B,GAEAh8B,YAAA,EACAgR,cAAA,IAEAmqB,EAAAc,aAAA,SAAAt8B,EAAAoH,GACA,GAAA60B,EAAA36B,eAAAtB,GACA,MAAAs7B,MAAA,yBAAAt7B,GAEA,IAAAyB,EAAA,kBAAAzB,GAAA,CACA,IAAAu8B,EAAA,QAAAv8B,EACAm7B,EAAAoB,GACAN,EAAAj8B,GAAAoH,EAAA3F,EAAA+5B,EAAAgB,GACApB,EAAAmB,OAGAp8B,OAAAC,eAAAo7B,EAAAn6B,UAAA,UACAf,IAAA,WACA,OAAA6F,KAAAw1B,SAEAt7B,YAAA,EACAgR,cAAA,IAEAlR,OAAAC,eAAAo7B,EAAAn6B,UAAA,QACAf,IAAA,WACA,OAAA6F,KAAAy1B,OAEAv7B,YAAA,EACAgR,cAAA,IAEAmqB,EAAAn6B,UAAAf,IAAA,SAAAU,GACA,IAAAk7B,EAAA/1B,KAAAs2B,YAAAz7B,GACA,GAAAk7B,EACA,OAAAA,EAAAR,YAAA16B,IAEAw6B,EAAAn6B,UAAAo7B,YAAA,SAAAz7B,GAEA,IADA,IAAAm7B,EAAAh2B,KACAg2B,GAAA,CACA,GAAAA,EAAAT,YAAAp6B,eAAAN,GACA,OAAAm7B,EAEAA,IAAAR,QAEA,aAEAH,EAAAn6B,UAAAq7B,KAAA,SAAAjB,GACA,IAAAA,EACA,UAAAH,MAAA,sBACA,OAAAn1B,KAAA21B,cAAAY,KAAAv2B,KAAAs1B,IAEAD,EAAAn6B,UAAAsoB,KAAA,SAAAgT,EAAA36B,GACA,GArGA,mBAqGA26B,EACA,UAAArB,MAAA,2BAAAqB,GAEA,IAAAC,EAAAz2B,KAAA21B,cAAAe,UAAA12B,KAAAw2B,EAAA36B,GACAk6B,EAAA/1B,KACA,kBACA,OAAA+1B,EAAAY,WAAAF,EAAAz2B,KAAAqB,UAAAxF,KAGAw5B,EAAAn6B,UAAA0gB,IAAA,SAAA4a,EAAAI,EAAAC,EAAAh7B,QACA,IAAA+6B,IAAuCA,OAAA/5B,QACvC,IAAAg6B,IAAuCA,EAAA,WACvC,IAAAh7B,IAAoCA,EAAA,MACpCo6B,GAAiC3W,OAAA2W,EAAAF,KAAA/1B,MACjC,IACA,OAAAA,KAAA21B,cAAA3a,OAAAhb,KAAAw2B,EAAAI,EAAAC,EAAAh7B,GAEA,QACAo6B,IAAA3W,SAGA+V,EAAAn6B,UAAAy7B,WAAA,SAAAH,EAAAI,EAAAC,EAAAh7B,QACA,IAAA+6B,IAAuCA,EAAA,WACvC,IAAAC,IAAuCA,EAAA,WACvC,IAAAh7B,IAAoCA,EAAA,MACpCo6B,GAAiC3W,OAAA2W,EAAAF,KAAA/1B,MACjC,IACA,IACA,OAAAA,KAAA21B,cAAA3a,OAAAhb,KAAAw2B,EAAAI,EAAAC,EAAAh7B,GAEA,MAAA60B,GACA,GAAA1wB,KAAA21B,cAAAmB,YAAA92B,KAAA0wB,GACA,MAAAA,GAIA,QACAuF,IAAA3W,SAGA+V,EAAAn6B,UAAA67B,QAAA,SAAA9W,EAAA2W,EAAAC,GACA,GAAA5W,EAAA8V,MAAA/1B,KACA,UAAAm1B,MAAA,+DACAlV,EAAA8V,MAAAiB,GAAAn9B,KAAA,gBAAoDmG,KAAAnG,KAAA,KAQpD,KADAomB,EAAAgX,QAAAC,IACAjX,EAAArkB,OAAAu7B,EAAA,CAGA,IAAAC,EAAAnX,EAAAgX,OAAAI,EACAD,GAAAnX,EAAAqX,cAAAD,EAAAE,GACAtX,EAAAuX,WACA,IAAAC,EAAAvB,EACAA,EAAAjW,EACAgW,GAAiC3W,OAAA2W,EAAAF,KAAA/1B,MACjC,IACAigB,EAAArkB,MAAA87B,GAAAzX,EAAAjU,OAAAiU,EAAAjU,KAAA2rB,aACA1X,EAAA2X,SAAA,MAEA,IACA,OAAA53B,KAAA21B,cAAAkC,WAAA73B,KAAAigB,EAAA2W,EAAAC,GAEA,MAAAnG,GACA,GAAA1wB,KAAA21B,cAAAmB,YAAA92B,KAAA0wB,GACA,MAAAA,GAIA,QAGAzQ,EAAAgX,QAAAC,GAAAjX,EAAAgX,QAAAa,IACA7X,EAAArkB,MAAAu7B,GAAAlX,EAAAjU,MAAAiU,EAAAjU,KAAA2rB,WACAP,GAAAnX,EAAAqX,cAAAC,EAAAF,IAGApX,EAAAuX,SAAA,EACAx3B,KAAA+3B,iBAAA9X,GAAA,GACAmX,GACAnX,EAAAqX,cAAAJ,EAAAG,EAAAH,KAGAjB,IAAA3W,OACA4W,EAAAuB,KAGApC,EAAAn6B,UAAA88B,aAAA,SAAA/X,GACA,GAAAA,EAAA8V,MAAA9V,EAAA8V,OAAA/1B,KAIA,IADA,IAAAi4B,EAAAj4B,KACAi4B,GAAA,CACA,GAAAA,IAAAhY,EAAA8V,KACA,MAAAZ,MAAA,8BAAAn1B,KACAnG,KAAA,8CAAAomB,EAAA8V,KAAAl8B,MAEAo+B,IAAA3Y,OAGAW,EAAAqX,cAAAY,EAAAhB,GACA,IAAAiB,KACAlY,EAAAmY,eAAAD,EACAlY,EAAAoY,MAAAr4B,KACA,IACAigB,EAAAjgB,KAAA21B,cAAAqC,aAAAh4B,KAAAigB,GAEA,MAAAgR,GAMA,MAHAhR,EAAAqX,cAAAQ,EAAAI,EAAAhB,GAEAl3B,KAAA21B,cAAAmB,YAAA92B,KAAAixB,GACAA,EASA,OAPAhR,EAAAmY,iBAAAD,GAEAn4B,KAAA+3B,iBAAA9X,EAAA,GAEAA,EAAAgX,OAAAiB,GACAjY,EAAAqX,cAAAC,EAAAW,GAEAjY,GAEAoV,EAAAn6B,UAAAo9B,kBAAA,SAAAz8B,EAAA26B,EAAAxqB,EAAAusB,GACA,OAAAv4B,KAAAg4B,aAAA,IAAAQ,EAAAC,EAAA58B,EAAA26B,EAAAxqB,EAAAusB,EAAA,QAEAlD,EAAAn6B,UAAAw9B,kBAAA,SAAA78B,EAAA26B,EAAAxqB,EAAAusB,EAAAI,GACA,OAAA34B,KAAAg4B,aAAA,IAAAQ,EAAAd,EAAA77B,EAAA26B,EAAAxqB,EAAAusB,EAAAI,KAEAtD,EAAAn6B,UAAA09B,kBAAA,SAAA/8B,EAAA26B,EAAAxqB,EAAAusB,EAAAI,GACA,OAAA34B,KAAAg4B,aAAA,IAAAQ,EAAArB,EAAAt7B,EAAA26B,EAAAxqB,EAAAusB,EAAAI,KAEAtD,EAAAn6B,UAAA29B,WAAA,SAAA5Y,GACA,GAAAA,EAAA8V,MAAA/1B,KACA,UAAAm1B,MAAA,qEACAlV,EAAA8V,MAAAiB,GAAAn9B,KAAA,gBAAoDmG,KAAAnG,KAAA,KACpDomB,EAAAqX,cAAAwB,EAAAvB,EAAAF,GACA,IACAr3B,KAAA21B,cAAAkD,WAAA74B,KAAAigB,GAEA,MAAAgR,GAIA,MAFAhR,EAAAqX,cAAAQ,EAAAgB,GACA94B,KAAA21B,cAAAmB,YAAA92B,KAAAixB,GACAA,EAKA,OAHAjxB,KAAA+3B,iBAAA9X,GAAA,GACAA,EAAAqX,cAAAJ,EAAA4B,GACA7Y,EAAAuX,SAAA,EACAvX,GAEAoV,EAAAn6B,UAAA68B,iBAAA,SAAA9X,EAAAhG,GACA,IAAAke,EAAAlY,EAAAmY,gBACA,GAAAne,IACAgG,EAAAmY,eAAA,MAEA,QAAA9+B,EAAA,EAA2BA,EAAA6+B,EAAA74B,OAA0BhG,IACrD6+B,EAAA7+B,GAAAy+B,iBAAA9X,EAAArkB,KAAAqe,IAGAob,EAAA0D,aACA1D,EA/PA,GAiQA2D,GACAn/B,KAAA,GACAo/B,UAAA,SAAAC,EAAAzrB,EAAA9Q,EAAAw8B,GACA,OAAAD,EAAAE,QAAAz8B,EAAAw8B,IAEAE,eAAA,SAAAH,EAAAzrB,EAAA9Q,EAAAsjB,GACA,OAAAiZ,EAAAlB,aAAAr7B,EAAAsjB,IAEAqZ,aAAA,SAAAJ,EAAAzrB,EAAA9Q,EAAAsjB,EAAA2W,EAAAC,GAAkF,OAAAqC,EAAArB,WAAAl7B,EAAAsjB,EAAA2W,EAAAC,IAClF0C,aAAA,SAAAL,EAAAzrB,EAAA9Q,EAAAsjB,GACA,OAAAiZ,EAAAL,WAAAl8B,EAAAsjB,KAGA2V,EAAA,WACA,SAAAA,EAAAG,EAAAyD,EAAAlE,GACAt1B,KAAAy5B,aAAgChB,UAAA,EAAAf,UAAA,EAAAP,UAAA,GAChCn3B,KAAA+1B,OACA/1B,KAAA05B,gBAAAF,EACAx5B,KAAA25B,QAAArE,SAAAsE,OAAAtE,EAAAkE,EAAAG,SACA35B,KAAA65B,UAAAvE,MAAAsE,OAAAJ,IAAAK,WACA75B,KAAA85B,cAAAxE,MAAAsE,OAAA55B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAA+5B,aACAzE,MAAA0E,YAAA1E,EAAAkE,EAAAO,cACA/5B,KAAAi6B,eACA3E,MAAA0E,YAAAR,IAAAS,gBACAj6B,KAAAk6B,mBACA5E,MAAA0E,YAAAh6B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAAm6B,UAAA7E,MAAA8E,SAAA9E,EAAAkE,EAAAW,WACAn6B,KAAAq6B,YACA/E,MAAA8E,SAAAZ,IAAAa,aACAr6B,KAAAs6B,gBAAAhF,MAAA8E,SAAAp6B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAAu6B,eACAjF,MAAAkF,cAAAlF,EAAAkE,EAAAe,gBACAv6B,KAAAy6B,iBACAnF,MAAAkF,cAAAhB,IAAAiB,kBACAz6B,KAAA06B,qBACApF,MAAAkF,cAAAx6B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAA26B,gBACArF,MAAA+D,eAAA/D,EAAAkE,EAAAmB,iBACA36B,KAAA46B,kBACAtF,MAAA+D,eAAAG,IAAAoB,mBACA56B,KAAA66B,sBACAvF,MAAA+D,eAAAr5B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAA86B,cACAxF,MAAAgE,aAAAhE,EAAAkE,EAAAsB,eACA96B,KAAA+6B,gBACAzF,MAAAgE,aAAAE,IAAAuB,iBACA/6B,KAAAg7B,oBACA1F,MAAAgE,aAAAt5B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAAi7B,cACA3F,MAAAiE,aAAAjE,EAAAkE,EAAAyB,eACAj7B,KAAAk7B,gBACA5F,MAAAiE,aAAAC,IAAA0B,iBACAl7B,KAAAm7B,oBACA7F,MAAAiE,aAAAv5B,KAAA+1B,KAAAyD,EAAAzD,MACA/1B,KAAAo7B,WAAA,KACAp7B,KAAAq7B,aAAA,KACAr7B,KAAAs7B,kBAAA,KACAt7B,KAAAu7B,iBAAA,KACA,IAAAC,EAAAlG,KAAA2D,UACAwC,EAAAjC,KAAA4B,YACAI,GAAAC,KAGAz7B,KAAAo7B,WAAAI,EAAAlG,EAAA0D,EACAh5B,KAAAq7B,aAAA7B,EACAx5B,KAAAs7B,kBAAAt7B,KACAA,KAAAu7B,iBAAAxF,EACAT,EAAA+D,iBACAr5B,KAAA26B,gBAAA3B,EACAh5B,KAAA46B,kBAAApB,EACAx5B,KAAA66B,sBAAA76B,KAAA+1B,MAEAT,EAAAgE,eACAt5B,KAAA86B,cAAA9B,EACAh5B,KAAA+6B,gBAAAvB,EACAx5B,KAAAg7B,oBAAAh7B,KAAA+1B,MAEAT,EAAAiE,eACAv5B,KAAAi7B,cAAAjC,EACAh5B,KAAAk7B,gBAAA1B,EACAx5B,KAAAm7B,oBAAAn7B,KAAA+1B,OA4FA,OAxFAH,EAAA16B,UAAAq7B,KAAA,SAAAmF,EAAApG,GACA,OAAAt1B,KAAA25B,QAAA35B,KAAA25B,QAAAC,OAAA55B,KAAA65B,UAAA75B,KAAA+1B,KAAA2F,EAAApG,GACA,IAAAD,EAAAqG,EAAApG,IAEAM,EAAA16B,UAAAw7B,UAAA,SAAAgF,EAAAlF,EAAA36B,GACA,OAAAmE,KAAA+5B,aACA/5B,KAAA+5B,aAAAC,YAAAh6B,KAAAi6B,eAAAj6B,KAAAk6B,mBAAAwB,EAAAlF,EAAA36B,GACA26B,GAEAZ,EAAA16B,UAAA8f,OAAA,SAAA0gB,EAAAlF,EAAAI,EAAAC,EAAAh7B,GACA,OAAAmE,KAAAm6B,UACAn6B,KAAAm6B,UAAAC,SAAAp6B,KAAAq6B,YAAAr6B,KAAAs6B,gBAAAoB,EAAAlF,EAAAI,EAAAC,EAAAh7B,GACA26B,EAAAp1B,MAAAw1B,EAAAC,IAEAjB,EAAA16B,UAAA47B,YAAA,SAAA4E,EAAAhL,GACA,OAAA1wB,KAAAu6B,gBACAv6B,KAAAu6B,eAAAC,cAAAx6B,KAAAy6B,iBAAAz6B,KAAA06B,qBAAAgB,EAAAhL,IAGAkF,EAAA16B,UAAA88B,aAAA,SAAA0D,EAAAzb,GACA,IAAA0b,EAAA1b,EACA,GAAAjgB,KAAA26B,gBACA36B,KAAAo7B,YACAO,EAAAvD,eAAA51B,KAAAxC,KAAAs7B,oBAEAK,EAAA37B,KAAA26B,gBAAAtB,eAAAr5B,KAAA46B,kBAAA56B,KAAA66B,sBAAAa,EAAAzb,MAEA0b,EAAA1b,QAGA,GAAAA,EAAA2b,WACA3b,EAAA2b,WAAA3b,OAEA,IAAAA,EAAArkB,MAAA68B,EAIA,UAAAtD,MAAA,+BAHAmD,EAAArY,GAMA,OAAA0b,GAEA/F,EAAA16B,UAAA28B,WAAA,SAAA6D,EAAAzb,EAAA2W,EAAAC,GACA,OAAA72B,KAAA86B,cACA96B,KAAA86B,cAAAxB,aAAAt5B,KAAA+6B,gBAAA/6B,KAAAg7B,oBAAAU,EAAAzb,EAAA2W,EAAAC,GACA5W,EAAAuW,SAAAp1B,MAAAw1B,EAAAC,IAEAjB,EAAA16B,UAAA29B,WAAA,SAAA6C,EAAAzb,GACA,IAAA1lB,EACA,GAAAyF,KAAAi7B,cACA1gC,EAAAyF,KAAAi7B,cAAA1B,aAAAv5B,KAAAk7B,gBAAAl7B,KAAAm7B,oBAAAO,EAAAzb,OAEA,CACA,IAAAA,EAAA2X,SACA,MAAAzC,MAAA,0BAEA56B,EAAA0lB,EAAA2X,SAAA3X,GAEA,OAAA1lB,GAEAq7B,EAAA16B,UAAAk+B,QAAA,SAAAsC,EAAAG,GAGA,IACA,OAAA77B,KAAAo7B,YACAp7B,KAAAo7B,WAAAnC,UAAAj5B,KAAAq7B,aAAAr7B,KAAAu7B,iBAAAG,EAAAG,GAEA,MAAA5K,GACAjxB,KAAA82B,YAAA4E,EAAAzK,KAGA2E,EAAA16B,UAAA68B,iBAAA,SAAAn8B,EAAAqe,GACA,IAAA6hB,EAAA97B,KAAAy5B,YACA/Y,EAAAob,EAAAlgC,GACA8M,EAAAozB,EAAAlgC,GAAA8kB,EAAAzG,EACA,GAAAvR,EAAA,EACA,UAAAysB,MAAA,4CAEA,MAAAzU,GAAA,GAAAhY,EAAA,CACA,IAAAmzB,GACApD,UAAAqD,EAAA,YACApE,UAAAoE,EAAA,YACA3E,UAAA2E,EAAA,YACAC,OAAAngC,GAEAoE,KAAAo5B,QAAAp5B,KAAA+1B,KAAA8F,KAGAjG,EAhKA,GAkKA4C,EAAA,WACA,SAAAA,EAAA58B,EAAAC,EAAA26B,EAAAwF,EAAAJ,EAAAhE,GACA53B,KAAAq4B,MAAA,KACAr4B,KAAAw3B,SAAA,EACAx3B,KAAAo4B,eAAA,KACAp4B,KAAAi8B,OAAA,eACAj8B,KAAApE,OACAoE,KAAAnE,SACAmE,KAAAgM,KAAAgwB,EACAh8B,KAAA47B,aACA57B,KAAA43B,WACA53B,KAAAw2B,WACA,IAAAj5B,EAAAyC,KAEApE,IAAAu7B,GAAA6E,KAAAE,KACAl8B,KAAAgb,OAAAwd,EAAAX,WAGA73B,KAAAgb,OAAA,WACA,OAAAwd,EAAAX,WAAAp+B,KAAA6B,EAAAiC,EAAAyC,KAAAqB,YAqEA,OAjEAm3B,EAAAX,WAAA,SAAA5X,EAAAtjB,EAAAod,GACAkG,IACAA,EAAAjgB,MAEAm8B,IACA,IAEA,OADAlc,EAAAuX,WACAvX,EAAA8V,KAAAgB,QAAA9W,EAAAtjB,EAAAod,GAEA,QACA,GAAAoiB,GACAC,IAEAD,MAGAniC,OAAAC,eAAAu+B,EAAAt9B,UAAA,QACAf,IAAA,WACA,OAAA6F,KAAAq4B,OAEAn+B,YAAA,EACAgR,cAAA,IAEAlR,OAAAC,eAAAu+B,EAAAt9B,UAAA,SACAf,IAAA,WACA,OAAA6F,KAAAi8B,QAEA/hC,YAAA,EACAgR,cAAA,IAEAstB,EAAAt9B,UAAAmhC,sBAAA,WACAr8B,KAAAs3B,cAAAJ,EAAAgB,IAEAM,EAAAt9B,UAAAo8B,cAAA,SAAAgF,EAAAC,EAAAC,GACA,GAAAx8B,KAAAi8B,SAAAM,GAAAv8B,KAAAi8B,SAAAO,EAOA,UAAArH,MAAAn1B,KAAApE,KAAA,KAAAoE,KAAAnE,OAAA,6BAAAygC,EAAA,uBAAAC,EAAA,KAAAC,EACA,QAAAA,EAAA,IACA,cAAAx8B,KAAAi8B,OAAA,MARAj8B,KAAAi8B,OAAAK,EACAA,GAAApF,IACAl3B,KAAAo4B,eAAA,OASAI,EAAAt9B,UAAAoG,SAAA,WACA,OAAAtB,KAAAgM,WAAA,IAAAhM,KAAAgM,KAAAywB,SACAz8B,KAAAgM,KAAAywB,SAGAziC,OAAAkB,UAAAoG,SAAA7H,KAAAuG,OAKAw4B,EAAAt9B,UAAAyvB,OAAA,WACA,OACA/uB,KAAAoE,KAAApE,KACAq7B,MAAAj3B,KAAAi3B,MACAp7B,OAAAmE,KAAAnE,OACAk6B,KAAA/1B,KAAA+1B,KAAAl8B,KACA29B,SAAAx3B,KAAAw3B,WAGAgB,EAxFA,GA+FAkE,EAAA3D,EAAA,cACA4D,EAAA5D,EAAA,WACA6D,EAAA7D,EAAA,QACA8D,KACAC,GAAA,EAEA,SAAAxE,EAAArY,GAGA,IAAAkc,GAAA,IAAAU,EAAAv9B,SAEA81B,GACA95B,EAAAqhC,KACAvH,EAAA95B,EAAAqhC,GAAAlgB,QAAA,IAGA2Y,EACAA,EAAAwH,GAAAR,GAGA9gC,EAAAohC,GAAAN,EAAA,IAGAnc,GAAA4c,EAAAr6B,KAAAyd,GAEA,SAAAmc,IACA,IAAAU,EAAA,CAEA,IADAA,GAAA,EACAD,EAAAv9B,QAAA,CACA,IAAAqc,EAAAkhB,EACAA,KACA,QAAAvjC,EAAA,EAA+BA,EAAAqiB,EAAArc,OAAkBhG,IAAA,CACjD,IAAA2mB,EAAAtE,EAAAriB,GACA,IACA2mB,EAAA8V,KAAAgB,QAAA9W,EAAA,WAEA,MAAAyQ,GACA2F,EAAA0G,iBAAArM,KAIA2F,EAAA2G,qBACAF,GAAA,GAQA,IAAA9F,GAAmBn9B,KAAA,WACnBq9B,EAAA,eAAAgB,EAAA,aAAAX,EAAA,YAAAF,EAAA,UAAAyB,EAAA,YAAAhB,EAAA,UACAW,EAAA,YAAAf,EAAA,YAAAP,EAAA,YACArB,KACAO,GACA4G,OAAAlE,EACAmE,iBAAA,WAAuC,OAAAjH,GACvC8G,iBAAAI,EACAH,mBAAAG,EACA7E,oBACA8E,kBAAA,WAAwC,OAAA/H,EAAA0D,EAAA,qCACxCsE,iBAAA,WAAuC,UACvCC,kBAAAH,EACAI,YAAA,WAAkC,OAAAJ,GAClCK,cAAA,WAAoC,aACpCC,iBAAA,SAAAC,GAIAA,GAhmBA,mBAgmBAA,EAAAjhB,UACA2Y,EAAAsI,EAAAjhB,QAAA,MAIAwZ,GAA6B3W,OAAA,KAAAyW,KAAA,IAAAV,EAAA,YAC7Ba,EAAA,KACAiG,EAAA,EACA,SAAAgB,KACA,SAAApE,EAAAl/B,GACA,wBAAAA,EAEAo7B,EAAA,eACA35B,EAAA,KAAA+5B,EA9mBA,CA+mBC,oBAAAh4B,gBAAA,oBAAAE,YAAAjC,GAED+5B,KAAAc,aAAA,4BAAA76B,EAAA+5B,EAAAsI,GACA,IAAAC,EAAA5jC,OAAA6G,yBACAg9B,EAAA7jC,OAAAC,eAQA,IAAA8+B,EAAA4E,EAAAV,OACAa,KACAnB,EAAA5D,EAAA,WACA6D,EAAA7D,EAAA,QACAgF,EAAA,oBACAJ,EAAAZ,iBAAA,SAAAr/B,GACA,GAAAigC,EAAAP,oBAAA,CACA,IAAAY,EAAAtgC,KAAAsgC,UACAA,EACA5N,QAAAM,MAAA,+BAAAsN,aAAA7I,MAAA6I,EAAAC,QAAAD,EAAA,UAA4HtgC,EAAAq4B,KAAAl8B,KAAA,UAAwB6D,EAAAuiB,MAAAviB,EAAAuiB,KAAApkB,OAAA,WAAoCmiC,eAAA7I,MAAA6I,EAAAE,WAAArhC,GAGxLuzB,QAAAM,MAAAhzB,KAIAigC,EAAAX,mBAAA,WACA,KAAAc,EAAAx+B,QAYA,IAXA,IAAA6+B,EAAA,WACA,IAAAC,EAAAN,EAAAO,QACA,IACAD,EAAArI,KAAAY,WAAA,WACA,MAAAyH,IAGA,MAAA1N,GACA4N,EAAA5N,KAGAoN,EAAAx+B,QACA6+B,KAIA,IAAAI,EAAAxF,EAAA,oCACA,SAAAuF,EAAA5gC,GACAigC,EAAAZ,iBAAAr/B,GACA,IACA,IAAAqyB,EAAAsF,EAAAkJ,GACAxO,GAAA,mBAAAA,GACAA,EAAAt2B,KAAAuG,KAAAtC,GAGA,MAAAuzB,KAGA,SAAA5B,EAAA90B,GACA,OAAAA,KAAAolB,KAEA,SAAA6e,EAAAjkC,GACA,OAAAA,EAEA,SAAAkkC,EAAAT,GACA,OAAAU,EAAAhiB,OAAAshB,GAEA,IAAAW,EAAA5F,EAAA,SACA6F,EAAA7F,EAAA,SACA8F,EAAA9F,EAAA,WACA+F,EAAA/F,EAAA,sBACAgG,EAAAhG,EAAA,sBACAl9B,EAAA,eACAmjC,EAAA,KACAC,GAAA,EACAC,GAAA,EACAC,EAAA,EACA,SAAAC,EAAAziB,EAAAsa,GACA,gBAAAhrB,GACA,IACAozB,EAAA1iB,EAAAsa,EAAAhrB,GAEA,MAAAglB,GACAoO,EAAA1iB,GAAA,EAAAsU,KAKA,IAAAqO,EAAA,WACA,IAAAC,GAAA,EACA,gBAAAC,GACA,kBACAD,IAGAA,GAAA,EACAC,EAAAp+B,MAAA,KAAAC,eAIAo+B,EAAA,+BACAC,EAAA3G,EAAA,oBAEA,SAAAsG,EAAA1iB,EAAAsa,EAAA18B,GACA,IAAAolC,EAAAL,IACA,GAAA3iB,IAAApiB,EACA,UAAA6C,UAAAqiC,GAEA,GAAA9iB,EAAAgiB,KAAAK,EAAA,CAEA,IAAArf,EAAA,KACA,IACA,iBAAAplB,GAAA,mBAAAA,IACAolB,EAAAplB,KAAAolB,MAGA,MAAAsR,GAIA,OAHA0O,EAAA,WACAN,EAAA1iB,GAAA,EAAAsU,IADA0O,GAGAhjB,EAGA,GAAAsa,IAAAiI,GAAA3kC,aAAAmkC,GACAnkC,EAAAY,eAAAwjC,IAAApkC,EAAAY,eAAAyjC,IACArkC,EAAAokC,KAAAK,EACAY,EAAArlC,GACA8kC,EAAA1iB,EAAApiB,EAAAokC,GAAApkC,EAAAqkC,SAEA,GAAA3H,IAAAiI,GAAA,mBAAAvf,EACA,IACAA,EAAAlmB,KAAAc,EAAAolC,EAAAP,EAAAziB,EAAAsa,IAAA0I,EAAAP,EAAAziB,GAAA,KAEA,MAAAsU,GACA0O,EAAA,WACAN,EAAA1iB,GAAA,EAAAsU,IADA0O,OAKA,CACAhjB,EAAAgiB,GAAA1H,EACA,IAAAtb,EAAAgB,EAAAiiB,GAaA,GAZAjiB,EAAAiiB,GAAArkC,EACAoiB,EAAAkiB,QAEA5H,IAAAgI,IAGAtiB,EAAAgiB,GAAAhiB,EAAAoiB,GACApiB,EAAAiiB,GAAAjiB,EAAAmiB,IAKA7H,IAAAiI,GAAA3kC,aAAA46B,MAAA,CAEA,IAAA0K,EAAAxK,EAAAyK,aAAAzK,EAAAyK,YAAA9zB,MACAqpB,EAAAyK,YAAA9zB,KAAA+xB,GACA8B,GAEAhC,EAAAtjC,EAAAmlC,GAAgFx0B,cAAA,EAAAhR,YAAA,EAAAiR,UAAA,EAAA5Q,MAAAslC,IAGhF,QAAAvmC,EAAA,EAA+BA,EAAAqiB,EAAArc,QAC/BygC,EAAApjB,EAAAhB,EAAAriB,KAAAqiB,EAAAriB,KAAAqiB,EAAAriB,KAAAqiB,EAAAriB,MAEA,MAAAqiB,EAAArc,QAAA23B,GAAAiI,EAAA,CACAviB,EAAAgiB,GAAAQ,EACA,IAEA,UAAAhK,MAAA,0BArKA,SAAA6K,GACA,GAAAA,KAAA1+B,WAAAtH,OAAAkB,UAAAoG,SAAA,CACA,IAAA2+B,EAAAD,EAAAv/B,aAAAu/B,EAAAv/B,YAAA5G,KACA,OAAAomC,GAAA,SAAAtd,KAAAE,UAAAmd,GAEA,OAAAA,IAAA1+B,WAAAtH,OAAAkB,UAAAoG,SAAA7H,KAAAumC,GAgKAE,CAAA3lC,IACAA,KAAA2jC,MAAA,KAAA3jC,EAAA2jC,MAAA,KAEA,MAAAjN,GACA,IAAAkP,EAAAlP,EACAkP,EAAAnC,UAAAzjC,EACA4lC,EAAAxjB,UACAwjB,EAAApK,KAAAV,EAAAW,QACAmK,EAAAlgB,KAAAoV,EAAAyK,YACAhC,EAAAt7B,KAAA29B,GACAxC,EAAArF,uBAMA,OAAA3b,EAEA,IAAAyjB,EAAArH,EAAA,2BACA,SAAA6G,EAAAjjB,GACA,GAAAA,EAAAgiB,KAAAQ,EAAA,CAMA,IACA,IAAApP,EAAAsF,EAAA+K,GACArQ,GAAA,mBAAAA,GACAA,EAAAt2B,KAAAuG,MAAwCg+B,UAAArhB,EAAAiiB,GAAAjiB,YAGxC,MAAAsU,IAEAtU,EAAAgiB,GAAAO,EACA,QAAA5lC,EAAA,EAA2BA,EAAAwkC,EAAAx+B,OAAmChG,IAC9DqjB,IAAAmhB,EAAAxkC,GAAAqjB,SACAmhB,EAAAvc,OAAAjoB,EAAA,IAKA,SAAAymC,EAAApjB,EAAAoZ,EAAAsK,EAAAnP,EAAAC,GACAyO,EAAAjjB,GACA,IAAA2jB,EAAA3jB,EAAAgiB,GACAzF,EAAAoH,EACA,mBAAApP,IAAAsN,EACA,mBAAArN,IAAAsN,EACA1I,EAAAuC,kBAAAz8B,EAAA,WACA,IACA,IAAA0kC,EAAA5jB,EAAAiiB,GACA4B,EAAAH,GAAAxB,IAAAwB,EAAAxB,GACA2B,IAEAH,EAAAvB,GAAAyB,EACAF,EAAAtB,GAAAuB,GAGA,IAAA/lC,EAAAw7B,EAAAna,IAAAsd,OAAAr8B,EAAA2jC,GAAAtH,IAAAuF,GAAAvF,IAAAsF,MAAA+B,IACAlB,EAAAgB,GAAA,EAAA9lC,GAEA,MAAAm2B,GAEA2O,EAAAgB,GAAA,EAAA3P,KAES2P,GAET,IACA3B,EAAA,WACA,SAAAA,EAAA1N,GAEA,KADAhxB,gBACA0+B,GACA,UAAAvJ,MAAA,kCAFAn1B,KAIA2+B,GAAAK,EAJAh/B,KAKA4+B,MACA,IACA5N,KAAAoO,EAPAp/B,KAOAi/B,GAAAG,EAPAp/B,KAOAk/B,IAEA,MAAAxO,GACA2O,EAVAr/B,MAUA,EAAA0wB,IAuFA,OApFAgO,EAAAp9B,SAAA,WACA,MAjBA,iDAmBAo9B,EAAAjiB,QAAA,SAAAliB,GACA,OAAA8kC,EAAA,IAAAr/B,KAAA,MAAAi/B,EAAA1kC,IAEAmkC,EAAAhiB,OAAA,SAAAgU,GACA,OAAA2O,EAAA,IAAAr/B,KAAA,MAAAk/B,EAAAxO,IAEAgO,EAAAhN,KAAA,SAAApsB,GACA,IAAAmX,EACAC,EACAC,EAAA,IAAA3c,KAAA,SAAAqC,EAAAo+B,GACAhkB,EAAApa,EACAqa,EAAA+jB,IAEA,SAAAC,EAAAnmC,GACAoiB,MAAAF,EAAAliB,IAEA,SAAAomC,EAAAjQ,GACA/T,MAAAD,EAAAgU,IAEA,QAAAhW,EAAA,EAAAkmB,EAAAt7B,EAA+CoV,EAAAkmB,EAAAthC,OAAsBob,IAAA,CACrE,IAAAngB,EAAAqmC,EAAAlmB,GACA2U,EAAA90B,KACAA,EAAAyF,KAAAyc,QAAAliB,IAEAA,EAAAolB,KAAA+gB,EAAAC,GAEA,OAAAhkB,GAEA+hB,EAAApN,IAAA,SAAAhsB,GASA,IARA,IAAAmX,EACAC,EACAC,EAAA,IAAA3c,KAAA,SAAAqC,EAAAo+B,GACAhkB,EAAApa,EACAqa,EAAA+jB,IAEAxmB,EAAA,EACA4mB,KACAnmB,EAAA,EAAAomB,EAAAx7B,EAA+CoV,EAAAomB,EAAAxhC,OAAsBob,IAAA,CACrE,IAAAngB,EAAAumC,EAAApmB,GACA2U,EAAA90B,KACAA,EAAAyF,KAAAyc,QAAAliB,IAEAA,EAAAolB,KAAA,SAAArd,GAA8C,gBAAA/H,GAC9CsmC,EAAAv+B,GAAA/H,IACA0f,GAEAwC,EAAAokB,IAJA,CAMoB5mB,GAAAyC,GACpBzC,IAIA,OAFAA,GACAwC,EAAAokB,GACAlkB,GAEA+hB,EAAAxjC,UAAAykB,KAAA,SAAAuR,EAAAC,GACA,IAAAkP,EAAA,IAAArgC,KAAAS,YAAA,MACAs1B,EAAAV,EAAAW,QAOA,OANAh2B,KAAA2+B,IAAAK,EACAh/B,KAAA4+B,GAAAp8B,KAAAuzB,EAAAsK,EAAAnP,EAAAC,GAGA4O,EAAA//B,KAAA+1B,EAAAsK,EAAAnP,EAAAC,GAEAkP,GAEA3B,EAAAxjC,UAAAk2B,MAAA,SAAAD,GACA,OAAAnxB,KAAA2f,KAAA,KAAAwR,IAEAuN,EAAAxjC,UAAA6lC,QAAA,SAAAC,GACA,IAAAX,EAAA,IAAArgC,KAAAS,YAAA,MACA4/B,EAAAxB,KACA,IAAA9I,EAAAV,EAAAW,QAOA,OANAh2B,KAAA2+B,IAAAK,EACAh/B,KAAA4+B,GAAAp8B,KAAAuzB,EAAAsK,EAAAW,KAGAjB,EAAA//B,KAAA+1B,EAAAsK,EAAAW,KAEAX,GAEA3B,EAnGA,GAuGAA,EAAA,QAAAA,EAAAjiB,QACAiiB,EAAA,OAAAA,EAAAhiB,OACAgiB,EAAA,KAAAA,EAAAhN,KACAgN,EAAA,IAAAA,EAAApN,IACA,IAAAoM,EAAApiC,EAAAqhC,GAAArhC,EAAA,QACA2lC,EAAA5L,EAAA0D,WAAA,oBACA9tB,EAAA2yB,EAAAtiC,EAAA,WACA2P,MAAAC,eACAD,YAAAE,SACAF,YAAA1Q,MACA0Q,IACAA,GAAoBC,cAAA,EAAAhR,YAAA,IAEpB+Q,EAAA9Q,IAAA,WAGA,OAAAmB,EAAA2lC,GAAA3lC,EAAA2lC,GAAA3lC,EAAAqhC,IAEA1xB,EAAA1D,IAAA,SAAA25B,GACAA,IAAAxC,EAGApjC,EAAA2lC,GAAAC,GAUA5lC,EAAAqhC,GAAAuE,EACAA,EAAAhmC,UAAA0hC,IACAuE,EAAAD,GAEAvD,EAAAF,iBAAAyD,KAGArD,EAAAviC,EAAA,UAAA2P,IAEA3P,EAAA,QAAAojC,EACA,IAAA0C,EAAArI,EAAA,eACA,SAAAoI,EAAAE,GACA,IAAAt4B,EAAAs4B,EAAAnmC,UACAomC,EAAA1D,EAAA70B,EAAA,QACA,IAAAu4B,IAAA,IAAAA,EAAAn2B,UAAAm2B,EAAAp2B,aAAA,CAKA,IAAAq2B,EAAAx4B,EAAA4W,KAEA5W,EAAA6zB,GAAA2E,EACAF,EAAAnmC,UAAAykB,KAAA,SAAA+gB,EAAAC,GACA,IAAAa,EAAAxhC,KAIA,OAHA,IAAA0+B,EAAA,SAAAjiB,EAAAC,GACA6kB,EAAA9nC,KAAA+nC,EAAA/kB,EAAAC,KAEAiD,KAAA+gB,EAAAC,IAEAU,EAAAD,IAAA,GAeA,GAAA1D,EAAA,CACAyD,EAAAzD,GACA,IAAA+D,EAAAnmC,EAAA,MACA,mBAAAmmC,IACAnmC,EAAA,MAjBA,SAAA2F,GACA,kBACA,IAAAygC,EAAAzgC,EAAAG,MAAApB,KAAAqB,WACA,GAAAqgC,aAAAhD,EACA,OAAAgD,EAEA,IAAAC,EAAAD,EAAAjhC,YAIA,OAHAkhC,EAAAP,IACAD,EAAAQ,GAEAD,GAOAE,CAAAH,IAKA,OADAziB,QAAAqW,EAAA0D,WAAA,0BAAA+E,EACAY;;;;;;;;AAiBA,IAAAd,EAAA5jC,OAAA6G,yBAEAg9B,EAAA7jC,OAAAC,eAEA4nC,EAAA7nC,OAAAwG,eAEAshC,EAAA9nC,OAAAY,OAEAmnC,EAAAv9B,MAAAtJ,UAAAqG,MAEAygC,EAAA,mBAEAC,EAAA,sBAEAC,EAAA7M,KAAA0D,WAAAiJ,GAEAG,EAAA9M,KAAA0D,WAAAkJ,GAEAG,EAAA,OAEAC,EAAA,QAEAC,EAAA,kBACA,SAAAC,EAAA/L,EAAA36B,GACA,OAAAw5B,KAAAW,QAAAxS,KAAAgT,EAAA36B,GAEA,SAAA2mC,EAAA3mC,EAAA26B,EAAAxqB,EAAAusB,EAAAI,GACA,OAAAtD,KAAAW,QAAA0C,kBAAA78B,EAAA26B,EAAAxqB,EAAAusB,EAAAI,GAEA,IAAA8J,EAAApN,KAAA0D,WACA2J,EAAA,oBAAArlC,OACAslC,EAAAD,EAAArlC,YAAAR,EACA+lC,EAAAF,GAAAC,GAAA,iBAAAplC,YAAAjC,EACAunC,EAAA,kBACAC,GAAA,MACA,SAAAtF,EAAAzjB,EAAAle,GACA,QAAAvC,EAAAygB,EAAAza,OAAA,EAAiChG,GAAA,EAAQA,IACzC,mBAAAygB,EAAAzgB,KACAygB,EAAAzgB,GAAAipC,EAAAxoB,EAAAzgB,GAAAuC,EAAA,IAAAvC,IAGA,OAAAygB,EAyBA,SAAAgpB,EAAA9/B,GACA,OAAAA,IAGA,IAAAA,EAAAkI,YAGA,mBAAAlI,EAAA9I,UAAA,IAAA8I,EAAAsE,KAEA,IAAAy7B,EAAA,oBAAAC,mBAAA1lC,gBAAA0lC,kBAGAhkB,IAAA,OAAA2jB,SAAA,IAAAA,EAAAznB,SACM,wBAAA7Z,SAAA7H,KAAAmpC,EAAAznB,SACN+nB,GAAAjkB,IAAA+jB,MAAAN,IAAAC,EAAA,aAIAQ,OAAA,IAAAP,EAAAznB,SACM,wBAAA7Z,SAAA7H,KAAAmpC,EAAAznB,WAAA6nB,MACNN,IAAAC,EAAA,aACAS,KACAC,EAAA,SAAAvnB,GAIA,GADAA,KAAA8mB,EAAA9mB,MACA,CAGA,IAAAwnB,EAAAF,EAAAtnB,EAAAlgB,MACA0nC,IACAA,EAAAF,EAAAtnB,EAAAlgB,MAAA6mC,EAAA,cAAA3mB,EAAAlgB,OAEA,IACAigB,GADA7b,MAAA8b,EAAAnf,QAAAimC,GACAU,GACA/gC,EAAAsZ,KAAAza,MAAApB,KAAAqB,WAIA,YAHAxE,GAAA0F,MACAuZ,EAAAynB,iBAEAhhC,IAEA,SAAAihC,EAAAxD,EAAAsB,EAAApmC,GACA,IAAA+P,EAAA2yB,EAAAoC,EAAAsB,IACAr2B,GAAA/P,IAEA0iC,EAAA1iC,EAAAomC,KAEAr2B,GAAoB/Q,YAAA,EAAAgR,cAAA,KAKpB,GAAAD,KAAAC,aAAA,QAQAD,EAAAE,gBACAF,EAAA1Q,MACA,IAAAkpC,EAAAx4B,EAAA9Q,IACAupC,EAAAz4B,EAAA1D,IAEAo8B,EAAArC,EAAAsC,OAAA,GACAN,EAAAF,EAAAO,GACAL,IACAA,EAAAF,EAAAO,GAAAlB,EAAA,cAAAkB,IAEA14B,EAAA1D,IAAA,SAAAs8B,GAGA,IAAAlnC,EAAAqD,MACArD,GAAAqjC,IAAA4C,IACAjmC,EAAAimC,GAEAjmC,KAGAA,EAAA2mC,IAEA3mC,EAAAmnC,oBAAAH,EAAAN,GAIAK,GACAA,EAAAtiC,MAAAzE,EAAAmmC,GAEA,mBAAAe,GACAlnC,EAAA2mC,GAAAO,EACAlnC,EAAA0f,iBAAAsnB,EAAAN,GAAA,IAGA1mC,EAAA2mC,GAAA,OAKAr4B,EAAA9Q,IAAA,WAGA,IAAAwC,EAAAqD,KAIA,GAHArD,GAAAqjC,IAAA4C,IACAjmC,EAAAimC,IAEAjmC,EACA,YAEA,IAAAkf,EAAAlf,EAAA2mC,GACA,GAAAznB,EACA,OAAAA,EAEA,GAAA4nB,EAAA,CAOA,IAAAlpC,EAAAkpC,KAAAhqC,KAAAuG,MACA,GAAAzF,EAKA,OAJA0Q,EAAA1D,IAAA9N,KAAAuG,KAAAzF,GACA,mBAAAoC,EAAAkmC,IACAlmC,EAAAonC,gBAAAzC,GAEA/mC,EAGA,aAEAsjC,EAAAmC,EAAAsB,EAAAr2B,IAEA,SAAAqyB,EAAA0C,EAAAtK,EAAAx6B,GACA,GAAAw6B,EACA,QAAAp8B,EAAA,EAAuBA,EAAAo8B,EAAAp2B,OAAuBhG,IAC9CkqC,EAAAxD,EAAA,KAAAtK,EAAAp8B,GAAA4B,OAGA,CACA,IAAA8oC,KACA,QAAA1C,KAAAtB,EACA,MAAAsB,EAAAsC,OAAA,MACAI,EAAAxhC,KAAA8+B,GAGA,QAAAnpB,EAAA,EAAuBA,EAAA6rB,EAAA1kC,OAAyB6Y,IAChDqrB,EAAAxD,EAAAgE,EAAA7rB,GAAAjd,IAIA,IAAA+oC,EAAAxB,EAAA,oBAEA,SAAAyB,EAAAjE,GACA,IAAAkE,EAAAvB,EAAA3C,GACA,GAAAkE,EAAA,CAGAvB,EAAAH,EAAAxC,IAAAkE,EACAvB,EAAA3C,GAAA,WACA,IAAA5hC,EAAAm/B,EAAAn8B,UAAA4+B,GACA,OAAA5hC,EAAAiB,QACA,OACAU,KAAAikC,GAAA,IAAAE,EACA,MACA,OACAnkC,KAAAikC,GAAA,IAAAE,EAAA9lC,EAAA,IACA,MACA,OACA2B,KAAAikC,GAAA,IAAAE,EAAA9lC,EAAA,GAAAA,EAAA,IACA,MACA,OACA2B,KAAAikC,GAAA,IAAAE,EAAA9lC,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA,MACA,OACA2B,KAAAikC,GAAA,IAAAE,EAAA9lC,EAAA,GAAAA,EAAA,GAAAA,EAAA,GAAAA,EAAA,IACA,MACA,QACA,UAAA82B,MAAA,wBAIAiP,EAAAxB,EAAA3C,GAAAkE,GACA,IACA7C,EADAzuB,EAAA,IAAAsxB,EAAA,cAEA,IAAA7C,KAAAzuB,EAEA,mBAAAotB,GAAA,iBAAAqB,GAEA,SAAAA,GACA,mBAAAzuB,EAAAyuB,GACAsB,EAAA3C,GAAA/kC,UAAAomC,GAAA,WACA,OAAAthC,KAAAikC,GAAA3C,GAAAlgC,MAAApB,KAAAikC,GAAA5iC,YAIAw8B,EAAA+E,EAAA3C,GAAA/kC,UAAAomC,GACA/5B,IAAA,SAAAtG,GACA,mBAAAA,GACAjB,KAAAikC,GAAA3C,GAAAiB,EAAAthC,EAAAg/B,EAAA,IAAAqB,GAIA8C,EAAApkC,KAAAikC,GAAA3C,GAAArgC,IAGAjB,KAAAikC,GAAA3C,GAAArgC,GAGA9G,IAAA,WACA,OAAA6F,KAAAikC,GAAA3C,MArBA,CAyBSA,GAET,IAAAA,KAAA6C,EACA,cAAA7C,GAAA6C,EAAAhpC,eAAAmmC,KACAsB,EAAA3C,GAAAqB,GAAA6C,EAAA7C,KAIA,SAAA/D,EAAA5gC,EAAA9C,EAAAwqC,GAEA,IADA,IAAAt7B,EAAApM,EACAoM,MAAA5N,eAAAtB,IACAkP,EAAA84B,EAAA94B,IAEAA,GAAApM,EAAA9C,KAEAkP,EAAApM,GAEA,IACAu8B,EADAoL,EAAA7B,EAAA5oC,GAEA,GAAAkP,KAAAmwB,EAAAnwB,EAAAu7B,MACApL,EAAAnwB,EAAAu7B,GAAAv7B,EAAAlP,GAIAkpC,EADAh6B,GAAA60B,EAAA70B,EAAAlP,KACA,CACA,IAAA0qC,EAAAF,EAAAnL,EAAAoL,EAAAzqC,GACAkP,EAAAlP,GAAA,WACA,OAAA0qC,EAAAvkC,KAAAqB,YAEA+iC,EAAAr7B,EAAAlP,GAAAq/B,GAGA,OAAAA,EAyBA,SAAAkL,EAAAI,EAAAlmB,GACAkmB,EAAA/B,EAAA,qBAAAnkB,EAEA,IAAAmmB,GAAA,EACAC,GAAA,EACA,SAAAC,IACA,GAAAF,EACA,OAAAC,EAEAD,GAAA,EACA,IACA,IAAAG,EAAAjC,EAAA7lB,UAAAC,UAIA,OAHA,IAAA6nB,EAAAn7B,QAAA,eAAAm7B,EAAAn7B,QAAA,kBAAAm7B,EAAAn7B,QAAA,WACAi7B,GAAA,GAEAA,EAEA,MAAAhU;;;;;;;GAaA2E,KAAAc,aAAA,oBAAA76B,GAEA,IAAAupC,EAAA/nC,SAAA5B,UAAAoG,SACAwjC,EAAArC,EAAA,oBACAsC,EAAAtC,EAAA,WACAuC,EAAAvC,EAAA,SACAwC,EAAA,WACA,sBAAAjlC,KAAA,CACA,IAAAklC,EAAAllC,KAAA8kC,GACA,GAAAI,EACA,yBAAAA,EACAL,EAAAzjC,MAAApB,KAAA8kC,GAAAzjC,WAGArH,OAAAkB,UAAAoG,SAAA7H,KAAAyrC,GAGA,GAAAllC,OAAAgf,QAAA,CACA,IAAAmmB,EAAA7pC,EAAAypC,GACA,GAAAI,EACA,OAAAN,EAAAzjC,MAAA+jC,EAAA9jC,WAGA,GAAArB,OAAAm1B,MAAA,CACA,IAAAiQ,EAAA9pC,EAAA0pC,GACA,GAAAI,EACA,OAAAP,EAAAzjC,MAAAgkC,EAAA/jC,YAIA,OAAAwjC,EAAAzjC,MAAApB,KAAAqB,YAEA4jC,EAAAH,GAAAD,EACA/nC,SAAA5B,UAAAoG,SAAA2jC,EAEA,IAAAI,EAAArrC,OAAAkB,UAAAoG,SAEAtH,OAAAkB,UAAAoG,SAAA,WACA,OAAAtB,gBAAAgf,QAFA,mBAKAqmB,EAAAjkC,MAAApB,KAAAqB;;;;;;;;AAgBA,IAAAikC,GACApJ,MAAA,GAEAqJ,KACAC,KACAC,EAAA,qCACAC,EAAA,oCACA,SAAArI,EAAAuF,EAAA+C,EAAAC,GACA,IAAAC,EAAAD,KAAAjlB,KAAAqhB,EACA8D,EAAAF,KAAAG,IAAA9D,EACA+D,EAAAJ,KAAAK,WAAA,iBACAC,EAAAN,KAAAO,OAAA,qBACAC,EAAA3D,EAAAoD,GACAQ,EAAA,IAAAR,EAAA,IACAS,EAAA,kBACAC,EAAA,IAAAD,EAAA,IACAzO,EAAA,SAAA5X,EAAAtjB,EAAAmf,GAGA,IAAAmE,EAAAumB,UAAA,CAGA,IAAAtN,EAAAjZ,EAAAuW,SACA,iBAAA0C,KAAAuN,cAEAxmB,EAAAuW,SAAA,SAAA1a,GAA8C,OAAAod,EAAAuN,YAAA3qB,IAC9CmE,EAAAilB,iBAAAhM,GAGAjZ,EAAAjF,OAAAiF,EAAAtjB,GAAAmf,IACA,IAAAkgB,EAAA/b,EAAA+b,QACA,GAAAA,GAAA,iBAAAA,KAAAsD,KAAA,CAIA,IAAAoH,EAAAzmB,EAAAilB,iBAAAjlB,EAAAilB,iBAAAjlB,EAAAuW,SACA75B,EAAAmpC,GAAArsC,KAAAkD,EAAAmf,EAAAlgB,KAAA8qC,EAAA1K,MAIA2K,EAAA,SAAA7qB,GAIA,GADAA,KAAA8mB,EAAA9mB,MACA,CAKA,IAAAnf,EAAAqD,MAAA8b,EAAAnf,QAAAimC,EACAgE,EAAAjqC,EAAA4oC,EAAAzpB,EAAAlgB,MAAAymC,IACA,GAAAuE,EAGA,OAAAA,EAAAtnC,OACAu4B,EAAA+O,EAAA,GAAAjqC,EAAAmf,QAOA,IADA,IAAA+qB,EAAAD,EAAArlC,QACAjI,EAAA,EAA+BA,EAAAutC,EAAAvnC,UAC/Bwc,IAAA,IAAAA,EAAA4pB,IADqDpsC,IAIrDu+B,EAAAgP,EAAAvtC,GAAAqD,EAAAmf,KAMAgrB,EAAA,SAAAhrB,GAIA,GADAA,KAAA8mB,EAAA9mB,MACA,CAKA,IAAAnf,EAAAqD,MAAA8b,EAAAnf,QAAAimC,EACAgE,EAAAjqC,EAAA4oC,EAAAzpB,EAAAlgB,MAAAwmC,IACA,GAAAwE,EAGA,OAAAA,EAAAtnC,OACAu4B,EAAA+O,EAAA,GAAAjqC,EAAAmf,QAOA,IADA,IAAA+qB,EAAAD,EAAArlC,QACAjI,EAAA,EAA+BA,EAAAutC,EAAAvnC,UAC/Bwc,IAAA,IAAAA,EAAA4pB,IADqDpsC,IAIrDu+B,EAAAgP,EAAAvtC,GAAAqD,EAAAmf,KAKA,SAAAirB,EAAA/G,EAAA4F,GACA,IAAA5F,EACA,SAEA,IAAAgH,GAAA,EACApB,QAAA/oC,IAAA+oC,EAAA1J,OACA8K,EAAApB,EAAA1J,MAEA,IAAA+K,EAAArB,KAAAsB,GACAC,GAAA,EACAvB,QAAA/oC,IAAA+oC,EAAAwB,SACAD,EAAAvB,EAAAwB,QAEA,IAAAC,GAAA,EACAzB,QAAA/oC,IAAA+oC,EAAA3uB,KACAowB,EAAAzB,EAAA3uB,IAGA,IADA,IAAAlO,EAAAi3B,EACAj3B,MAAA5N,eAAA0qC,IACA98B,EAAA84B,EAAA94B,GAMA,IAJAA,GAAAi3B,EAAA6F,KAEA98B,EAAAi3B,IAEAj3B,EACA,SAEA,GAAAA,EAAAq9B,GACA,SAIA,IAQAkB,EARAC,KACAC,EAAAz+B,EAAAq9B,GAAAr9B,EAAA88B,GACA4B,EAAA1+B,EAAA05B,EAAAqD,IACA/8B,EAAA+8B,GACA4B,EAAA3+B,EAAA05B,EAAAuD,IACAj9B,EAAAi9B,GACA2B,EAAA5+B,EAAA05B,EAAAyD,IACAn9B,EAAAm9B,GAEAN,KAAAgC,UACAN,EAAAv+B,EAAA05B,EAAAmD,EAAAgC,UACA7+B,EAAA68B,EAAAgC,UAEA,IAsDArP,EAAAyO,EAtDA,WAGA,IAAAO,EAAAM,WAGA,OAAAL,EAAA/tC,KAAA8tC,EAAA5qC,OAAA4qC,EAAA5D,UAAA4D,EAAAO,QAAAhB,EAAAH,EAAAY,EAAAvL,UAuCA,SAAA/b,GACA,OAAAunB,EAAA/tC,KAAA8tC,EAAA5qC,OAAA4qC,EAAA5D,UAAA1jB,EAAAjF,OAAAusB,EAAAvL,UASArD,EAAAqO,EA/CA,SAAA/mB,GAIA,IAAAA,EAAAumB,UAAA,CACA,IAAAuB,EAAAxC,EAAAtlB,EAAA0jB,WACAqE,OAAA,EACAD,IACAC,EAAAD,EAAA9nB,EAAA6nB,QAAA1F,EAAAC,IAEA,IAAA4F,EAAAD,GAAA/nB,EAAAtjB,OAAAqrC,GACA,GAAAC,EACA,QAAA3uC,EAAA,EAAmCA,EAAA2uC,EAAA3oC,OAA0BhG,IAE7D,GADA2uC,EAAA3uC,KACA2mB,EAAA,CACAgoB,EAAA1mB,OAAAjoB,EAAA,GAEA2mB,EAAAumB,WAAA,EACA,IAAAyB,EAAA3oC,SAGA2gB,EAAAioB,YAAA,EACAjoB,EAAAtjB,OAAAqrC,GAAA,MAEA,OAQA,GAAA/nB,EAAAioB,WAGA,OAAAT,EAAAhuC,KAAAwmB,EAAAtjB,OAAAsjB,EAAA0jB,UAAA1jB,EAAA6nB,QAAAhB,EAAAH,EAAA1mB,EAAA+b,UAQA,SAAA/b,GACA,OAAAwnB,EAAAhuC,KAAAwmB,EAAAtjB,OAAAsjB,EAAA0jB,UAAA1jB,EAAAjF,OAAAiF,EAAA+b,UASAmM,EAAAvC,KAAAwC,KAAAxC,EAAAwC,KALA,SAAAnoB,EAAAiZ,GACA,IAAAmP,SAAAnP,EACA,mBAAAmP,GAAApoB,EAAAuW,WAAA0C,GACA,WAAAmP,GAAApoB,EAAAilB,mBAAAhM,GAGAoP,EAAAjT,UAAA0D,WAAA,wBACAwP,EAAA,SAAAC,EAAAC,EAAAC,EAAAC,EAAAtB,EAAAO,GAGA,YAFA,IAAAP,IAA0CA,GAAA,QAC1C,IAAAO,IAAqCA,GAAA,GACrC,WACA,IAAAjrC,EAAAqD,MAAA4iC,EACA1J,EAAA73B,UAAA,GACA,IAAA63B,EACA,OAAAsP,EAAApnC,MAAApB,KAAAqB,WAKA,IAAAunC,GAAA,EACA,sBAAA1P,EAAA,CACA,IAAAA,EAAAuN,YACA,OAAA+B,EAAApnC,MAAApB,KAAAqB,WAEAunC,GAAA,EAEA,IAAA3B,KAAAuB,EAAAtP,EAAAv8B,EAAA0E,WAAA,CAGA,IAUAymC,EAVAnE,EAAAtiC,UAAA,GACA26B,EAAA36B,UAAA,GACA,GAAAinC,EAEA,QAAAhvC,EAAA,EAAmCA,EAAAgvC,EAAAhpC,OAA8BhG,IACjE,GAAAqqC,IAAA2E,EAAAhvC,GACA,OAAAkvC,EAAApnC,MAAApB,KAAAqB,WAKA,IAAAi+B,GAAA,OACAziC,IAAAm/B,EACA8L,GAAA,GAEA,IAAA9L,EACA8L,GAAA,GAEA,IAAA9L,EACA8L,GAAA,GAGAA,IAAA9L,OAAA8L,QACAxI,IAAAtD,OAAAsD,MAEA,IAEA0I,EAFAjS,EAAAV,KAAAW,QACA+R,EAAAxC,EAAA5B,GAEA,GAAAoE,EAYAC,EAAAD,EAAAD,EAAA1F,EAAAC,OAZA,CAEA,IAEApF,EAAAqF,GAFAqB,EAAAtB,GAGAwG,EAAAvG,GAFAqB,EAAAvB,GAGAmD,EAAA5B,MACA4B,EAAA5B,GAAAtB,GAAApF,EACAsI,EAAA5B,GAAAvB,GAAAyG,EACAb,EAAAF,EAAAe,EAAA5L,EAKA,IAiBAphC,EAjBAosC,EAAAtrC,EAAAqrC,GACAH,GAAA,EACA,GAAAI,GAGA,GADAJ,GAAA,EACAV,EACA,IAAA7tC,EAAA,EAAuCA,EAAA2uC,EAAA3oC,OAA0BhG,IACjE,GAAA6uC,EAAAF,EAAA3uC,GAAA4/B,GAEA,YAMA+O,EAAAtrC,EAAAqrC,MAGA,IAAAc,EAAAnsC,EAAA8D,YAAA,KACAsoC,EAAAvD,EAAAsD,GACAC,IACAltC,EAAAktC,EAAApF,IAEA9nC,IACAA,EAAAitC,EAAAL,EAAA9E,GAIA4D,EAAAvL,UACAsD,IAIAiI,EAAAvL,QAAAsD,MAAA,GAEAiI,EAAA5qC,SACA4qC,EAAAO,UACAP,EAAA5D,YACA4D,EAAAM,aACA,IAAA77B,EAAAg7B,EAAA1B,EAAA,KAEAt5B,IACAA,EAAAu7B,YAEA,IAAAtnB,EAAA8V,EAAA6C,kBAAA/8B,EAAAq9B,EAAAltB,EAAA08B,EAAAC,GA2BA,OAxBApB,EAAA5qC,OAAA,KAEAqP,IACAA,EAAAu7B,SAAA,MAIAjI,IACAtD,EAAAsD,MAAA,GAEArf,EAAA+b,UACA/b,EAAAtjB,SACAsjB,EAAA6nB,UACA7nB,EAAA0jB,YACAiF,IAEA3oB,EAAAilB,iBAAAhM,GAEA0O,EAIAK,EAAAe,QAAA/oB,GAHAgoB,EAAAzlC,KAAAyd,GAKAonB,EACA1qC,OADA,KAyIA,OApIAoM,EAAA88B,GAAA0C,EAAAf,EAAAnB,EAAA9N,EAAAI,EAAA0O,GACAC,IACAv+B,EAAAu9B,GAAAiC,EAAAjB,EAAAf,EA7JA,SAAAtmB,GACA,OAAAqnB,EAAA7tC,KAAA8tC,EAAA5qC,OAAA4qC,EAAA5D,UAAA1jB,EAAAjF,OAAAusB,EAAAvL,UA4JArD,EAAA0O,GAAA,IAEAt+B,EAAA+8B,GAAA,WACA,IAGAgC,EAHAnrC,EAAAqD,MAAA4iC,EACAe,EAAAtiC,UAAA,GACA26B,EAAA36B,UAAA,GAGAymC,OADAjrC,IAAAm/B,KAGA,IAAAA,IAGA,IAAAA,MAIAA,OAAA8L,UAEA,IAAA5O,EAAA73B,UAAA,GACA,IAAA63B,EACA,OAAAuO,EAAArmC,MAAApB,KAAAqB,WAEA,IAAA4lC,GACAA,EAAAQ,EAAAvO,EAAAv8B,EAAA0E,WADA,CAIA,IACA2mC,EADAD,EAAAxC,EAAA5B,GAEAoE,IACAC,EAAAD,EAAAD,EAAA1F,EAAAC,IAEA,IAAA4F,EAAAD,GAAArrC,EAAAqrC,GACA,GAAAC,EACA,QAAA3uC,EAAA,EAA+BA,EAAA2uC,EAAA3oC,OAA0BhG,IAAA,CACzD,IAAA2vC,EAAAhB,EAAA3uC,GACA,GAAA6uC,EAAAc,EAAA/P,GAWA,OAVA+O,EAAA1mB,OAAAjoB,EAAA,GAEA2vC,EAAAzC,WAAA,EACA,IAAAyB,EAAA3oC,SAGA2pC,EAAAf,YAAA,EACAvrC,EAAAqrC,GAAA,MAEAiB,EAAAlT,KAAA8C,WAAAoQ,GACA5B,EACA1qC,OAEA,EAQA,OAAA8qC,EAAArmC,MAAApB,KAAAqB,aAEA0H,EAAAi9B,GAAA,WAKA,IAJA,IAEAC,KACAW,EAAAsC,EAHAlpC,MAAA4iC,EACAvhC,UAAA,IAGA/H,EAAA,EAA2BA,EAAAstC,EAAAtnC,OAAkBhG,IAAA,CAC7C,IAAA2mB,EAAA2mB,EAAAttC,GACA4/B,EAAAjZ,EAAAilB,iBAAAjlB,EAAAilB,iBAAAjlB,EAAAuW,SACAyP,EAAAzjC,KAAA02B,GAEA,OAAA+M,GAEAl9B,EAAAm9B,GAAA,WACA,IAAAvpC,EAAAqD,MAAA4iC,EACAe,EAAAtiC,UAAA,GACA,GAAAsiC,EAiBA,CACA,IAAAoE,EAAAxC,EAAA5B,GACA,GAAAoE,EAAA,CACA,IAAAC,EAAAD,EAAA1F,GACA8G,EAAApB,EAAA3F,GACAwE,EAAAjqC,EAAAqrC,GACAoB,EAAAzsC,EAAAwsC,GACA,GAAAvC,EACA,KAAAyC,EAAAzC,EAAArlC,QACA,IAAAjI,EAAA,EAAuCA,EAAA+vC,EAAA/pC,OAAwBhG,IAAA,CAC/D,IACA4/B,GADAjZ,EAAAopB,EAAA/vC,IACA4rC,iBAAAjlB,EAAAilB,iBAAAjlB,EAAAuW,SACAx2B,KAAA8lC,GAAArsC,KAAAuG,KAAA2jC,EAAAzK,EAAAjZ,EAAA+b,UAGA,GAAAoN,EAEA,IADAC,EAAAD,EAAA7nC,QACAjI,EAAA,EAAuCA,EAAA+vC,EAAA/pC,OAAwBhG,IAAA,CAC/D,IAAA2mB,EACAiZ,GADAjZ,EAAAopB,EAAA/vC,IACA4rC,iBAAAjlB,EAAAilB,iBAAAjlB,EAAAuW,SACAx2B,KAAA8lC,GAAArsC,KAAAuG,KAAA2jC,EAAAzK,EAAAjZ,EAAA+b,eArCA,CAEA,IADA,IAAAx2B,EAAAxL,OAAAwL,KAAA7I,GACArD,EAAA,EAA+BA,EAAAkM,EAAAlG,OAAiBhG,IAAA,CAChD,IAAAgoC,EAAA97B,EAAAlM,GACA+rB,EAAAogB,EAAAhoC,KAAA6jC,GACAgI,EAAAjkB,KAAA,GAKAikB,GAAA,mBAAAA,GACAtpC,KAAAkmC,GAAAzsC,KAAAuG,KAAAspC,GAIAtpC,KAAAkmC,GAAAzsC,KAAAuG,KAAA,kBA2BA,GAAAqnC,EACA,OAAArnC,MAIAokC,EAAAr7B,EAAA88B,GAAA2B,GACApD,EAAAr7B,EAAA+8B,GAAA2B,GACAE,GACAvD,EAAAr7B,EAAAm9B,GAAAyB,GAEAD,GACAtD,EAAAr7B,EAAAi9B,GAAA0B,IAEA,EAGA,IADA,IAAA6B,KACAjwC,EAAA,EAAmBA,EAAAqsC,EAAArmC,OAAiBhG,IACpCiwC,EAAAjwC,GAAAytC,EAAApB,EAAArsC,GAAAssC,GAEA,OAAA2D,EAEA,SAAAL,EAAAvsC,EAAAgnC,GACA,IAAA6F,KACA,QAAAlI,KAAA3kC,EAAA,CACA,IAAA0oB,EAAAogB,EAAAhoC,KAAA6jC,GACAgI,EAAAjkB,KAAA,GACA,GAAAikB,KAAA3F,GAAA2F,IAAA3F,GAAA,CACA,IAAAiD,EAAAjqC,EAAA2kC,GACA,GAAAsF,EACA,QAAAttC,EAAA,EAA+BA,EAAAstC,EAAAtnC,OAAkBhG,IACjDkwC,EAAAhnC,KAAAokC,EAAAttC,KAKA,OAAAkwC;;;;;;;;AA0BA,IAAAC,EAAAhH,EAAA,YACA,SAAAiH,EAAArsC,EAAAssC,EAAAC,EAAAC,GACA,IAAAC,EAAA,KACAC,EAAA,KAEAH,GAAAC,EACA,IAAAG,KACA,SAAAhS,EAAA/X,GACA,IAAAjU,EAAAiU,EAAAjU,KAyBA,OAFAA,EAAA+N,KAAA,GAtBA,WACA,IACAkG,EAAAjF,OAAA5Z,MAAApB,KAAAqB,WAEA,QAIA4e,EAAAjU,MAAAiU,EAAAjU,KAAA2rB,aACA,iBAAA3rB,EAAAywB,gBAGAuN,EAAAh+B,EAAAywB,UAEAzwB,EAAAywB,WAGAzwB,EAAAywB,SAAAgN,GAAA,SAMAz9B,EAAAywB,SAAAqN,EAAA1oC,MAAA/D,EAAA2O,EAAA+N,MACAkG,EAEA,SAAA3E,EAAA2E,GACA,OAAA8pB,EAAA9pB,EAAAjU,KAAAywB,UAEAqN,EACAvM,EAAAlgC,EAnCAssC,GAAAE,EAmCA,SAAA3Q,GAA0D,gBAAA37B,EAAAwc,GAC1D,sBAAAA,EAAA,IACA,IAAAiiB,GACAS,SAAA,KACA9E,WAAA,aAAAkS,EACAI,MAAA,YAAAJ,GAAA,aAAAA,EAAA9vB,EAAA,WACAA,QAEAkG,EAAAuiB,EAAAmH,EAAA5vB,EAAA,GAAAiiB,EAAAhE,EAAA1c,GACA,IAAA2E,EACA,OAAAA,EAGA,IAAAiqB,EAAAjqB,EAAAjU,KAAAywB,SAkBA,MAjBA,iBAAAyN,EAGAF,EAAAE,GAAAjqB,EAEAiqB,IAGAA,EAAAT,GAAAxpB,GAIAiqB,KAAAC,KAAAD,EAAAE,OAAA,mBAAAF,EAAAC,KACA,mBAAAD,EAAAE,QACAnqB,EAAAkqB,IAAAD,EAAAC,IAAArvC,KAAAovC,GACAjqB,EAAAmqB,MAAAF,EAAAE,MAAAtvC,KAAAovC,IAEA,iBAAAA,KACAA,EAEAjqB,EAIA,OAAAiZ,EAAA93B,MAAA/D,EAAA0c,MAGAgwB,EACAxM,EAAAlgC,EAAAusC,EAAA,SAAA1Q,GAA6D,gBAAA37B,EAAAwc,GAC7D,IACAkG,EADArS,EAAAmM,EAAA,GAEA,iBAAAnM,EAEAqS,EAAA+pB,EAAAp8B,IAIAqS,EAAArS,KAAA67B,MAGAxpB,EAAArS,GAGAqS,GAAA,iBAAAA,EAAArkB,KACA,iBAAAqkB,EAAAgX,QACAhX,EAAA2X,UAAA3X,EAAAjU,KAAA2rB,YAAA,IAAA1X,EAAAuX,YACA,iBAAA5pB,SACAo8B,EAAAp8B,GAEAA,IACAA,EAAA67B,GAAA,MAGAxpB,EAAA8V,KAAA8C,WAAA5Y,IAKAiZ,EAAA93B,MAAA/D,EAAA0c;;;;;;;GAgBA,IAAAswB,EAAArwC,OAAAyoC,EAAA,mBAAAzoC,OAAAC,eACAqwC,EAAAtwC,OAAAyoC,EAAA,6BACAzoC,OAAA6G,yBACA2hB,EAAAxoB,OAAAY,OACA2vC,EAAA9H,EAAA,mBAuCA,SAAA+H,EAAAxK,EAAAsB,GACA,OAAAtB,KAAAuK,IAAAvK,EAAAuK,GAAAjJ,GAEA,SAAAmJ,EAAAzK,EAAAsB,EAAAr2B,GAcA,OAZAjR,OAAA0wC,SAAAz/B,KACAA,EAAAC,cAAA,GAEAD,EAAAC,eAEA80B,EAAAuK,IAAAvwC,OAAA0wC,SAAA1K,IACAqK,EAAArK,EAAAuK,GAAsDp/B,UAAA,EAAA5Q,WAEtDylC,EAAAuK,KACAvK,EAAAuK,GAAAjJ,IAAA,IAGAr2B,EAEA,SAAA0/B,EAAA3K,EAAAsB,EAAAr2B,EAAA2/B,GACA,IACA,OAAAP,EAAArK,EAAAsB,EAAAr2B,GAEA,MAAAylB,GACA,IAAAzlB,EAAAC,aAwBA,MAAAwlB,OArBA,IAAAka,SACA3/B,EAAAC,aAGAD,EAAAC,aAAA0/B,EAEA,IACA,OAAAP,EAAArK,EAAAsB,EAAAr2B,GAEA,MAAAylB,GACA,IAAAma,EAAA,KACA,IACAA,EAAAloB,KAAAE,UAAA5X,GAEA,MAAAylB,GACAma,EAAA5/B,EAAA3J,WAEA8uB,QAAA9Z,IAAA,4BAAAgrB,EAAA,sBAAAuJ,EAAA,gBAAA7K,EAAA,+BAAAtP;;;;;;;;;;;;;;;AA0EA,IAwGAoa,IACA,4BACA,aACA,aACA,eACA,sBACA,cACA,eACA,cACA,eACA,oBACA,4BACA,kBACA,aACA,iBACA,UACA,iBACA,UACA,SACA,QACA,WACA,WACA,WACA,mBACA,UACA,qBACA,SACA,gBACA,oBACA,wBACA,0BAOAC,IAAA,+EA6DAC,IAAA,QACAC,IAAA,gEACAC,IAAA,2BACAC,IACA,6EACA,oBAEAC,IAAA,wFACAC,IAAA,kCACAC,IAAA,mBACAC,IAnNA,QACA,kBACA,eACA,qBACA,WACA,cACA,OACA,SACA,UACA,iBACA,SACA,mBACA,oBACA,iBACA,YACA,QACA,QACA,cACA,aACA,WACA,OACA,UACA,YACA,WACA,YACA,WACA,OACA,iBACA,UACA,QACA,QACA,QACA,UACA,WACA,oBACA,QACA,UACA,UACA,WACA,QACA,OACA,YACA,aACA,iBACA,qBACA,YACA,aACA,aACA,YACA,WACA,YACA,UACA,aACA,oBACA,QACA,OACA,UACA,gBACA,cACA,eACA,eACA,oBACA,uBACA,4BACA,mBACA,sBACA,yBACA,cACA,WACA,cACA,YACA,WACA,aACA,QACA,SACA,SACA,SACA,UACA,SACA,kBACA,cACA,OACA,OACA,UACA,SACA,UACA,aACA,eACA,cACA,YACA,aACA,WACA,mBACA,gBACA,UACA,SAoHA7+B,QAbA,wEACA,qCACA,WAtGA,iFACA,sFACA,oFACA,oBA8GAo+B,IA3EA,kFACA,iFACA,0EAIA,WACA,cACA,cACA,iBACA,mBACA,kBACA,eACA,aACA,gBACA,gBACA,iBACA,kBACA,cACA,eACA,iBACA,cACA,OACA,UACA,YACA,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","file":"app/polyfills.bda9be8e4a8b7262835e.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 658);\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar TO_STRING = 'toString';\nvar $toString = Function[TO_STRING];\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","var core = module.exports = { version: '2.5.7' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","'use strict';\nvar fails = require('./_fails');\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// most Object methods by ES6 should accept primitives\nvar $export = require('./_export');\nvar core = require('./_core');\nvar fails = require('./_fails');\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n","// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = require('./_ctx');\nvar IObject = require('./_iobject');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar asc = require('./_array-species-create');\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nif (require('./_descriptors')) {\n var LIBRARY = require('./_library');\n var global = require('./_global');\n var fails = require('./_fails');\n var $export = require('./_export');\n var $typed = require('./_typed');\n var $buffer = require('./_typed-buffer');\n var ctx = require('./_ctx');\n var anInstance = require('./_an-instance');\n var propertyDesc = require('./_property-desc');\n var hide = require('./_hide');\n var redefineAll = require('./_redefine-all');\n var toInteger = require('./_to-integer');\n var toLength = require('./_to-length');\n var toIndex = require('./_to-index');\n var toAbsoluteIndex = require('./_to-absolute-index');\n var toPrimitive = require('./_to-primitive');\n var has = require('./_has');\n var classof = require('./_classof');\n var isObject = require('./_is-object');\n var toObject = require('./_to-object');\n var isArrayIter = require('./_is-array-iter');\n var create = require('./_object-create');\n var getPrototypeOf = require('./_object-gpo');\n var gOPN = require('./_object-gopn').f;\n var getIterFn = require('./core.get-iterator-method');\n var uid = require('./_uid');\n var wks = require('./_wks');\n var createArrayMethod = require('./_array-methods');\n var createArrayIncludes = require('./_array-includes');\n var speciesConstructor = require('./_species-constructor');\n var ArrayIterators = require('./es6.array.iterator');\n var Iterators = require('./_iterators');\n var $iterDetect = require('./_iter-detect');\n var setSpecies = require('./_set-species');\n var arrayFill = require('./_array-fill');\n var arrayCopyWithin = require('./_array-copy-within');\n var $DP = require('./_object-dp');\n var $GOPD = require('./_object-gopd');\n var dP = $DP.f;\n var gOPD = $GOPD.f;\n var RangeError = global.RangeError;\n var TypeError = global.TypeError;\n var Uint8Array = global.Uint8Array;\n var ARRAY_BUFFER = 'ArrayBuffer';\n var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;\n var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\n var PROTOTYPE = 'prototype';\n var ArrayProto = Array[PROTOTYPE];\n var $ArrayBuffer = $buffer.ArrayBuffer;\n var $DataView = $buffer.DataView;\n var arrayForEach = createArrayMethod(0);\n var arrayFilter = createArrayMethod(2);\n var arraySome = createArrayMethod(3);\n var arrayEvery = createArrayMethod(4);\n var arrayFind = createArrayMethod(5);\n var arrayFindIndex = createArrayMethod(6);\n var arrayIncludes = createArrayIncludes(true);\n var arrayIndexOf = createArrayIncludes(false);\n var arrayValues = ArrayIterators.values;\n var arrayKeys = ArrayIterators.keys;\n var arrayEntries = ArrayIterators.entries;\n var arrayLastIndexOf = ArrayProto.lastIndexOf;\n var arrayReduce = ArrayProto.reduce;\n var arrayReduceRight = ArrayProto.reduceRight;\n var arrayJoin = ArrayProto.join;\n var arraySort = ArrayProto.sort;\n var arraySlice = ArrayProto.slice;\n var arrayToString = ArrayProto.toString;\n var arrayToLocaleString = ArrayProto.toLocaleString;\n var ITERATOR = wks('iterator');\n var TAG = wks('toStringTag');\n var TYPED_CONSTRUCTOR = uid('typed_constructor');\n var DEF_CONSTRUCTOR = uid('def_constructor');\n var ALL_CONSTRUCTORS = $typed.CONSTR;\n var TYPED_ARRAY = $typed.TYPED;\n var VIEW = $typed.VIEW;\n var WRONG_LENGTH = 'Wrong length!';\n\n var $map = createArrayMethod(1, function (O, length) {\n return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);\n });\n\n var LITTLE_ENDIAN = fails(function () {\n // eslint-disable-next-line no-undef\n return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;\n });\n\n var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {\n new Uint8Array(1).set({});\n });\n\n var toOffset = function (it, BYTES) {\n var offset = toInteger(it);\n if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');\n return offset;\n };\n\n var validate = function (it) {\n if (isObject(it) && TYPED_ARRAY in it) return it;\n throw TypeError(it + ' is not a typed array!');\n };\n\n var allocate = function (C, length) {\n if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {\n throw TypeError('It is not a typed array constructor!');\n } return new C(length);\n };\n\n var speciesFromList = function (O, list) {\n return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);\n };\n\n var fromList = function (C, list) {\n var index = 0;\n var length = list.length;\n var result = allocate(C, length);\n while (length > index) result[index] = list[index++];\n return result;\n };\n\n var addGetter = function (it, key, internal) {\n dP(it, key, { get: function () { return this._d[internal]; } });\n };\n\n var $from = function from(source /* , mapfn, thisArg */) {\n var O = toObject(source);\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iterFn = getIterFn(O);\n var i, length, values, result, step, iterator;\n if (iterFn != undefined && !isArrayIter(iterFn)) {\n for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {\n values.push(step.value);\n } O = values;\n }\n if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);\n for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n };\n\n var $of = function of(/* ...items */) {\n var index = 0;\n var length = arguments.length;\n var result = allocate(this, length);\n while (length > index) result[index] = arguments[index++];\n return result;\n };\n\n // iOS Safari 6.x fails here\n var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });\n\n var $toLocaleString = function toLocaleString() {\n return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);\n };\n\n var proto = {\n copyWithin: function copyWithin(target, start /* , end */) {\n return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n },\n every: function every(callbackfn /* , thisArg */) {\n return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars\n return arrayFill.apply(validate(this), arguments);\n },\n filter: function filter(callbackfn /* , thisArg */) {\n return speciesFromList(this, arrayFilter(validate(this), callbackfn,\n arguments.length > 1 ? arguments[1] : undefined));\n },\n find: function find(predicate /* , thisArg */) {\n return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n findIndex: function findIndex(predicate /* , thisArg */) {\n return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n forEach: function forEach(callbackfn /* , thisArg */) {\n arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n indexOf: function indexOf(searchElement /* , fromIndex */) {\n return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n includes: function includes(searchElement /* , fromIndex */) {\n return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n join: function join(separator) { // eslint-disable-line no-unused-vars\n return arrayJoin.apply(validate(this), arguments);\n },\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars\n return arrayLastIndexOf.apply(validate(this), arguments);\n },\n map: function map(mapfn /* , thisArg */) {\n return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduce.apply(validate(this), arguments);\n },\n reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduceRight.apply(validate(this), arguments);\n },\n reverse: function reverse() {\n var that = this;\n var length = validate(that).length;\n var middle = Math.floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n },\n some: function some(callbackfn /* , thisArg */) {\n return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n sort: function sort(comparefn) {\n return arraySort.call(validate(this), comparefn);\n },\n subarray: function subarray(begin, end) {\n var O = validate(this);\n var length = O.length;\n var $begin = toAbsoluteIndex(begin, length);\n return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(\n O.buffer,\n O.byteOffset + $begin * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)\n );\n }\n };\n\n var $slice = function slice(start, end) {\n return speciesFromList(this, arraySlice.call(validate(this), start, end));\n };\n\n var $set = function set(arrayLike /* , offset */) {\n validate(this);\n var offset = toOffset(arguments[1], 1);\n var length = this.length;\n var src = toObject(arrayLike);\n var len = toLength(src.length);\n var index = 0;\n if (len + offset > length) throw RangeError(WRONG_LENGTH);\n while (index < len) this[offset + index] = src[index++];\n };\n\n var $iterators = {\n entries: function entries() {\n return arrayEntries.call(validate(this));\n },\n keys: function keys() {\n return arrayKeys.call(validate(this));\n },\n values: function values() {\n return arrayValues.call(validate(this));\n }\n };\n\n var isTAIndex = function (target, key) {\n return isObject(target)\n && target[TYPED_ARRAY]\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n };\n var $getDesc = function getOwnPropertyDescriptor(target, key) {\n return isTAIndex(target, key = toPrimitive(key, true))\n ? propertyDesc(2, target[key])\n : gOPD(target, key);\n };\n var $setDesc = function defineProperty(target, key, desc) {\n if (isTAIndex(target, key = toPrimitive(key, true))\n && isObject(desc)\n && has(desc, 'value')\n && !has(desc, 'get')\n && !has(desc, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !desc.configurable\n && (!has(desc, 'writable') || desc.writable)\n && (!has(desc, 'enumerable') || desc.enumerable)\n ) {\n target[key] = desc.value;\n return target;\n } return dP(target, key, desc);\n };\n\n if (!ALL_CONSTRUCTORS) {\n $GOPD.f = $getDesc;\n $DP.f = $setDesc;\n }\n\n $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {\n getOwnPropertyDescriptor: $getDesc,\n defineProperty: $setDesc\n });\n\n if (fails(function () { arrayToString.call({}); })) {\n arrayToString = arrayToLocaleString = function toString() {\n return arrayJoin.call(this);\n };\n }\n\n var $TypedArrayPrototype$ = redefineAll({}, proto);\n redefineAll($TypedArrayPrototype$, $iterators);\n hide($TypedArrayPrototype$, ITERATOR, $iterators.values);\n redefineAll($TypedArrayPrototype$, {\n slice: $slice,\n set: $set,\n constructor: function () { /* noop */ },\n toString: arrayToString,\n toLocaleString: $toLocaleString\n });\n addGetter($TypedArrayPrototype$, 'buffer', 'b');\n addGetter($TypedArrayPrototype$, 'byteOffset', 'o');\n addGetter($TypedArrayPrototype$, 'byteLength', 'l');\n addGetter($TypedArrayPrototype$, 'length', 'e');\n dP($TypedArrayPrototype$, TAG, {\n get: function () { return this[TYPED_ARRAY]; }\n });\n\n // eslint-disable-next-line max-statements\n module.exports = function (KEY, BYTES, wrapper, CLAMPED) {\n CLAMPED = !!CLAMPED;\n var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + KEY;\n var SETTER = 'set' + KEY;\n var TypedArray = global[NAME];\n var Base = TypedArray || {};\n var TAC = TypedArray && getPrototypeOf(TypedArray);\n var FORCED = !TypedArray || !$typed.ABV;\n var O = {};\n var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];\n var getter = function (that, index) {\n var data = that._d;\n return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);\n };\n var setter = function (that, index, value) {\n var data = that._d;\n if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;\n data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);\n };\n var addElement = function (that, index) {\n dP(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n if (FORCED) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME, '_d');\n var index = 0;\n var offset = 0;\n var buffer, byteLength, length, klass;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new $ArrayBuffer(byteLength);\n } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n buffer = data;\n offset = toOffset($offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - offset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (TYPED_ARRAY in data) {\n return fromList(TypedArray, data);\n } else {\n return $from.call(TypedArray, data);\n }\n hide(that, '_d', {\n b: buffer,\n o: offset,\n l: byteLength,\n e: length,\n v: new $DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);\n hide(TypedArrayPrototype, 'constructor', TypedArray);\n } else if (!fails(function () {\n TypedArray(1);\n }) || !fails(function () {\n new TypedArray(-1); // eslint-disable-line no-new\n }) || !$iterDetect(function (iter) {\n new TypedArray(); // eslint-disable-line no-new\n new TypedArray(null); // eslint-disable-line no-new\n new TypedArray(1.5); // eslint-disable-line no-new\n new TypedArray(iter); // eslint-disable-line no-new\n }, true)) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME);\n var klass;\n // `ws` module bug, temporarily remove validation length for Uint8Array\n // https://github.com/websockets/ws/pull/645\n if (!isObject(data)) return new Base(toIndex(data));\n if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n return $length !== undefined\n ? new Base(data, toOffset($offset, BYTES), $length)\n : $offset !== undefined\n ? new Base(data, toOffset($offset, BYTES))\n : new Base(data);\n }\n if (TYPED_ARRAY in data) return fromList(TypedArray, data);\n return $from.call(TypedArray, data);\n });\n arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {\n if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);\n });\n TypedArray[PROTOTYPE] = TypedArrayPrototype;\n if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;\n }\n var $nativeIterator = TypedArrayPrototype[ITERATOR];\n var CORRECT_ITER_NAME = !!$nativeIterator\n && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);\n var $iterator = $iterators.values;\n hide(TypedArray, TYPED_CONSTRUCTOR, true);\n hide(TypedArrayPrototype, TYPED_ARRAY, NAME);\n hide(TypedArrayPrototype, VIEW, true);\n hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);\n\n if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {\n dP(TypedArrayPrototype, TAG, {\n get: function () { return NAME; }\n });\n }\n\n O[NAME] = TypedArray;\n\n $export($export.G + $export.W + $export.F * (TypedArray != Base), O);\n\n $export($export.S, NAME, {\n BYTES_PER_ELEMENT: BYTES\n });\n\n $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {\n from: $from,\n of: $of\n });\n\n if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);\n\n $export($export.P, NAME, proto);\n\n setSpecies(NAME);\n\n $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });\n\n $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);\n\n if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;\n\n $export($export.P + $export.F * fails(function () {\n new TypedArray(1).slice();\n }), NAME, { slice: $slice });\n\n $export($export.P + $export.F * (fails(function () {\n return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();\n }) || !fails(function () {\n TypedArrayPrototype.toLocaleString.call([1, 2]);\n })), NAME, { toLocaleString: $toLocaleString });\n\n Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;\n if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);\n };\n} else module.exports = function () { /* empty */ };\n","var Map = require('./es6.map');\nvar $export = require('./_export');\nvar shared = require('./_shared')('metadata');\nvar store = shared.store || (shared.store = new (require('./es6.weak-map'))());\n\nvar getOrCreateMetadataMap = function (target, targetKey, create) {\n var targetMetadata = store.get(target);\n if (!targetMetadata) {\n if (!create) return undefined;\n store.set(target, targetMetadata = new Map());\n }\n var keyMetadata = targetMetadata.get(targetKey);\n if (!keyMetadata) {\n if (!create) return undefined;\n targetMetadata.set(targetKey, keyMetadata = new Map());\n } return keyMetadata;\n};\nvar ordinaryHasOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? false : metadataMap.has(MetadataKey);\n};\nvar ordinaryGetOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);\n};\nvar ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {\n getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);\n};\nvar ordinaryOwnMetadataKeys = function (target, targetKey) {\n var metadataMap = getOrCreateMetadataMap(target, targetKey, false);\n var keys = [];\n if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); });\n return keys;\n};\nvar toMetaKey = function (it) {\n return it === undefined || typeof it == 'symbol' ? it : String(it);\n};\nvar exp = function (O) {\n $export($export.S, 'Reflect', O);\n};\n\nmodule.exports = {\n store: store,\n map: getOrCreateMetadataMap,\n has: ordinaryHasOwnMetadata,\n get: ordinaryGetOwnMetadata,\n set: ordinaryDefineOwnMetadata,\n keys: ordinaryOwnMetadataKeys,\n key: toMetaKey,\n exp: exp\n};\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","module.exports = false;\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar global = require('./_global');\nvar dP = require('./_object-dp');\nvar DESCRIPTORS = require('./_descriptors');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n","module.exports = function (it, Constructor, name, forbiddenField) {\n if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n","var ctx = require('./_ctx');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar getIterFn = require('./core.get-iterator-method');\nvar BREAK = {};\nvar RETURN = {};\nvar exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {\n var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);\n var f = ctx(fn, that, entries ? 2 : 1);\n var index = 0;\n var length, step, iterator, result;\n if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if (result === BREAK || result === RETURN) return result;\n } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {\n result = call(iterator, f, step.value, entries);\n if (result === BREAK || result === RETURN) return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n","var redefine = require('./_redefine');\nmodule.exports = function (target, src, safe) {\n for (var key in src) redefine(target, key, src[key], safe);\n return target;\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || Function(\"return this\")() || (1, eval)(\"this\");\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","module.exports = {};\n","var isObject = require('./_is-object');\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n","exports.f = {}.propertyIsEnumerable;\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2018 Denis Pushkarev (zloirock.ru)'\n});\n","exports.f = Object.getOwnPropertySymbols;\n","var classof = require('./_classof');\nvar ITERATOR = require('./_wks')('iterator');\nvar Iterators = require('./_iterators');\nmodule.exports = require('./_core').getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var ITERATOR = require('./_wks')('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n","'use strict';\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar wks = require('./_wks');\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n var fns = exec(defined, SYMBOL, ''[KEY]);\n var strfn = fns[0];\n var rxfn = fns[1];\n if (fails(function () {\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n })) {\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n","'use strict';\nvar global = require('./_global');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar redefineAll = require('./_redefine-all');\nvar meta = require('./_meta');\nvar forOf = require('./_for-of');\nvar anInstance = require('./_an-instance');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar $iterDetect = require('./_iter-detect');\nvar setToStringTag = require('./_set-to-string-tag');\nvar inheritIfRequired = require('./_inherit-if-required');\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar uid = require('./_uid');\nvar TYPED = uid('typed_array');\nvar VIEW = uid('view');\nvar ABV = !!(global.ArrayBuffer && global.DataView);\nvar CONSTR = ABV;\nvar i = 0;\nvar l = 9;\nvar Typed;\n\nvar TypedArrayConstructors = (\n 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'\n).split(',');\n\nwhile (i < l) {\n if (Typed = global[TypedArrayConstructors[i++]]) {\n hide(Typed.prototype, TYPED, true);\n hide(Typed.prototype, VIEW, true);\n } else CONSTR = false;\n}\n\nmodule.exports = {\n ABV: ABV,\n CONSTR: CONSTR,\n TYPED: TYPED,\n VIEW: VIEW\n};\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","// 7.2.8 IsRegExp(argument)\nvar isObject = require('./_is-object');\nvar cof = require('./_cof');\nvar MATCH = require('./_wks')('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar SPECIES = require('./_wks')('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var isObject = require('./_is-object');\nvar setPrototypeOf = require('./_set-proto').set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n","// 20.2.2.28 Math.sign(x)\nmodule.exports = Math.sign || function sign(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n","// 20.2.2.14 Math.expm1(x)\nvar $expm1 = Math.expm1;\nmodule.exports = (!$expm1\n // Old FF bug\n || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || $expm1(-2e-17) != -2e-17\n) ? function expm1(x) {\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : $expm1;\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = require('./_is-regexp');\nvar defined = require('./_defined');\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n","var MATCH = require('./_wks')('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n","// check on default Array iterator\nvar Iterators = require('./_iterators');\nvar ITERATOR = require('./_wks')('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var aLen = arguments.length;\n var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);\n var end = aLen > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar global = require('./_global');\nvar DESCRIPTORS = require('./_descriptors');\nvar LIBRARY = require('./_library');\nvar $typed = require('./_typed');\nvar hide = require('./_hide');\nvar redefineAll = require('./_redefine-all');\nvar fails = require('./_fails');\nvar anInstance = require('./_an-instance');\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nvar toIndex = require('./_to-index');\nvar gOPN = require('./_object-gopn').f;\nvar dP = require('./_object-dp').f;\nvar arrayFill = require('./_array-fill');\nvar setToStringTag = require('./_set-to-string-tag');\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length!';\nvar WRONG_INDEX = 'Wrong index!';\nvar $ArrayBuffer = global[ARRAY_BUFFER];\nvar $DataView = global[DATA_VIEW];\nvar Math = global.Math;\nvar RangeError = global.RangeError;\n// eslint-disable-next-line no-shadow-restricted-names\nvar Infinity = global.Infinity;\nvar BaseBuffer = $ArrayBuffer;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\nvar BUFFER = 'buffer';\nvar BYTE_LENGTH = 'byteLength';\nvar BYTE_OFFSET = 'byteOffset';\nvar $BUFFER = DESCRIPTORS ? '_b' : BUFFER;\nvar $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;\nvar $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;\n\n// IEEE754 conversions based on https://github.com/feross/ieee754\nfunction packIEEE754(value, mLen, nBytes) {\n var buffer = new Array(nBytes);\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var i = 0;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n var e, m, c;\n value = abs(value);\n // eslint-disable-next-line no-self-compare\n if (value != value || value === Infinity) {\n // eslint-disable-next-line no-self-compare\n m = value != value ? 1 : 0;\n e = eMax;\n } else {\n e = floor(log(value) / LN2);\n if (value * (c = pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * pow(2, eBias - 1) * pow(2, mLen);\n e = 0;\n }\n }\n for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);\n buffer[--i] |= s * 128;\n return buffer;\n}\nfunction unpackIEEE754(buffer, mLen, nBytes) {\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = eLen - 7;\n var i = nBytes - 1;\n var s = buffer[i--];\n var e = s & 127;\n var m;\n s >>= 7;\n for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : s ? -Infinity : Infinity;\n } else {\n m = m + pow(2, mLen);\n e = e - eBias;\n } return (s ? -1 : 1) * m * pow(2, e - mLen);\n}\n\nfunction unpackI32(bytes) {\n return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];\n}\nfunction packI8(it) {\n return [it & 0xff];\n}\nfunction packI16(it) {\n return [it & 0xff, it >> 8 & 0xff];\n}\nfunction packI32(it) {\n return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];\n}\nfunction packF64(it) {\n return packIEEE754(it, 52, 8);\n}\nfunction packF32(it) {\n return packIEEE754(it, 23, 4);\n}\n\nfunction addGetter(C, key, internal) {\n dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });\n}\n\nfunction get(view, bytes, index, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = store.slice(start, start + bytes);\n return isLittleEndian ? pack : pack.reverse();\n}\nfunction set(view, bytes, index, conversion, value, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = conversion(+value);\n for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];\n}\n\nif (!$typed.ABV) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer, ARRAY_BUFFER);\n var byteLength = toIndex(length);\n this._b = arrayFill.call(new Array(byteLength), 0);\n this[$LENGTH] = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = buffer[$LENGTH];\n var offset = toInteger(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n this[$BUFFER] = buffer;\n this[$OFFSET] = offset;\n this[$LENGTH] = byteLength;\n };\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, BYTE_LENGTH, '_l');\n addGetter($DataView, BUFFER, '_b');\n addGetter($DataView, BYTE_LENGTH, '_l');\n addGetter($DataView, BYTE_OFFSET, '_o');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1]));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packF32, value, arguments[2]);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packF64, value, arguments[2]);\n }\n });\n} else {\n if (!fails(function () {\n $ArrayBuffer(1);\n }) || !fails(function () {\n new $ArrayBuffer(-1); // eslint-disable-line no-new\n }) || fails(function () {\n new $ArrayBuffer(); // eslint-disable-line no-new\n new $ArrayBuffer(1.5); // eslint-disable-line no-new\n new $ArrayBuffer(NaN); // eslint-disable-line no-new\n return $ArrayBuffer.name != ARRAY_BUFFER;\n })) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer);\n return new BaseBuffer(toIndex(length));\n };\n var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];\n for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);\n }\n if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;\n }\n // iOS Safari 7.x bug\n var view = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = $DataView[PROTOTYPE].setInt8;\n view.setInt8(0, 2147483648);\n view.setInt8(1, 2147483649);\n if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, true);\n}\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\nhide($DataView[PROTOTYPE], $typed.VIEW, true);\nexports[ARRAY_BUFFER] = $ArrayBuffer;\nexports[DATA_VIEW] = $DataView;\n","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n","// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function (fn, args, that) {\n var un = that === undefined;\n switch (args.length) {\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n","'use strict';\nvar toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n\nmodule.exports = function repeat(count) {\n var str = String(defined(this));\n var res = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError(\"Count can't be negative\");\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;\n return res;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","var ctx = require('./_ctx');\nvar invoke = require('./_invoke');\nvar html = require('./_html');\nvar cel = require('./_dom-create');\nvar global = require('./_global');\nvar process = global.process;\nvar setTask = global.setImmediate;\nvar clearTask = global.clearImmediate;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function (event) {\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!setTask || !clearTask) {\n setTask = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (require('./_cof')(process) == 'process') {\n defer = function (id) {\n process.nextTick(ctx(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in cel('script')) {\n defer = function (id) {\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n","'use strict';\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = require('./_a-function');\n\nfunction PromiseCapability(C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n}\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var global = require('./_global');\nvar navigator = global.navigator;\n\nmodule.exports = navigator && navigator.userAgent || '';\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","exports.f = require('./_wks');\n","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n","'use strict';\nvar aFunction = require('./_a-function');\nvar isObject = require('./_is-object');\nvar invoke = require('./_invoke');\nvar arraySlice = [].slice;\nvar factories = {};\n\nvar construct = function (F, len, args) {\n if (!(len in factories)) {\n for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');\n } return factories[len](F, args);\n};\n\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = arraySlice.call(arguments, 1);\n var bound = function (/* args... */) {\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);\n };\n if (isObject(fn.prototype)) bound.prototype = fn.prototype;\n return bound;\n};\n","var $parseInt = require('./_global').parseInt;\nvar $trim = require('./_string-trim').trim;\nvar ws = require('./_string-ws');\nvar hex = /^[-+]?0[xX]/;\n\nmodule.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {\n var string = $trim(String(str), 3);\n return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : $parseInt;\n","var $parseFloat = require('./_global').parseFloat;\nvar $trim = require('./_string-trim').trim;\n\nmodule.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str) {\n var string = $trim(String(str), 3);\n var result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n","var cof = require('./_cof');\nmodule.exports = function (it, msg) {\n if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg);\n return +it;\n};\n","// 20.1.2.3 Number.isInteger(number)\nvar isObject = require('./_is-object');\nvar floor = Math.floor;\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","// 20.2.2.20 Math.log1p(x)\nmodule.exports = Math.log1p || function log1p(x) {\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n","// call something on iterator step with safe closing on error\nvar anObject = require('./_an-object');\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n","// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = require('./_array-species-constructor');\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n","var aFunction = require('./_a-function');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar toLength = require('./_to-length');\n\nmodule.exports = function (that, callbackfn, aLen, memo, isRight) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IObject(O);\n var length = toLength(O.length);\n var index = isRight ? length - 1 : 0;\n var i = isRight ? -1 : 1;\n if (aLen < 2) for (;;) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (isRight ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n};\n","// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\n\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n","// 21.2.5.3 get RegExp.prototype.flags()\nif (require('./_descriptors') && /./g.flags != 'g') require('./_object-dp').f(RegExp.prototype, 'flags', {\n configurable: true,\n get: require('./_flags')\n});\n","var global = require('./_global');\nvar macrotask = require('./_task').set;\nvar Observer = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar isNode = require('./_cof')(process) == 'process';\n\nmodule.exports = function () {\n var head, last, notify;\n\n var flush = function () {\n var parent, fn;\n if (isNode && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (e) {\n if (head) notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (isNode) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339\n } else if (Observer && !(global.navigator && global.navigator.standalone)) {\n var toggle = true;\n var node = document.createTextNode('');\n new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n var promise = Promise.resolve(undefined);\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n };\n};\n","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar MAP = 'Map';\n\n// 23.1 Map Objects\nmodule.exports = require('./_collection')(MAP, function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = strong.getEntry(validate(this, MAP), key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);\n }\n}, strong, true);\n","'use strict';\nvar dP = require('./_object-dp').f;\nvar create = require('./_object-create');\nvar redefineAll = require('./_redefine-all');\nvar ctx = require('./_ctx');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar $iterDefine = require('./_iter-define');\nvar step = require('./_iter-step');\nvar setSpecies = require('./_set-species');\nvar DESCRIPTORS = require('./_descriptors');\nvar fastKey = require('./_meta').fastKey;\nvar validate = require('./_validate-collection');\nvar SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function (that, key) {\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return that._i[index];\n // frozen object case\n for (entry = that._f; entry; entry = entry.n) {\n if (entry.k == key) return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {\n entry.r = true;\n if (entry.p) entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = validate(this, NAME);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.n;\n var prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if (prev) prev.n = next;\n if (next) next.p = prev;\n if (that._f == entry) that._f = next;\n if (that._l == entry) that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n validate(this, NAME);\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.n : this._f) {\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(validate(this, NAME), key);\n }\n });\n if (DESCRIPTORS) dP(C.prototype, 'size', {\n get: function () {\n return validate(this, NAME)[SIZE];\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var entry = getEntry(that, key);\n var prev, index;\n // change existing entry\n if (entry) {\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if (!that._f) that._f = entry;\n if (prev) prev.n = entry;\n that[SIZE]++;\n // add to index\n if (index !== 'F') that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function (C, NAME, IS_MAP) {\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function (iterated, kind) {\n this._t = validate(iterated, NAME); // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function () {\n var that = this;\n var kind = that._k;\n var entry = that._l;\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n // get next entry\n if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if (kind == 'keys') return step(0, entry.k);\n if (kind == 'values') return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar SET = 'Set';\n\n// 23.2 Set Objects\nmodule.exports = require('./_collection')(SET, function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);\n }\n}, strong);\n","'use strict';\nvar each = require('./_array-methods')(0);\nvar redefine = require('./_redefine');\nvar meta = require('./_meta');\nvar assign = require('./_object-assign');\nvar weak = require('./_collection-weak');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar validate = require('./_validate-collection');\nvar WEAK_MAP = 'WeakMap';\nvar getWeak = meta.getWeak;\nvar isExtensible = Object.isExtensible;\nvar uncaughtFrozenStore = weak.ufstore;\nvar tmp = {};\nvar InternalMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n if (isObject(key)) {\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return weak.def(validate(this, WEAK_MAP), key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = require('./_collection')(WEAK_MAP, wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif (fails(function () { return new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7; })) {\n InternalMap = weak.getConstructor(wrapper, WEAK_MAP);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function (key) {\n var proto = $WeakMap.prototype;\n var method = proto[key];\n redefine(proto, key, function (a, b) {\n // store frozen objects on internal weakmap shim\n if (isObject(a) && !isExtensible(a)) {\n if (!this._f) this._f = new InternalMap();\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n","'use strict';\nvar redefineAll = require('./_redefine-all');\nvar getWeak = require('./_meta').getWeak;\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar createArrayMethod = require('./_array-methods');\nvar $has = require('./_has');\nvar validate = require('./_validate-collection');\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (that) {\n return that._l || (that._l = new UncaughtFrozenStore());\n};\nvar UncaughtFrozenStore = function () {\n this.a = [];\n};\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.a, function (it) {\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.a, function (it) {\n return it[0] === key;\n });\n if (~index) this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var data = getWeak(anObject(key), true);\n if (data === true) uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n","// https://tc39.github.io/ecma262/#sec-toindex\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toInteger(it);\n var length = toLength(number);\n if (number !== length) throw RangeError('Wrong length!');\n return length;\n};\n","// all object keys, includes non-enumerable and symbols\nvar gOPN = require('./_object-gopn');\nvar gOPS = require('./_object-gops');\nvar anObject = require('./_an-object');\nvar Reflect = require('./_global').Reflect;\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {\n var keys = gOPN.f(anObject(it));\n var getSymbols = gOPS.f;\n return getSymbols ? keys.concat(getSymbols(it)) : keys;\n};\n","// 20.2.2.16 Math.fround(x)\nvar sign = require('./_math-sign');\nvar pow = Math.pow;\nvar EPSILON = pow(2, -52);\nvar EPSILON32 = pow(2, -23);\nvar MAX32 = pow(2, 127) * (2 - EPSILON32);\nvar MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function (n) {\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\nmodule.exports = Math.fround || function fround(x) {\n var $abs = Math.abs(x);\n var $sign = sign(x);\n var a, result;\n if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n // eslint-disable-next-line no-self-compare\n if (result > MAX32 || result != result) return $sign * Infinity;\n return $sign * result;\n};\n","module.exports = function (exec) {\n try {\n return { e: false, v: exec() };\n } catch (e) {\n return { e: true, v: e };\n }\n};\n","var anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar newPromiseCapability = require('./_new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var forOf = require('./_for-of');\n\nmodule.exports = function (iter, ITERATOR) {\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function';\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n require('./_object-gops').f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","var $export = require('./_export');\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: require('./_object-create') });\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","var $export = require('./_export');\n// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperties: require('./_object-dps') });\n","// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = require('./_to-iobject');\nvar $getOwnPropertyDescriptor = require('./_object-gopd').f;\n\nrequire('./_object-sap')('getOwnPropertyDescriptor', function () {\n return function getOwnPropertyDescriptor(it, key) {\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n","// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = require('./_to-object');\nvar $getPrototypeOf = require('./_object-gpo');\n\nrequire('./_object-sap')('getPrototypeOf', function () {\n return function getPrototypeOf(it) {\n return $getPrototypeOf(toObject(it));\n };\n});\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 19.1.2.7 Object.getOwnPropertyNames(O)\nrequire('./_object-sap')('getOwnPropertyNames', function () {\n return require('./_object-gopn-ext').f;\n});\n","// 19.1.2.5 Object.freeze(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('freeze', function ($freeze) {\n return function freeze(it) {\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n","// 19.1.2.17 Object.seal(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('seal', function ($seal) {\n return function seal(it) {\n return $seal && isObject(it) ? $seal(meta(it)) : it;\n };\n});\n","// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('preventExtensions', function ($preventExtensions) {\n return function preventExtensions(it) {\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n","// 19.1.2.12 Object.isFrozen(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isFrozen', function ($isFrozen) {\n return function isFrozen(it) {\n return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;\n };\n});\n","// 19.1.2.13 Object.isSealed(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isSealed', function ($isSealed) {\n return function isSealed(it) {\n return isObject(it) ? $isSealed ? $isSealed(it) : false : true;\n };\n});\n","// 19.1.2.11 Object.isExtensible(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isExtensible', function ($isExtensible) {\n return function isExtensible(it) {\n return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;\n };\n});\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","// 19.1.3.10 Object.is(value1, value2)\nvar $export = require('./_export');\n$export($export.S, 'Object', { is: require('./_same-value') });\n","// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set });\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)\nvar $export = require('./_export');\n\n$export($export.P, 'Function', { bind: require('./_bind') });\n","var dP = require('./_object-dp').f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || require('./_descriptors') && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n","'use strict';\nvar isObject = require('./_is-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar HAS_INSTANCE = require('./_wks')('hasInstance');\nvar FunctionProto = Function.prototype;\n// 19.2.3.6 Function.prototype[@@hasInstance](V)\nif (!(HAS_INSTANCE in FunctionProto)) require('./_object-dp').f(FunctionProto, HAS_INSTANCE, { value: function (O) {\n if (typeof this != 'function' || !isObject(O)) return false;\n if (!isObject(this.prototype)) return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while (O = getPrototypeOf(O)) if (this.prototype === O) return true;\n return false;\n} });\n","var $export = require('./_export');\nvar $parseInt = require('./_parse-int');\n// 18.2.5 parseInt(string, radix)\n$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });\n","var $export = require('./_export');\nvar $parseFloat = require('./_parse-float');\n// 18.2.4 parseFloat(string)\n$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","'use strict';\nvar $export = require('./_export');\nvar toInteger = require('./_to-integer');\nvar aNumberValue = require('./_a-number-value');\nvar repeat = require('./_string-repeat');\nvar $toFixed = 1.0.toFixed;\nvar floor = Math.floor;\nvar data = [0, 0, 0, 0, 0, 0];\nvar ERROR = 'Number.toFixed: incorrect invocation!';\nvar ZERO = '0';\n\nvar multiply = function (n, c) {\n var i = -1;\n var c2 = c;\n while (++i < 6) {\n c2 += n * data[i];\n data[i] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n};\nvar divide = function (n) {\n var i = 6;\n var c = 0;\n while (--i >= 0) {\n c += data[i];\n data[i] = floor(c / n);\n c = (c % n) * 1e7;\n }\n};\nvar numToString = function () {\n var i = 6;\n var s = '';\n while (--i >= 0) {\n if (s !== '' || i === 0 || data[i] !== 0) {\n var t = String(data[i]);\n s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;\n }\n } return s;\n};\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\n$export($export.P + $export.F * (!!$toFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !require('./_fails')(function () {\n // V8 ~ Android 4.3-\n $toFixed.call({});\n})), 'Number', {\n toFixed: function toFixed(fractionDigits) {\n var x = aNumberValue(this, ERROR);\n var f = toInteger(fractionDigits);\n var s = '';\n var m = ZERO;\n var e, z, j, k;\n if (f < 0 || f > 20) throw RangeError(ERROR);\n // eslint-disable-next-line no-self-compare\n if (x != x) return 'NaN';\n if (x <= -1e21 || x >= 1e21) return String(x);\n if (x < 0) {\n s = '-';\n x = -x;\n }\n if (x > 1e-21) {\n e = log(x * pow(2, 69, 1)) - 69;\n z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = f;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n m = numToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n m = numToString() + repeat.call(ZERO, f);\n }\n }\n if (f > 0) {\n k = m.length;\n m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));\n } else {\n m = s + m;\n } return m;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $fails = require('./_fails');\nvar aNumberValue = require('./_a-number-value');\nvar $toPrecision = 1.0.toPrecision;\n\n$export($export.P + $export.F * ($fails(function () {\n // IE7-\n return $toPrecision.call(1, undefined) !== '1';\n}) || !$fails(function () {\n // V8 ~ Android 4.3-\n $toPrecision.call({});\n})), 'Number', {\n toPrecision: function toPrecision(precision) {\n var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');\n return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);\n }\n});\n","// 20.1.2.1 Number.EPSILON\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","// 20.1.2.3 Number.isInteger(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { isInteger: require('./_is-integer') });\n","// 20.1.2.4 Number.isNaN(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n","// 20.1.2.5 Number.isSafeInteger(number)\nvar $export = require('./_export');\nvar isInteger = require('./_is-integer');\nvar abs = Math.abs;\n\n$export($export.S, 'Number', {\n isSafeInteger: function isSafeInteger(number) {\n return isInteger(number) && abs(number) <= 0x1fffffffffffff;\n }\n});\n","// 20.1.2.6 Number.MAX_SAFE_INTEGER\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff });\n","// 20.1.2.10 Number.MIN_SAFE_INTEGER\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff });\n","var $export = require('./_export');\nvar $parseFloat = require('./_parse-float');\n// 20.1.2.12 Number.parseFloat(string)\n$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat });\n","var $export = require('./_export');\nvar $parseInt = require('./_parse-int');\n// 20.1.2.13 Number.parseInt(string, radix)\n$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt });\n","// 20.2.2.3 Math.acosh(x)\nvar $export = require('./_export');\nvar log1p = require('./_math-log1p');\nvar sqrt = Math.sqrt;\nvar $acosh = Math.acosh;\n\n$export($export.S + $export.F * !($acosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n && Math.floor($acosh(Number.MAX_VALUE)) == 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN\n && $acosh(Infinity) == Infinity\n), 'Math', {\n acosh: function acosh(x) {\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? Math.log(x) + Math.LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n","// 20.2.2.5 Math.asinh(x)\nvar $export = require('./_export');\nvar $asinh = Math.asinh;\n\nfunction asinh(x) {\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));\n}\n\n// Tor Browser bug: Math.asinh(0) -> -0\n$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh });\n","// 20.2.2.7 Math.atanh(x)\nvar $export = require('./_export');\nvar $atanh = Math.atanh;\n\n// Tor Browser bug: Math.atanh(-0) -> 0\n$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {\n atanh: function atanh(x) {\n return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;\n }\n});\n","// 20.2.2.9 Math.cbrt(x)\nvar $export = require('./_export');\nvar sign = require('./_math-sign');\n\n$export($export.S, 'Math', {\n cbrt: function cbrt(x) {\n return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);\n }\n});\n","// 20.2.2.11 Math.clz32(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n clz32: function clz32(x) {\n return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;\n }\n});\n","// 20.2.2.12 Math.cosh(x)\nvar $export = require('./_export');\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n cosh: function cosh(x) {\n return (exp(x = +x) + exp(-x)) / 2;\n }\n});\n","// 20.2.2.14 Math.expm1(x)\nvar $export = require('./_export');\nvar $expm1 = require('./_math-expm1');\n\n$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 });\n","// 20.2.2.16 Math.fround(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { fround: require('./_math-fround') });\n","// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])\nvar $export = require('./_export');\nvar abs = Math.abs;\n\n$export($export.S, 'Math', {\n hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars\n var sum = 0;\n var i = 0;\n var aLen = arguments.length;\n var larg = 0;\n var arg, div;\n while (i < aLen) {\n arg = abs(arguments[i++]);\n if (larg < arg) {\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if (arg > 0) {\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * Math.sqrt(sum);\n }\n});\n","// 20.2.2.18 Math.imul(x, y)\nvar $export = require('./_export');\nvar $imul = Math.imul;\n\n// some WebKit versions fails with big numbers, some has wrong arity\n$export($export.S + $export.F * require('./_fails')(function () {\n return $imul(0xffffffff, 5) != -5 || $imul.length != 2;\n}), 'Math', {\n imul: function imul(x, y) {\n var UINT16 = 0xffff;\n var xn = +x;\n var yn = +y;\n var xl = UINT16 & xn;\n var yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n","// 20.2.2.21 Math.log10(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log10: function log10(x) {\n return Math.log(x) * Math.LOG10E;\n }\n});\n","// 20.2.2.20 Math.log1p(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { log1p: require('./_math-log1p') });\n","// 20.2.2.22 Math.log2(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log2: function log2(x) {\n return Math.log(x) / Math.LN2;\n }\n});\n","// 20.2.2.28 Math.sign(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { sign: require('./_math-sign') });\n","// 20.2.2.30 Math.sinh(x)\nvar $export = require('./_export');\nvar expm1 = require('./_math-expm1');\nvar exp = Math.exp;\n\n// V8 near Chromium 38 has a problem with very small numbers\n$export($export.S + $export.F * require('./_fails')(function () {\n return !Math.sinh(-2e-17) != -2e-17;\n}), 'Math', {\n sinh: function sinh(x) {\n return Math.abs(x = +x) < 1\n ? (expm1(x) - expm1(-x)) / 2\n : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);\n }\n});\n","// 20.2.2.33 Math.tanh(x)\nvar $export = require('./_export');\nvar expm1 = require('./_math-expm1');\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n tanh: function tanh(x) {\n var a = expm1(x = +x);\n var b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n","// 20.2.2.34 Math.trunc(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n trunc: function trunc(it) {\n return (it > 0 ? Math.floor : Math.ceil)(it);\n }\n});\n","var $export = require('./_export');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar fromCharCode = String.fromCharCode;\nvar $fromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\n$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {\n // 21.1.2.2 String.fromCodePoint(...codePoints)\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var res = [];\n var aLen = arguments.length;\n var i = 0;\n var code;\n while (aLen > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');\n res.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)\n );\n } return res.join('');\n }\n});\n","var $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\n\n$export($export.S, 'String', {\n // 21.1.2.4 String.raw(callSite, ...substitutions)\n raw: function raw(callSite) {\n var tpl = toIObject(callSite.raw);\n var len = toLength(tpl.length);\n var aLen = arguments.length;\n var res = [];\n var i = 0;\n while (len > i) {\n res.push(String(tpl[i++]));\n if (i < aLen) res.push(String(arguments[i]));\n } return res.join('');\n }\n});\n","'use strict';\n// 21.1.3.25 String.prototype.trim()\nrequire('./_string-trim')('trim', function ($trim) {\n return function trim() {\n return $trim(this, 3);\n };\n});\n","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar $export = require('./_export');\nvar $at = require('./_string-at')(false);\n$export($export.P, 'String', {\n // 21.1.3.3 String.prototype.codePointAt(pos)\n codePointAt: function codePointAt(pos) {\n return $at(this, pos);\n }\n});\n","// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $export = require('./_export');\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: require('./_string-repeat')\n});\n","// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\n// B.2.3.2 String.prototype.anchor(name)\nrequire('./_string-html')('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n","'use strict';\n// B.2.3.3 String.prototype.big()\nrequire('./_string-html')('big', function (createHTML) {\n return function big() {\n return createHTML(this, 'big', '', '');\n };\n});\n","'use strict';\n// B.2.3.4 String.prototype.blink()\nrequire('./_string-html')('blink', function (createHTML) {\n return function blink() {\n return createHTML(this, 'blink', '', '');\n };\n});\n","'use strict';\n// B.2.3.5 String.prototype.bold()\nrequire('./_string-html')('bold', function (createHTML) {\n return function bold() {\n return createHTML(this, 'b', '', '');\n };\n});\n","'use strict';\n// B.2.3.6 String.prototype.fixed()\nrequire('./_string-html')('fixed', function (createHTML) {\n return function fixed() {\n return createHTML(this, 'tt', '', '');\n };\n});\n","'use strict';\n// B.2.3.7 String.prototype.fontcolor(color)\nrequire('./_string-html')('fontcolor', function (createHTML) {\n return function fontcolor(color) {\n return createHTML(this, 'font', 'color', color);\n };\n});\n","'use strict';\n// B.2.3.8 String.prototype.fontsize(size)\nrequire('./_string-html')('fontsize', function (createHTML) {\n return function fontsize(size) {\n return createHTML(this, 'font', 'size', size);\n };\n});\n","'use strict';\n// B.2.3.9 String.prototype.italics()\nrequire('./_string-html')('italics', function (createHTML) {\n return function italics() {\n return createHTML(this, 'i', '', '');\n };\n});\n","'use strict';\n// B.2.3.10 String.prototype.link(url)\nrequire('./_string-html')('link', function (createHTML) {\n return function link(url) {\n return createHTML(this, 'a', 'href', url);\n };\n});\n","'use strict';\n// B.2.3.11 String.prototype.small()\nrequire('./_string-html')('small', function (createHTML) {\n return function small() {\n return createHTML(this, 'small', '', '');\n };\n});\n","'use strict';\n// B.2.3.12 String.prototype.strike()\nrequire('./_string-html')('strike', function (createHTML) {\n return function strike() {\n return createHTML(this, 'strike', '', '');\n };\n});\n","'use strict';\n// B.2.3.13 String.prototype.sub()\nrequire('./_string-html')('sub', function (createHTML) {\n return function sub() {\n return createHTML(this, 'sub', '', '');\n };\n});\n","'use strict';\n// B.2.3.14 String.prototype.sup()\nrequire('./_string-html')('sup', function (createHTML) {\n return function sup() {\n return createHTML(this, 'sup', '', '');\n };\n});\n","// 20.3.3.1 / 15.9.4.4 Date.now()\nvar $export = require('./_export');\n\n$export($export.S, 'Date', { now: function () { return new Date().getTime(); } });\n","'use strict';\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar toPrimitive = require('./_to-primitive');\n\n$export($export.P + $export.F * require('./_fails')(function () {\n return new Date(NaN).toJSON() !== null\n || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1;\n}), 'Date', {\n // eslint-disable-next-line no-unused-vars\n toJSON: function toJSON(key) {\n var O = toObject(this);\n var pv = toPrimitive(O);\n return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();\n }\n});\n","// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar $export = require('./_export');\nvar toISOString = require('./_date-to-iso-string');\n\n// PhantomJS / old WebKit has a broken implementations\n$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', {\n toISOString: toISOString\n});\n","'use strict';\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar fails = require('./_fails');\nvar getTime = Date.prototype.getTime;\nvar $toISOString = Date.prototype.toISOString;\n\nvar lz = function (num) {\n return num > 9 ? num : '0' + num;\n};\n\n// PhantomJS / old WebKit has a broken implementations\nmodule.exports = (fails(function () {\n return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z';\n}) || !fails(function () {\n $toISOString.call(new Date(NaN));\n})) ? function toISOString() {\n if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value');\n var d = this;\n var y = d.getUTCFullYear();\n var m = d.getUTCMilliseconds();\n var s = y < 0 ? '-' : y > 9999 ? '+' : '';\n return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +\n '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +\n 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +\n ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';\n} : $toISOString;\n","var DateProto = Date.prototype;\nvar INVALID_DATE = 'Invalid Date';\nvar TO_STRING = 'toString';\nvar $toString = DateProto[TO_STRING];\nvar getTime = DateProto.getTime;\nif (new Date(NaN) + '' != INVALID_DATE) {\n require('./_redefine')(DateProto, TO_STRING, function toString() {\n var value = getTime.call(this);\n // eslint-disable-next-line no-self-compare\n return value === value ? $toString.call(this) : INVALID_DATE;\n });\n}\n","var TO_PRIMITIVE = require('./_wks')('toPrimitive');\nvar proto = Date.prototype;\n\nif (!(TO_PRIMITIVE in proto)) require('./_hide')(proto, TO_PRIMITIVE, require('./_date-to-primitive'));\n","'use strict';\nvar anObject = require('./_an-object');\nvar toPrimitive = require('./_to-primitive');\nvar NUMBER = 'number';\n\nmodule.exports = function (hint) {\n if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint');\n return toPrimitive(anObject(this), hint != NUMBER);\n};\n","// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)\nvar $export = require('./_export');\n\n$export($export.S, 'Array', { isArray: require('./_is-array') });\n","'use strict';\nvar ctx = require('./_ctx');\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar toLength = require('./_to-length');\nvar createProperty = require('./_create-property');\nvar getIterFn = require('./core.get-iterator-method');\n\n$export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar createProperty = require('./_create-property');\n\n// WebKit Array.of isn't generic\n$export($export.S + $export.F * require('./_fails')(function () {\n function F() { /* empty */ }\n return !(Array.of.call(F) instanceof F);\n}), 'Array', {\n // 22.1.2.3 Array.of( ...items)\n of: function of(/* ...args */) {\n var index = 0;\n var aLen = arguments.length;\n var result = new (typeof this == 'function' ? this : Array)(aLen);\n while (aLen > index) createProperty(result, index, arguments[index++]);\n result.length = aLen;\n return result;\n }\n});\n","'use strict';\n// 22.1.3.13 Array.prototype.join(separator)\nvar $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar arrayJoin = [].join;\n\n// fallback for not array-like strings\n$export($export.P + $export.F * (require('./_iobject') != Object || !require('./_strict-method')(arrayJoin)), 'Array', {\n join: function join(separator) {\n return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar html = require('./_html');\nvar cof = require('./_cof');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nvar arraySlice = [].slice;\n\n// fallback for not array-like ES3 strings and DOM objects\n$export($export.P + $export.F * require('./_fails')(function () {\n if (html) arraySlice.call(html);\n}), 'Array', {\n slice: function slice(begin, end) {\n var len = toLength(this.length);\n var klass = cof(this);\n end = end === undefined ? len : end;\n if (klass == 'Array') return arraySlice.call(this, begin, end);\n var start = toAbsoluteIndex(begin, len);\n var upTo = toAbsoluteIndex(end, len);\n var size = toLength(upTo - start);\n var cloned = new Array(size);\n var i = 0;\n for (; i < size; i++) cloned[i] = klass == 'String'\n ? this.charAt(start + i)\n : this[start + i];\n return cloned;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar toObject = require('./_to-object');\nvar fails = require('./_fails');\nvar $sort = [].sort;\nvar test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function () {\n // IE8-\n test.sort(undefined);\n}) || !fails(function () {\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !require('./_strict-method')($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $forEach = require('./_array-methods')(0);\nvar STRICT = require('./_strict-method')([].forEach, true);\n\n$export($export.P + $export.F * !STRICT, 'Array', {\n // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])\n forEach: function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments[1]);\n }\n});\n","var isObject = require('./_is-object');\nvar isArray = require('./_is-array');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n","'use strict';\nvar $export = require('./_export');\nvar $map = require('./_array-methods')(1);\n\n$export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', {\n // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $filter = require('./_array-methods')(2);\n\n$export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', {\n // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $some = require('./_array-methods')(3);\n\n$export($export.P + $export.F * !require('./_strict-method')([].some, true), 'Array', {\n // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $every = require('./_array-methods')(4);\n\n$export($export.P + $export.F * !require('./_strict-method')([].every, true), 'Array', {\n // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $reduce = require('./_array-reduce');\n\n$export($export.P + $export.F * !require('./_strict-method')([].reduce, true), 'Array', {\n // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], false);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $reduce = require('./_array-reduce');\n\n$export($export.P + $export.F * !require('./_strict-method')([].reduceRight, true), 'Array', {\n // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])\n reduceRight: function reduceRight(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], true);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $indexOf = require('./_array-includes')(false);\nvar $native = [].indexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', {\n // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? $native.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nvar $native = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', {\n // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0;\n var O = toIObject(this);\n var length = toLength(O.length);\n var index = length - 1;\n if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0;\n return -1;\n }\n});\n","// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { copyWithin: require('./_array-copy-within') });\n\nrequire('./_add-to-unscopables')('copyWithin');\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { fill: require('./_array-fill') });\n\nrequire('./_add-to-unscopables')('fill');\n","'use strict';\n// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(5);\nvar KEY = 'find';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","'use strict';\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(6);\nvar KEY = 'findIndex';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","require('./_set-species')('Array');\n","var global = require('./_global');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar dP = require('./_object-dp').f;\nvar gOPN = require('./_object-gopn').f;\nvar isRegExp = require('./_is-regexp');\nvar $flags = require('./_flags');\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () {\n re2[require('./_wks')('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n require('./_redefine')(global, 'RegExp', $RegExp);\n}\n\nrequire('./_set-species')('RegExp');\n","'use strict';\nrequire('./es6.regexp.flags');\nvar anObject = require('./_an-object');\nvar $flags = require('./_flags');\nvar DESCRIPTORS = require('./_descriptors');\nvar TO_STRING = 'toString';\nvar $toString = /./[TO_STRING];\n\nvar define = function (fn) {\n require('./_redefine')(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif (require('./_fails')(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {\n define(function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if ($toString.name != TO_STRING) {\n define(function toString() {\n return $toString.call(this);\n });\n}\n","// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match) {\n // 21.1.3.11 String.prototype.match(regexp)\n return [function match(regexp) {\n 'use strict';\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n }, $match];\n});\n","// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace) {\n // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)\n return [function replace(searchValue, replaceValue) {\n 'use strict';\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n }, $replace];\n});\n","// @@search logic\nrequire('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search) {\n // 21.1.3.15 String.prototype.search(regexp)\n return [function search(regexp) {\n 'use strict';\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n }, $search];\n});\n","// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split) {\n 'use strict';\n var isRegExp = require('./_is-regexp');\n var _split = $split;\n var $push = [].push;\n var $SPLIT = 'split';\n var LENGTH = 'length';\n var LAST_INDEX = 'lastIndex';\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n var NPCG = /()??/.exec('')[1] === undefined; // nonparticipating capturing group\n // based on es5-shim implementation, need to rework it\n $split = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return _split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? 4294967295 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var separator2, match, lastIndex, lastLength, i;\n // Doesn't need flags gy, but they don't hurt\n if (!NPCG) separator2 = new RegExp('^' + separatorCopy.source + '$(?!\\\\s)', flags);\n while (match = separatorCopy.exec(string)) {\n // `separatorCopy.lastIndex` is not reliable cross-browser\n lastIndex = match.index + match[0][LENGTH];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n // Fix browsers whose `exec` methods don't consistently return `undefined` for NPCG\n // eslint-disable-next-line no-loop-func\n if (!NPCG && match[LENGTH] > 1) match[0].replace(separator2, function () {\n for (i = 1; i < arguments[LENGTH] - 2; i++) if (arguments[i] === undefined) match[i] = undefined;\n });\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n $split = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : _split.call(this, separator, limit);\n };\n }\n // 21.1.3.17 String.prototype.split(separator, limit)\n return [function split(separator, limit) {\n var O = defined(this);\n var fn = separator == undefined ? undefined : separator[SPLIT];\n return fn !== undefined ? fn.call(separator, O, limit) : $split.call(String(O), separator, limit);\n }, $split];\n});\n","'use strict';\nvar LIBRARY = require('./_library');\nvar global = require('./_global');\nvar ctx = require('./_ctx');\nvar classof = require('./_classof');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar aFunction = require('./_a-function');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar speciesConstructor = require('./_species-constructor');\nvar task = require('./_task').set;\nvar microtask = require('./_microtask')();\nvar newPromiseCapabilityModule = require('./_new-promise-capability');\nvar perform = require('./_perform');\nvar userAgent = require('./_user-agent');\nvar promiseResolve = require('./_promise-resolve');\nvar PROMISE = 'Promise';\nvar TypeError = global.TypeError;\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8 || '';\nvar $Promise = global[PROMISE];\nvar isNode = classof(process) == 'process';\nvar empty = function () { /* empty */ };\nvar Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;\nvar newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;\n\nvar USE_NATIVE = !!function () {\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1);\n var FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function')\n && promise.then(empty) instanceof FakePromise\n // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // we can't detect it synchronously, so just check versions\n && v8.indexOf('6.6') !== 0\n && userAgent.indexOf('Chrome/66') === -1;\n } catch (e) { /* empty */ }\n}();\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (promise, isReject) {\n if (promise._n) return;\n promise._n = true;\n var chain = promise._c;\n microtask(function () {\n var value = promise._v;\n var ok = promise._s == 1;\n var i = 0;\n var run = function (reaction) {\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (promise._h == 2) onHandleUnhandled(promise);\n promise._h = 1;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // may throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (e) {\n if (domain && !exited) domain.exit();\n reject(e);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if (isReject && !promise._h) onUnhandled(promise);\n });\n};\nvar onUnhandled = function (promise) {\n task.call(global, function () {\n var value = promise._v;\n var unhandled = isUnhandled(promise);\n var result, handler, console;\n if (unhandled) {\n result = perform(function () {\n if (isNode) {\n process.emit('unhandledRejection', value, promise);\n } else if (handler = global.onunhandledrejection) {\n handler({ promise: promise, reason: value });\n } else if ((console = global.console) && console.error) {\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if (unhandled && result.e) throw result.v;\n });\n};\nvar isUnhandled = function (promise) {\n return promise._h !== 1 && (promise._a || promise._c).length === 0;\n};\nvar onHandleUnhandled = function (promise) {\n task.call(global, function () {\n var handler;\n if (isNode) {\n process.emit('rejectionHandled', promise);\n } else if (handler = global.onrejectionhandled) {\n handler({ promise: promise, reason: promise._v });\n }\n });\n};\nvar $reject = function (value) {\n var promise = this;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if (!promise._a) promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function (value) {\n var promise = this;\n var then;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n if (then = isThenable(value)) {\n microtask(function () {\n var wrapper = { _w: promise, _d: false }; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch (e) {\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch (e) {\n $reject.call({ _w: promise, _d: false }, e); // wrap\n }\n};\n\n// constructor polyfill\nif (!USE_NATIVE) {\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor) {\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch (err) {\n $reject.call(this, err);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = require('./_redefine-all')($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected) {\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if (this._a) this._a.push(reaction);\n if (this._s) notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === $Promise || C === Wrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });\nrequire('./_set-to-string-tag')($Promise, PROMISE);\nrequire('./_set-species')(PROMISE);\nWrapper = require('./_core')[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n var $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x) {\n return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function (iter) {\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var values = [];\n var index = 0;\n var remaining = 1;\n forOf(iterable, false, function (promise) {\n var $index = index++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.e) reject(result.v);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n forOf(iterable, false, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.e) reject(result.v);\n return capability.promise;\n }\n});\n","'use strict';\nvar weak = require('./_collection-weak');\nvar validate = require('./_validate-collection');\nvar WEAK_SET = 'WeakSet';\n\n// 23.4 WeakSet Objects\nrequire('./_collection')(WEAK_SET, function (get) {\n return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.4.3.1 WeakSet.prototype.add(value)\n add: function add(value) {\n return weak.def(validate(this, WEAK_SET), value, true);\n }\n}, weak, false, true);\n","'use strict';\nvar $export = require('./_export');\nvar $typed = require('./_typed');\nvar buffer = require('./_typed-buffer');\nvar anObject = require('./_an-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nvar isObject = require('./_is-object');\nvar ArrayBuffer = require('./_global').ArrayBuffer;\nvar speciesConstructor = require('./_species-constructor');\nvar $ArrayBuffer = buffer.ArrayBuffer;\nvar $DataView = buffer.DataView;\nvar $isView = $typed.ABV && ArrayBuffer.isView;\nvar $slice = $ArrayBuffer.prototype.slice;\nvar VIEW = $typed.VIEW;\nvar ARRAY_BUFFER = 'ArrayBuffer';\n\n$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer });\n\n$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {\n // 24.1.3.1 ArrayBuffer.isView(arg)\n isView: function isView(it) {\n return $isView && $isView(it) || isObject(it) && VIEW in it;\n }\n});\n\n$export($export.P + $export.U + $export.F * require('./_fails')(function () {\n return !new $ArrayBuffer(2).slice(1, undefined).byteLength;\n}), ARRAY_BUFFER, {\n // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)\n slice: function slice(start, end) {\n if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix\n var len = anObject(this).byteLength;\n var first = toAbsoluteIndex(start, len);\n var fin = toAbsoluteIndex(end === undefined ? len : end, len);\n var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first));\n var viewS = new $DataView(this);\n var viewT = new $DataView(result);\n var index = 0;\n while (first < fin) {\n viewT.setUint8(index++, viewS.getUint8(first++));\n } return result;\n }\n});\n\nrequire('./_set-species')(ARRAY_BUFFER);\n","var $export = require('./_export');\n$export($export.G + $export.W + $export.F * !require('./_typed').ABV, {\n DataView: require('./_typed-buffer').DataView\n});\n","require('./_typed-array')('Int8', 1, function (init) {\n return function Int8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint8', 1, function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint8', 1, function (init) {\n return function Uint8ClampedArray(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n}, true);\n","require('./_typed-array')('Int16', 2, function (init) {\n return function Int16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint16', 2, function (init) {\n return function Uint16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Int32', 4, function (init) {\n return function Int32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint32', 4, function (init) {\n return function Uint32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Float32', 4, function (init) {\n return function Float32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Float64', 8, function (init) {\n return function Float64Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar anObject = require('./_an-object');\nvar rApply = (require('./_global').Reflect || {}).apply;\nvar fApply = Function.apply;\n// MS Edge argumentsList argument is optional\n$export($export.S + $export.F * !require('./_fails')(function () {\n rApply(function () { /* empty */ });\n}), 'Reflect', {\n apply: function apply(target, thisArgument, argumentsList) {\n var T = aFunction(target);\n var L = anObject(argumentsList);\n return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);\n }\n});\n","// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])\nvar $export = require('./_export');\nvar create = require('./_object-create');\nvar aFunction = require('./_a-function');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar bind = require('./_bind');\nvar rConstruct = (require('./_global').Reflect || {}).construct;\n\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n rConstruct(function () { /* empty */ });\n});\n\n$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)\nvar dP = require('./_object-dp');\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar toPrimitive = require('./_to-primitive');\n\n// MS Edge has broken Reflect.defineProperty - throwing instead of returning false\n$export($export.S + $export.F * require('./_fails')(function () {\n // eslint-disable-next-line no-undef\n Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });\n}), 'Reflect', {\n defineProperty: function defineProperty(target, propertyKey, attributes) {\n anObject(target);\n propertyKey = toPrimitive(propertyKey, true);\n anObject(attributes);\n try {\n dP.f(target, propertyKey, attributes);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.4 Reflect.deleteProperty(target, propertyKey)\nvar $export = require('./_export');\nvar gOPD = require('./_object-gopd').f;\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var desc = gOPD(anObject(target), propertyKey);\n return desc && !desc.configurable ? false : delete target[propertyKey];\n }\n});\n","'use strict';\n// 26.1.5 Reflect.enumerate(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar Enumerate = function (iterated) {\n this._t = anObject(iterated); // target\n this._i = 0; // next index\n var keys = this._k = []; // keys\n var key;\n for (key in iterated) keys.push(key);\n};\nrequire('./_iter-create')(Enumerate, 'Object', function () {\n var that = this;\n var keys = that._k;\n var key;\n do {\n if (that._i >= keys.length) return { value: undefined, done: true };\n } while (!((key = keys[that._i++]) in that._t));\n return { value: key, done: false };\n});\n\n$export($export.S, 'Reflect', {\n enumerate: function enumerate(target) {\n return new Enumerate(target);\n }\n});\n","// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\n\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var desc, proto;\n if (anObject(target) === receiver) return target[propertyKey];\n if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', { get: get });\n","// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)\nvar gOPD = require('./_object-gopd');\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {\n return gOPD.f(anObject(target), propertyKey);\n }\n});\n","// 26.1.8 Reflect.getPrototypeOf(target)\nvar $export = require('./_export');\nvar getProto = require('./_object-gpo');\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n getPrototypeOf: function getPrototypeOf(target) {\n return getProto(anObject(target));\n }\n});\n","// 26.1.9 Reflect.has(target, propertyKey)\nvar $export = require('./_export');\n\n$export($export.S, 'Reflect', {\n has: function has(target, propertyKey) {\n return propertyKey in target;\n }\n});\n","// 26.1.10 Reflect.isExtensible(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar $isExtensible = Object.isExtensible;\n\n$export($export.S, 'Reflect', {\n isExtensible: function isExtensible(target) {\n anObject(target);\n return $isExtensible ? $isExtensible(target) : true;\n }\n});\n","// 26.1.11 Reflect.ownKeys(target)\nvar $export = require('./_export');\n\n$export($export.S, 'Reflect', { ownKeys: require('./_own-keys') });\n","// 26.1.12 Reflect.preventExtensions(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar $preventExtensions = Object.preventExtensions;\n\n$export($export.S, 'Reflect', {\n preventExtensions: function preventExtensions(target) {\n anObject(target);\n try {\n if ($preventExtensions) $preventExtensions(target);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])\nvar dP = require('./_object-dp');\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar createDesc = require('./_property-desc');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\n\nfunction set(target, propertyKey, V /* , receiver */) {\n var receiver = arguments.length < 4 ? target : arguments[3];\n var ownDesc = gOPD.f(anObject(target), propertyKey);\n var existingDescriptor, proto;\n if (!ownDesc) {\n if (isObject(proto = getPrototypeOf(target))) {\n return set(proto, propertyKey, V, receiver);\n }\n ownDesc = createDesc(0);\n }\n if (has(ownDesc, 'value')) {\n if (ownDesc.writable === false || !isObject(receiver)) return false;\n if (existingDescriptor = gOPD.f(receiver, propertyKey)) {\n if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false;\n existingDescriptor.value = V;\n dP.f(receiver, propertyKey, existingDescriptor);\n } else dP.f(receiver, propertyKey, createDesc(0, V));\n return true;\n }\n return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);\n}\n\n$export($export.S, 'Reflect', { set: set });\n","// 26.1.14 Reflect.setPrototypeOf(target, proto)\nvar $export = require('./_export');\nvar setProto = require('./_set-proto');\n\nif (setProto) $export($export.S, 'Reflect', {\n setPrototypeOf: function setPrototypeOf(target, proto) {\n setProto.check(target, proto);\n try {\n setProto.set(target, proto);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar toMetaKey = metadata.key;\nvar ordinaryDefineOwnMetadata = metadata.set;\n\nmetadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) {\n ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar toMetaKey = metadata.key;\nvar getOrCreateMetadataMap = metadata.map;\nvar store = metadata.store;\n\nmetadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) {\n var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]);\n var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);\n if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false;\n if (metadataMap.size) return true;\n var targetMetadata = store.get(target);\n targetMetadata['delete'](targetKey);\n return !!targetMetadata.size || store['delete'](target);\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar ordinaryHasOwnMetadata = metadata.has;\nvar ordinaryGetOwnMetadata = metadata.get;\nvar toMetaKey = metadata.key;\n\nvar ordinaryGetMetadata = function (MetadataKey, O, P) {\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P);\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;\n};\n\nmetadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var Set = require('./es6.set');\nvar from = require('./_array-from-iterable');\nvar metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar ordinaryOwnMetadataKeys = metadata.keys;\nvar toMetaKey = metadata.key;\n\nvar ordinaryMetadataKeys = function (O, P) {\n var oKeys = ordinaryOwnMetadataKeys(O, P);\n var parent = getPrototypeOf(O);\n if (parent === null) return oKeys;\n var pKeys = ordinaryMetadataKeys(parent, P);\n return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys;\n};\n\nmetadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) {\n return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar ordinaryGetOwnMetadata = metadata.get;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryGetOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar ordinaryOwnMetadataKeys = metadata.keys;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) {\n return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar ordinaryHasOwnMetadata = metadata.has;\nvar toMetaKey = metadata.key;\n\nvar ordinaryHasMetadata = function (MetadataKey, O, P) {\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn) return true;\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;\n};\n\nmetadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar ordinaryHasOwnMetadata = metadata.has;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryHasOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var $metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar toMetaKey = $metadata.key;\nvar ordinaryDefineOwnMetadata = $metadata.set;\n\n$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) {\n return function decorator(target, targetKey) {\n ordinaryDefineOwnMetadata(\n metadataKey, metadataValue,\n (targetKey !== undefined ? anObject : aFunction)(target),\n toMetaKey(targetKey)\n );\n };\n} });\n","/* tslint:disable */\r\nimport 'core-js/es6';\r\nimport 'core-js/es7/reflect';\r\nrequire('zone.js/dist/zone');\r\n\r\nif (process.env.ENV === 'production') {\r\n // Production\r\n} else {\r\n // Development and test\r\n Error['stackTraceLimit'] = Infinity;\r\n require('zone.js/dist/long-stack-trace-zone');\r\n}\r\n\r\n// Other polyfills\r\nrequire('whatwg-fetch');\r\nrequire('webcrypto-shim');\r\n/* tslint:enable */\r\n","require('../modules/es6.symbol');\nrequire('../modules/es6.object.create');\nrequire('../modules/es6.object.define-property');\nrequire('../modules/es6.object.define-properties');\nrequire('../modules/es6.object.get-own-property-descriptor');\nrequire('../modules/es6.object.get-prototype-of');\nrequire('../modules/es6.object.keys');\nrequire('../modules/es6.object.get-own-property-names');\nrequire('../modules/es6.object.freeze');\nrequire('../modules/es6.object.seal');\nrequire('../modules/es6.object.prevent-extensions');\nrequire('../modules/es6.object.is-frozen');\nrequire('../modules/es6.object.is-sealed');\nrequire('../modules/es6.object.is-extensible');\nrequire('../modules/es6.object.assign');\nrequire('../modules/es6.object.is');\nrequire('../modules/es6.object.set-prototype-of');\nrequire('../modules/es6.object.to-string');\nrequire('../modules/es6.function.bind');\nrequire('../modules/es6.function.name');\nrequire('../modules/es6.function.has-instance');\nrequire('../modules/es6.parse-int');\nrequire('../modules/es6.parse-float');\nrequire('../modules/es6.number.constructor');\nrequire('../modules/es6.number.to-fixed');\nrequire('../modules/es6.number.to-precision');\nrequire('../modules/es6.number.epsilon');\nrequire('../modules/es6.number.is-finite');\nrequire('../modules/es6.number.is-integer');\nrequire('../modules/es6.number.is-nan');\nrequire('../modules/es6.number.is-safe-integer');\nrequire('../modules/es6.number.max-safe-integer');\nrequire('../modules/es6.number.min-safe-integer');\nrequire('../modules/es6.number.parse-float');\nrequire('../modules/es6.number.parse-int');\nrequire('../modules/es6.math.acosh');\nrequire('../modules/es6.math.asinh');\nrequire('../modules/es6.math.atanh');\nrequire('../modules/es6.math.cbrt');\nrequire('../modules/es6.math.clz32');\nrequire('../modules/es6.math.cosh');\nrequire('../modules/es6.math.expm1');\nrequire('../modules/es6.math.fround');\nrequire('../modules/es6.math.hypot');\nrequire('../modules/es6.math.imul');\nrequire('../modules/es6.math.log10');\nrequire('../modules/es6.math.log1p');\nrequire('../modules/es6.math.log2');\nrequire('../modules/es6.math.sign');\nrequire('../modules/es6.math.sinh');\nrequire('../modules/es6.math.tanh');\nrequire('../modules/es6.math.trunc');\nrequire('../modules/es6.string.from-code-point');\nrequire('../modules/es6.string.raw');\nrequire('../modules/es6.string.trim');\nrequire('../modules/es6.string.iterator');\nrequire('../modules/es6.string.code-point-at');\nrequire('../modules/es6.string.ends-with');\nrequire('../modules/es6.string.includes');\nrequire('../modules/es6.string.repeat');\nrequire('../modules/es6.string.starts-with');\nrequire('../modules/es6.string.anchor');\nrequire('../modules/es6.string.big');\nrequire('../modules/es6.string.blink');\nrequire('../modules/es6.string.bold');\nrequire('../modules/es6.string.fixed');\nrequire('../modules/es6.string.fontcolor');\nrequire('../modules/es6.string.fontsize');\nrequire('../modules/es6.string.italics');\nrequire('../modules/es6.string.link');\nrequire('../modules/es6.string.small');\nrequire('../modules/es6.string.strike');\nrequire('../modules/es6.string.sub');\nrequire('../modules/es6.string.sup');\nrequire('../modules/es6.date.now');\nrequire('../modules/es6.date.to-json');\nrequire('../modules/es6.date.to-iso-string');\nrequire('../modules/es6.date.to-string');\nrequire('../modules/es6.date.to-primitive');\nrequire('../modules/es6.array.is-array');\nrequire('../modules/es6.array.from');\nrequire('../modules/es6.array.of');\nrequire('../modules/es6.array.join');\nrequire('../modules/es6.array.slice');\nrequire('../modules/es6.array.sort');\nrequire('../modules/es6.array.for-each');\nrequire('../modules/es6.array.map');\nrequire('../modules/es6.array.filter');\nrequire('../modules/es6.array.some');\nrequire('../modules/es6.array.every');\nrequire('../modules/es6.array.reduce');\nrequire('../modules/es6.array.reduce-right');\nrequire('../modules/es6.array.index-of');\nrequire('../modules/es6.array.last-index-of');\nrequire('../modules/es6.array.copy-within');\nrequire('../modules/es6.array.fill');\nrequire('../modules/es6.array.find');\nrequire('../modules/es6.array.find-index');\nrequire('../modules/es6.array.species');\nrequire('../modules/es6.array.iterator');\nrequire('../modules/es6.regexp.constructor');\nrequire('../modules/es6.regexp.to-string');\nrequire('../modules/es6.regexp.flags');\nrequire('../modules/es6.regexp.match');\nrequire('../modules/es6.regexp.replace');\nrequire('../modules/es6.regexp.search');\nrequire('../modules/es6.regexp.split');\nrequire('../modules/es6.promise');\nrequire('../modules/es6.map');\nrequire('../modules/es6.set');\nrequire('../modules/es6.weak-map');\nrequire('../modules/es6.weak-set');\nrequire('../modules/es6.typed.array-buffer');\nrequire('../modules/es6.typed.data-view');\nrequire('../modules/es6.typed.int8-array');\nrequire('../modules/es6.typed.uint8-array');\nrequire('../modules/es6.typed.uint8-clamped-array');\nrequire('../modules/es6.typed.int16-array');\nrequire('../modules/es6.typed.uint16-array');\nrequire('../modules/es6.typed.int32-array');\nrequire('../modules/es6.typed.uint32-array');\nrequire('../modules/es6.typed.float32-array');\nrequire('../modules/es6.typed.float64-array');\nrequire('../modules/es6.reflect.apply');\nrequire('../modules/es6.reflect.construct');\nrequire('../modules/es6.reflect.define-property');\nrequire('../modules/es6.reflect.delete-property');\nrequire('../modules/es6.reflect.enumerate');\nrequire('../modules/es6.reflect.get');\nrequire('../modules/es6.reflect.get-own-property-descriptor');\nrequire('../modules/es6.reflect.get-prototype-of');\nrequire('../modules/es6.reflect.has');\nrequire('../modules/es6.reflect.is-extensible');\nrequire('../modules/es6.reflect.own-keys');\nrequire('../modules/es6.reflect.prevent-extensions');\nrequire('../modules/es6.reflect.set');\nrequire('../modules/es6.reflect.set-prototype-of');\nmodule.exports = require('../modules/_core');\n","require('../modules/es7.reflect.define-metadata');\nrequire('../modules/es7.reflect.delete-metadata');\nrequire('../modules/es7.reflect.get-metadata');\nrequire('../modules/es7.reflect.get-metadata-keys');\nrequire('../modules/es7.reflect.get-own-metadata');\nrequire('../modules/es7.reflect.get-own-metadata-keys');\nrequire('../modules/es7.reflect.has-metadata');\nrequire('../modules/es7.reflect.has-own-metadata');\nrequire('../modules/es7.reflect.metadata');\nmodule.exports = require('../modules/_core').Reflect;\n","/**\n* @license\n* Copyright Google Inc. All Rights Reserved.\n*\n* Use of this source code is governed by an MIT-style license that can be\n* found in the LICENSE file at https://angular.io/license\n*/\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(factory());\n}(this, (function () { 'use strict';\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nvar Zone$1 = (function (global) {\n var FUNCTION = 'function';\n var performance = global['performance'];\n function mark(name) {\n performance && performance['mark'] && performance['mark'](name);\n }\n function performanceMeasure(name, label) {\n performance && performance['measure'] && performance['measure'](name, label);\n }\n mark('Zone');\n if (global['Zone']) {\n throw new Error('Zone already loaded.');\n }\n var Zone = /** @class */ (function () {\n function Zone(parent, zoneSpec) {\n this._properties = null;\n this._parent = parent;\n this._name = zoneSpec ? zoneSpec.name || 'unnamed' : '';\n this._properties = zoneSpec && zoneSpec.properties || {};\n this._zoneDelegate =\n new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec);\n }\n Zone.assertZonePatched = function () {\n if (global['Promise'] !== patches['ZoneAwarePromise']) {\n throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' +\n 'has been overwritten.\\n' +\n 'Most likely cause is that a Promise polyfill has been loaded ' +\n 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' +\n 'If you must load one, do so before loading zone.js.)');\n }\n };\n Object.defineProperty(Zone, \"root\", {\n get: function () {\n var zone = Zone.current;\n while (zone.parent) {\n zone = zone.parent;\n }\n return zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone, \"current\", {\n get: function () {\n return _currentZoneFrame.zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone, \"currentTask\", {\n get: function () {\n return _currentTask;\n },\n enumerable: true,\n configurable: true\n });\n Zone.__load_patch = function (name, fn) {\n if (patches.hasOwnProperty(name)) {\n throw Error('Already loaded patch: ' + name);\n }\n else if (!global['__Zone_disable_' + name]) {\n var perfName = 'Zone:' + name;\n mark(perfName);\n patches[name] = fn(global, Zone, _api);\n performanceMeasure(perfName, perfName);\n }\n };\n Object.defineProperty(Zone.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: true,\n configurable: true\n });\n Zone.prototype.get = function (key) {\n var zone = this.getZoneWith(key);\n if (zone)\n return zone._properties[key];\n };\n Zone.prototype.getZoneWith = function (key) {\n var current = this;\n while (current) {\n if (current._properties.hasOwnProperty(key)) {\n return current;\n }\n current = current._parent;\n }\n return null;\n };\n Zone.prototype.fork = function (zoneSpec) {\n if (!zoneSpec)\n throw new Error('ZoneSpec required!');\n return this._zoneDelegate.fork(this, zoneSpec);\n };\n Zone.prototype.wrap = function (callback, source) {\n if (typeof callback !== FUNCTION) {\n throw new Error('Expecting function got: ' + callback);\n }\n var _callback = this._zoneDelegate.intercept(this, callback, source);\n var zone = this;\n return function () {\n return zone.runGuarded(_callback, this, arguments, source);\n };\n };\n Zone.prototype.run = function (callback, applyThis, applyArgs, source) {\n if (applyThis === void 0) { applyThis = undefined; }\n if (applyArgs === void 0) { applyArgs = null; }\n if (source === void 0) { source = null; }\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n };\n Zone.prototype.runGuarded = function (callback, applyThis, applyArgs, source) {\n if (applyThis === void 0) { applyThis = null; }\n if (applyArgs === void 0) { applyArgs = null; }\n if (source === void 0) { source = null; }\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n };\n Zone.prototype.runTask = function (task, applyThis, applyArgs) {\n if (task.zone != this) {\n throw new Error('A task can only be run in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n }\n // https://github.com/angular/zone.js/issues/778, sometimes eventTask\n // will run in notScheduled(canceled) state, we should not try to\n // run such kind of task but just return\n // we have to define an variable here, if not\n // typescript compiler will complain below\n var isNotScheduled = task.state === notScheduled;\n if (isNotScheduled && task.type === eventTask) {\n return;\n }\n var reEntryGuard = task.state != running;\n reEntryGuard && task._transitionTo(running, scheduled);\n task.runCount++;\n var previousTask = _currentTask;\n _currentTask = task;\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n if (task.type == macroTask && task.data && !task.data.isPeriodic) {\n task.cancelFn = null;\n }\n try {\n return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n // if the task's state is notScheduled or unknown, then it has already been cancelled\n // we should not reset the state to scheduled\n if (task.state !== notScheduled && task.state !== unknown) {\n if (task.type == eventTask || (task.data && task.data.isPeriodic)) {\n reEntryGuard && task._transitionTo(scheduled, running);\n }\n else {\n task.runCount = 0;\n this._updateTaskCount(task, -1);\n reEntryGuard &&\n task._transitionTo(notScheduled, running, notScheduled);\n }\n }\n _currentZoneFrame = _currentZoneFrame.parent;\n _currentTask = previousTask;\n }\n };\n Zone.prototype.scheduleTask = function (task) {\n if (task.zone && task.zone !== this) {\n // check if the task was rescheduled, the newZone\n // should not be the children of the original zone\n var newZone = this;\n while (newZone) {\n if (newZone === task.zone) {\n throw Error(\"can not reschedule task to \" + this\n .name + \" which is descendants of the original zone \" + task.zone.name);\n }\n newZone = newZone.parent;\n }\n }\n task._transitionTo(scheduling, notScheduled);\n var zoneDelegates = [];\n task._zoneDelegates = zoneDelegates;\n task._zone = this;\n try {\n task = this._zoneDelegate.scheduleTask(this, task);\n }\n catch (err) {\n // should set task's state to unknown when scheduleTask throw error\n // because the err may from reschedule, so the fromState maybe notScheduled\n task._transitionTo(unknown, scheduling, notScheduled);\n // TODO: @JiaLiPassion, should we check the result from handleError?\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n if (task._zoneDelegates === zoneDelegates) {\n // we have to check because internally the delegate can reschedule the task.\n this._updateTaskCount(task, 1);\n }\n if (task.state == scheduling) {\n task._transitionTo(scheduled, scheduling);\n }\n return task;\n };\n Zone.prototype.scheduleMicroTask = function (source, callback, data, customSchedule) {\n return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, null));\n };\n Zone.prototype.scheduleMacroTask = function (source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel));\n };\n Zone.prototype.scheduleEventTask = function (source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel));\n };\n Zone.prototype.cancelTask = function (task) {\n if (task.zone != this)\n throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n task._transitionTo(canceling, scheduled, running);\n try {\n this._zoneDelegate.cancelTask(this, task);\n }\n catch (err) {\n // if error occurs when cancelTask, transit the state to unknown\n task._transitionTo(unknown, canceling);\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n this._updateTaskCount(task, -1);\n task._transitionTo(notScheduled, canceling);\n task.runCount = 0;\n return task;\n };\n Zone.prototype._updateTaskCount = function (task, count) {\n var zoneDelegates = task._zoneDelegates;\n if (count == -1) {\n task._zoneDelegates = null;\n }\n for (var i = 0; i < zoneDelegates.length; i++) {\n zoneDelegates[i]._updateTaskCount(task.type, count);\n }\n };\n Zone.__symbol__ = __symbol__;\n return Zone;\n }());\n var DELEGATE_ZS = {\n name: '',\n onHasTask: function (delegate, _, target, hasTaskState) {\n return delegate.hasTask(target, hasTaskState);\n },\n onScheduleTask: function (delegate, _, target, task) {\n return delegate.scheduleTask(target, task);\n },\n onInvokeTask: function (delegate, _, target, task, applyThis, applyArgs) { return delegate.invokeTask(target, task, applyThis, applyArgs); },\n onCancelTask: function (delegate, _, target, task) {\n return delegate.cancelTask(target, task);\n }\n };\n var ZoneDelegate = /** @class */ (function () {\n function ZoneDelegate(zone, parentDelegate, zoneSpec) {\n this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 };\n this.zone = zone;\n this._parentDelegate = parentDelegate;\n this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS);\n this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt);\n this._forkCurrZone = zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate.zone);\n this._interceptZS =\n zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS);\n this._interceptDlgt =\n zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt);\n this._interceptCurrZone =\n zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate.zone);\n this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS);\n this._invokeDlgt =\n zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt);\n this._invokeCurrZone = zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate.zone);\n this._handleErrorZS =\n zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS);\n this._handleErrorDlgt =\n zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt);\n this._handleErrorCurrZone =\n zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate.zone);\n this._scheduleTaskZS =\n zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS);\n this._scheduleTaskDlgt =\n zoneSpec && (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt);\n this._scheduleTaskCurrZone =\n zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate.zone);\n this._invokeTaskZS =\n zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS);\n this._invokeTaskDlgt =\n zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt);\n this._invokeTaskCurrZone =\n zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate.zone);\n this._cancelTaskZS =\n zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS);\n this._cancelTaskDlgt =\n zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt);\n this._cancelTaskCurrZone =\n zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate.zone);\n this._hasTaskZS = null;\n this._hasTaskDlgt = null;\n this._hasTaskDlgtOwner = null;\n this._hasTaskCurrZone = null;\n var zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask;\n var parentHasTask = parentDelegate && parentDelegate._hasTaskZS;\n if (zoneSpecHasTask || parentHasTask) {\n // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such\n // a case all task related interceptors must go through this ZD. We can't short circuit it.\n this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS;\n this._hasTaskDlgt = parentDelegate;\n this._hasTaskDlgtOwner = this;\n this._hasTaskCurrZone = zone;\n if (!zoneSpec.onScheduleTask) {\n this._scheduleTaskZS = DELEGATE_ZS;\n this._scheduleTaskDlgt = parentDelegate;\n this._scheduleTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onInvokeTask) {\n this._invokeTaskZS = DELEGATE_ZS;\n this._invokeTaskDlgt = parentDelegate;\n this._invokeTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onCancelTask) {\n this._cancelTaskZS = DELEGATE_ZS;\n this._cancelTaskDlgt = parentDelegate;\n this._cancelTaskCurrZone = this.zone;\n }\n }\n }\n ZoneDelegate.prototype.fork = function (targetZone, zoneSpec) {\n return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) :\n new Zone(targetZone, zoneSpec);\n };\n ZoneDelegate.prototype.intercept = function (targetZone, callback, source) {\n return this._interceptZS ?\n this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) :\n callback;\n };\n ZoneDelegate.prototype.invoke = function (targetZone, callback, applyThis, applyArgs, source) {\n return this._invokeZS ?\n this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) :\n callback.apply(applyThis, applyArgs);\n };\n ZoneDelegate.prototype.handleError = function (targetZone, error) {\n return this._handleErrorZS ?\n this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) :\n true;\n };\n ZoneDelegate.prototype.scheduleTask = function (targetZone, task) {\n var returnTask = task;\n if (this._scheduleTaskZS) {\n if (this._hasTaskZS) {\n returnTask._zoneDelegates.push(this._hasTaskDlgtOwner);\n }\n returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task);\n if (!returnTask)\n returnTask = task;\n }\n else {\n if (task.scheduleFn) {\n task.scheduleFn(task);\n }\n else if (task.type == microTask) {\n scheduleMicroTask(task);\n }\n else {\n throw new Error('Task is missing scheduleFn.');\n }\n }\n return returnTask;\n };\n ZoneDelegate.prototype.invokeTask = function (targetZone, task, applyThis, applyArgs) {\n return this._invokeTaskZS ?\n this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) :\n task.callback.apply(applyThis, applyArgs);\n };\n ZoneDelegate.prototype.cancelTask = function (targetZone, task) {\n var value;\n if (this._cancelTaskZS) {\n value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task);\n }\n else {\n if (!task.cancelFn) {\n throw Error('Task is not cancelable');\n }\n value = task.cancelFn(task);\n }\n return value;\n };\n ZoneDelegate.prototype.hasTask = function (targetZone, isEmpty) {\n // hasTask should not throw error so other ZoneDelegate\n // can still trigger hasTask callback\n try {\n return this._hasTaskZS &&\n this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty);\n }\n catch (err) {\n this.handleError(targetZone, err);\n }\n };\n ZoneDelegate.prototype._updateTaskCount = function (type, count) {\n var counts = this._taskCounts;\n var prev = counts[type];\n var next = counts[type] = prev + count;\n if (next < 0) {\n throw new Error('More tasks executed then were scheduled.');\n }\n if (prev == 0 || next == 0) {\n var isEmpty = {\n microTask: counts['microTask'] > 0,\n macroTask: counts['macroTask'] > 0,\n eventTask: counts['eventTask'] > 0,\n change: type\n };\n this.hasTask(this.zone, isEmpty);\n }\n };\n return ZoneDelegate;\n }());\n var ZoneTask = /** @class */ (function () {\n function ZoneTask(type, source, callback, options, scheduleFn, cancelFn) {\n this._zone = null;\n this.runCount = 0;\n this._zoneDelegates = null;\n this._state = 'notScheduled';\n this.type = type;\n this.source = source;\n this.data = options;\n this.scheduleFn = scheduleFn;\n this.cancelFn = cancelFn;\n this.callback = callback;\n var self = this;\n // TODO: @JiaLiPassion options should have interface\n if (type === eventTask && options && options.useG) {\n this.invoke = ZoneTask.invokeTask;\n }\n else {\n this.invoke = function () {\n return ZoneTask.invokeTask.call(global, self, this, arguments);\n };\n }\n }\n ZoneTask.invokeTask = function (task, target, args) {\n if (!task) {\n task = this;\n }\n _numberOfNestedTaskFrames++;\n try {\n task.runCount++;\n return task.zone.runTask(task, target, args);\n }\n finally {\n if (_numberOfNestedTaskFrames == 1) {\n drainMicroTaskQueue();\n }\n _numberOfNestedTaskFrames--;\n }\n };\n Object.defineProperty(ZoneTask.prototype, \"zone\", {\n get: function () {\n return this._zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ZoneTask.prototype, \"state\", {\n get: function () {\n return this._state;\n },\n enumerable: true,\n configurable: true\n });\n ZoneTask.prototype.cancelScheduleRequest = function () {\n this._transitionTo(notScheduled, scheduling);\n };\n ZoneTask.prototype._transitionTo = function (toState, fromState1, fromState2) {\n if (this._state === fromState1 || this._state === fromState2) {\n this._state = toState;\n if (toState == notScheduled) {\n this._zoneDelegates = null;\n }\n }\n else {\n throw new Error(this.type + \" '\" + this.source + \"': can not transition to '\" + toState + \"', expecting state '\" + fromState1 + \"'\" + (fromState2 ?\n ' or \\'' + fromState2 + '\\'' :\n '') + \", was '\" + this._state + \"'.\");\n }\n };\n ZoneTask.prototype.toString = function () {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId;\n }\n else {\n return Object.prototype.toString.call(this);\n }\n };\n // add toJSON method to prevent cyclic error when\n // call JSON.stringify(zoneTask)\n ZoneTask.prototype.toJSON = function () {\n return {\n type: this.type,\n state: this.state,\n source: this.source,\n zone: this.zone.name,\n runCount: this.runCount\n };\n };\n return ZoneTask;\n }());\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// MICROTASK QUEUE\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n var symbolSetTimeout = __symbol__('setTimeout');\n var symbolPromise = __symbol__('Promise');\n var symbolThen = __symbol__('then');\n var _microTaskQueue = [];\n var _isDrainingMicrotaskQueue = false;\n var nativeMicroTaskQueuePromise;\n function scheduleMicroTask(task) {\n // if we are not running in any task, and there has not been anything scheduled\n // we must bootstrap the initial task creation by manually scheduling the drain\n if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) {\n // We are not running in Task, so we need to kickstart the microtask queue.\n if (!nativeMicroTaskQueuePromise) {\n if (global[symbolPromise]) {\n nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0);\n }\n }\n if (nativeMicroTaskQueuePromise) {\n nativeMicroTaskQueuePromise[symbolThen](drainMicroTaskQueue);\n }\n else {\n global[symbolSetTimeout](drainMicroTaskQueue, 0);\n }\n }\n task && _microTaskQueue.push(task);\n }\n function drainMicroTaskQueue() {\n if (!_isDrainingMicrotaskQueue) {\n _isDrainingMicrotaskQueue = true;\n while (_microTaskQueue.length) {\n var queue = _microTaskQueue;\n _microTaskQueue = [];\n for (var i = 0; i < queue.length; i++) {\n var task = queue[i];\n try {\n task.zone.runTask(task, null, null);\n }\n catch (error) {\n _api.onUnhandledError(error);\n }\n }\n }\n _api.microtaskDrainDone();\n _isDrainingMicrotaskQueue = false;\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// BOOTSTRAP\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n var NO_ZONE = { name: 'NO ZONE' };\n var notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown';\n var microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask';\n var patches = {};\n var _api = {\n symbol: __symbol__,\n currentZoneFrame: function () { return _currentZoneFrame; },\n onUnhandledError: noop,\n microtaskDrainDone: noop,\n scheduleMicroTask: scheduleMicroTask,\n showUncaughtError: function () { return !Zone[__symbol__('ignoreConsoleErrorUncaughtError')]; },\n patchEventTarget: function () { return []; },\n patchOnProperties: noop,\n patchMethod: function () { return noop; },\n bindArguments: function () { return null; },\n setNativePromise: function (NativePromise) {\n // sometimes NativePromise.resolve static function\n // is not ready yet, (such as core-js/es6.promise)\n // so we need to check here.\n if (NativePromise && typeof NativePromise.resolve === FUNCTION) {\n nativeMicroTaskQueuePromise = NativePromise.resolve(0);\n }\n },\n };\n var _currentZoneFrame = { parent: null, zone: new Zone(null, null) };\n var _currentTask = null;\n var _numberOfNestedTaskFrames = 0;\n function noop() { }\n function __symbol__(name) {\n return '__zone_symbol__' + name;\n }\n performanceMeasure('Zone', 'Zone');\n return global['Zone'] = Zone;\n})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global);\n\nZone.__load_patch('ZoneAwarePromise', function (global, Zone, api) {\n var ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var ObjectDefineProperty = Object.defineProperty;\n function readableObjectToString(obj) {\n if (obj && obj.toString === Object.prototype.toString) {\n var className = obj.constructor && obj.constructor.name;\n return (className ? className : '') + ': ' + JSON.stringify(obj);\n }\n return obj ? obj.toString() : Object.prototype.toString.call(obj);\n }\n var __symbol__ = api.symbol;\n var _uncaughtPromiseErrors = [];\n var symbolPromise = __symbol__('Promise');\n var symbolThen = __symbol__('then');\n var creationTrace = '__creationTrace__';\n api.onUnhandledError = function (e) {\n if (api.showUncaughtError()) {\n var rejection = e && e.rejection;\n if (rejection) {\n console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined);\n }\n else {\n console.error(e);\n }\n }\n };\n api.microtaskDrainDone = function () {\n while (_uncaughtPromiseErrors.length) {\n var _loop_1 = function () {\n var uncaughtPromiseError = _uncaughtPromiseErrors.shift();\n try {\n uncaughtPromiseError.zone.runGuarded(function () {\n throw uncaughtPromiseError;\n });\n }\n catch (error) {\n handleUnhandledRejection(error);\n }\n };\n while (_uncaughtPromiseErrors.length) {\n _loop_1();\n }\n }\n };\n var UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler');\n function handleUnhandledRejection(e) {\n api.onUnhandledError(e);\n try {\n var handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL];\n if (handler && typeof handler === 'function') {\n handler.call(this, e);\n }\n }\n catch (err) {\n }\n }\n function isThenable(value) {\n return value && value.then;\n }\n function forwardResolution(value) {\n return value;\n }\n function forwardRejection(rejection) {\n return ZoneAwarePromise.reject(rejection);\n }\n var symbolState = __symbol__('state');\n var symbolValue = __symbol__('value');\n var symbolFinally = __symbol__('finally');\n var symbolParentPromiseValue = __symbol__('parentPromiseValue');\n var symbolParentPromiseState = __symbol__('parentPromiseState');\n var source = 'Promise.then';\n var UNRESOLVED = null;\n var RESOLVED = true;\n var REJECTED = false;\n var REJECTED_NO_CATCH = 0;\n function makeResolver(promise, state) {\n return function (v) {\n try {\n resolvePromise(promise, state, v);\n }\n catch (err) {\n resolvePromise(promise, false, err);\n }\n // Do not return value or you will break the Promise spec.\n };\n }\n var once = function () {\n var wasCalled = false;\n return function wrapper(wrappedFunction) {\n return function () {\n if (wasCalled) {\n return;\n }\n wasCalled = true;\n wrappedFunction.apply(null, arguments);\n };\n };\n };\n var TYPE_ERROR = 'Promise resolved with itself';\n var CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace');\n // Promise Resolution\n function resolvePromise(promise, state, value) {\n var onceWrapper = once();\n if (promise === value) {\n throw new TypeError(TYPE_ERROR);\n }\n if (promise[symbolState] === UNRESOLVED) {\n // should only get value.then once based on promise spec.\n var then = null;\n try {\n if (typeof value === 'object' || typeof value === 'function') {\n then = value && value.then;\n }\n }\n catch (err) {\n onceWrapper(function () {\n resolvePromise(promise, false, err);\n })();\n return promise;\n }\n // if (value instanceof ZoneAwarePromise) {\n if (state !== REJECTED && value instanceof ZoneAwarePromise &&\n value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) &&\n value[symbolState] !== UNRESOLVED) {\n clearRejectedNoCatch(value);\n resolvePromise(promise, value[symbolState], value[symbolValue]);\n }\n else if (state !== REJECTED && typeof then === 'function') {\n try {\n then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false)));\n }\n catch (err) {\n onceWrapper(function () {\n resolvePromise(promise, false, err);\n })();\n }\n }\n else {\n promise[symbolState] = state;\n var queue = promise[symbolValue];\n promise[symbolValue] = value;\n if (promise[symbolFinally] === symbolFinally) {\n // the promise is generated by Promise.prototype.finally \n if (state === RESOLVED) {\n // the state is resolved, should ignore the value\n // and use parent promise value\n promise[symbolState] = promise[symbolParentPromiseState];\n promise[symbolValue] = promise[symbolParentPromiseValue];\n }\n }\n // record task information in value when error occurs, so we can\n // do some additional work such as render longStackTrace\n if (state === REJECTED && value instanceof Error) {\n // check if longStackTraceZone is here\n var trace = Zone.currentTask && Zone.currentTask.data &&\n Zone.currentTask.data[creationTrace];\n if (trace) {\n // only keep the long stack trace into error when in longStackTraceZone\n ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace });\n }\n }\n for (var i = 0; i < queue.length;) {\n scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]);\n }\n if (queue.length == 0 && state == REJECTED) {\n promise[symbolState] = REJECTED_NO_CATCH;\n try {\n // try to print more readable error log\n throw new Error('Uncaught (in promise): ' + readableObjectToString(value) +\n (value && value.stack ? '\\n' + value.stack : ''));\n }\n catch (err) {\n var error_1 = err;\n error_1.rejection = value;\n error_1.promise = promise;\n error_1.zone = Zone.current;\n error_1.task = Zone.currentTask;\n _uncaughtPromiseErrors.push(error_1);\n api.scheduleMicroTask(); // to make sure that it is running\n }\n }\n }\n }\n // Resolving an already resolved promise is a noop.\n return promise;\n }\n var REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler');\n function clearRejectedNoCatch(promise) {\n if (promise[symbolState] === REJECTED_NO_CATCH) {\n // if the promise is rejected no catch status\n // and queue.length > 0, means there is a error handler\n // here to handle the rejected promise, we should trigger\n // windows.rejectionhandled eventHandler or nodejs rejectionHandled\n // eventHandler\n try {\n var handler = Zone[REJECTION_HANDLED_HANDLER];\n if (handler && typeof handler === 'function') {\n handler.call(this, { rejection: promise[symbolValue], promise: promise });\n }\n }\n catch (err) {\n }\n promise[symbolState] = REJECTED;\n for (var i = 0; i < _uncaughtPromiseErrors.length; i++) {\n if (promise === _uncaughtPromiseErrors[i].promise) {\n _uncaughtPromiseErrors.splice(i, 1);\n }\n }\n }\n }\n function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) {\n clearRejectedNoCatch(promise);\n var promiseState = promise[symbolState];\n var delegate = promiseState ?\n (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution :\n (typeof onRejected === 'function') ? onRejected : forwardRejection;\n zone.scheduleMicroTask(source, function () {\n try {\n var parentPromiseValue = promise[symbolValue];\n var isFinallyPromise = chainPromise && symbolFinally === chainPromise[symbolFinally];\n if (isFinallyPromise) {\n // if the promise is generated from finally call, keep parent promise's state and value\n chainPromise[symbolParentPromiseValue] = parentPromiseValue;\n chainPromise[symbolParentPromiseState] = promiseState;\n }\n // should not pass value to finally callback\n var value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ? [] : [parentPromiseValue]);\n resolvePromise(chainPromise, true, value);\n }\n catch (error) {\n // if error occurs, should always return this error\n resolvePromise(chainPromise, false, error);\n }\n }, chainPromise);\n }\n var ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }';\n var ZoneAwarePromise = /** @class */ (function () {\n function ZoneAwarePromise(executor) {\n var promise = this;\n if (!(promise instanceof ZoneAwarePromise)) {\n throw new Error('Must be an instanceof Promise.');\n }\n promise[symbolState] = UNRESOLVED;\n promise[symbolValue] = []; // queue;\n try {\n executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED));\n }\n catch (error) {\n resolvePromise(promise, false, error);\n }\n }\n ZoneAwarePromise.toString = function () {\n return ZONE_AWARE_PROMISE_TO_STRING;\n };\n ZoneAwarePromise.resolve = function (value) {\n return resolvePromise(new this(null), RESOLVED, value);\n };\n ZoneAwarePromise.reject = function (error) {\n return resolvePromise(new this(null), REJECTED, error);\n };\n ZoneAwarePromise.race = function (values) {\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n function onResolve(value) {\n promise && (promise = null || resolve(value));\n }\n function onReject(error) {\n promise && (promise = null || reject(error));\n }\n for (var _i = 0, values_1 = values; _i < values_1.length; _i++) {\n var value = values_1[_i];\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n return promise;\n };\n ZoneAwarePromise.all = function (values) {\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n var count = 0;\n var resolvedValues = [];\n for (var _i = 0, values_2 = values; _i < values_2.length; _i++) {\n var value = values_2[_i];\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then((function (index) { return function (value) {\n resolvedValues[index] = value;\n count--;\n if (!count) {\n resolve(resolvedValues);\n }\n }; })(count), reject);\n count++;\n }\n if (!count)\n resolve(resolvedValues);\n return promise;\n };\n ZoneAwarePromise.prototype.then = function (onFulfilled, onRejected) {\n var chainPromise = new this.constructor(null);\n var zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected);\n }\n return chainPromise;\n };\n ZoneAwarePromise.prototype.catch = function (onRejected) {\n return this.then(null, onRejected);\n };\n ZoneAwarePromise.prototype.finally = function (onFinally) {\n var chainPromise = new this.constructor(null);\n chainPromise[symbolFinally] = symbolFinally;\n var zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFinally, onFinally);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally);\n }\n return chainPromise;\n };\n return ZoneAwarePromise;\n }());\n // Protect against aggressive optimizers dropping seemingly unused properties.\n // E.g. Closure Compiler in advanced mode.\n ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve;\n ZoneAwarePromise['reject'] = ZoneAwarePromise.reject;\n ZoneAwarePromise['race'] = ZoneAwarePromise.race;\n ZoneAwarePromise['all'] = ZoneAwarePromise.all;\n var NativePromise = global[symbolPromise] = global['Promise'];\n var ZONE_AWARE_PROMISE = Zone.__symbol__('ZoneAwarePromise');\n var desc = ObjectGetOwnPropertyDescriptor(global, 'Promise');\n if (!desc || desc.configurable) {\n desc && delete desc.writable;\n desc && delete desc.value;\n if (!desc) {\n desc = { configurable: true, enumerable: true };\n }\n desc.get = function () {\n // if we already set ZoneAwarePromise, use patched one\n // otherwise return native one.\n return global[ZONE_AWARE_PROMISE] ? global[ZONE_AWARE_PROMISE] : global[symbolPromise];\n };\n desc.set = function (NewNativePromise) {\n if (NewNativePromise === ZoneAwarePromise) {\n // if the NewNativePromise is ZoneAwarePromise\n // save to global\n global[ZONE_AWARE_PROMISE] = NewNativePromise;\n }\n else {\n // if the NewNativePromise is not ZoneAwarePromise\n // for example: after load zone.js, some library just\n // set es6-promise to global, if we set it to global\n // directly, assertZonePatched will fail and angular\n // will not loaded, so we just set the NewNativePromise\n // to global[symbolPromise], so the result is just like\n // we load ES6 Promise before zone.js\n global[symbolPromise] = NewNativePromise;\n if (!NewNativePromise.prototype[symbolThen]) {\n patchThen(NewNativePromise);\n }\n api.setNativePromise(NewNativePromise);\n }\n };\n ObjectDefineProperty(global, 'Promise', desc);\n }\n global['Promise'] = ZoneAwarePromise;\n var symbolThenPatched = __symbol__('thenPatched');\n function patchThen(Ctor) {\n var proto = Ctor.prototype;\n var prop = ObjectGetOwnPropertyDescriptor(proto, 'then');\n if (prop && (prop.writable === false || !prop.configurable)) {\n // check Ctor.prototype.then propertyDescriptor is writable or not\n // in meteor env, writable is false, we should ignore such case\n return;\n }\n var originalThen = proto.then;\n // Keep a reference to the original method.\n proto[symbolThen] = originalThen;\n Ctor.prototype.then = function (onResolve, onReject) {\n var _this = this;\n var wrapped = new ZoneAwarePromise(function (resolve, reject) {\n originalThen.call(_this, resolve, reject);\n });\n return wrapped.then(onResolve, onReject);\n };\n Ctor[symbolThenPatched] = true;\n }\n function zoneify(fn) {\n return function () {\n var resultPromise = fn.apply(this, arguments);\n if (resultPromise instanceof ZoneAwarePromise) {\n return resultPromise;\n }\n var ctor = resultPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n patchThen(ctor);\n }\n return resultPromise;\n };\n }\n if (NativePromise) {\n patchThen(NativePromise);\n var fetch_1 = global['fetch'];\n if (typeof fetch_1 == 'function') {\n global['fetch'] = zoneify(fetch_1);\n }\n }\n // This is not part of public API, but it is useful for tests, so we expose it.\n Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors;\n return ZoneAwarePromise;\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Suppress closure compiler errors about unknown 'Zone' variable\n * @fileoverview\n * @suppress {undefinedVars,globalThis,missingRequire}\n */\n// issue #989, to reduce bundle size, use short name\n/** Object.getOwnPropertyDescriptor */\nvar ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n/** Object.defineProperty */\nvar ObjectDefineProperty = Object.defineProperty;\n/** Object.getPrototypeOf */\nvar ObjectGetPrototypeOf = Object.getPrototypeOf;\n/** Object.create */\nvar ObjectCreate = Object.create;\n/** Array.prototype.slice */\nvar ArraySlice = Array.prototype.slice;\n/** addEventListener string const */\nvar ADD_EVENT_LISTENER_STR = 'addEventListener';\n/** removeEventListener string const */\nvar REMOVE_EVENT_LISTENER_STR = 'removeEventListener';\n/** zoneSymbol addEventListener */\nvar ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR);\n/** zoneSymbol removeEventListener */\nvar ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR);\n/** true string const */\nvar TRUE_STR = 'true';\n/** false string const */\nvar FALSE_STR = 'false';\n/** __zone_symbol__ string const */\nvar ZONE_SYMBOL_PREFIX = '__zone_symbol__';\nfunction wrapWithCurrentZone(callback, source) {\n return Zone.current.wrap(callback, source);\n}\nfunction scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) {\n return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel);\n}\nvar zoneSymbol = Zone.__symbol__;\nvar isWindowExists = typeof window !== 'undefined';\nvar internalWindow = isWindowExists ? window : undefined;\nvar _global = isWindowExists && internalWindow || typeof self === 'object' && self || global;\nvar REMOVE_ATTRIBUTE = 'removeAttribute';\nvar NULL_ON_PROP_VALUE = [null];\nfunction bindArguments(args, source) {\n for (var i = args.length - 1; i >= 0; i--) {\n if (typeof args[i] === 'function') {\n args[i] = wrapWithCurrentZone(args[i], source + '_' + i);\n }\n }\n return args;\n}\nfunction patchPrototype(prototype, fnNames) {\n var source = prototype.constructor['name'];\n var _loop_1 = function (i) {\n var name_1 = fnNames[i];\n var delegate = prototype[name_1];\n if (delegate) {\n var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name_1);\n if (!isPropertyWritable(prototypeDesc)) {\n return \"continue\";\n }\n prototype[name_1] = (function (delegate) {\n var patched = function () {\n return delegate.apply(this, bindArguments(arguments, source + '.' + name_1));\n };\n attachOriginToPatched(patched, delegate);\n return patched;\n })(delegate);\n }\n };\n for (var i = 0; i < fnNames.length; i++) {\n _loop_1(i);\n }\n}\nfunction isPropertyWritable(propertyDesc) {\n if (!propertyDesc) {\n return true;\n }\n if (propertyDesc.writable === false) {\n return false;\n }\n return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined');\n}\nvar isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope);\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nvar isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]');\nvar isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']);\n// we are in electron of nw, so we are both browser and nodejs\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nvar isMix = typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]' && !isWebWorker &&\n !!(isWindowExists && internalWindow['HTMLElement']);\nvar zoneSymbolEventNames = {};\nvar wrapFn = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n var eventNameSymbol = zoneSymbolEventNames[event.type];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[event.type] = zoneSymbol('ON_PROPERTY' + event.type);\n }\n var target = this || event.target || _global;\n var listener = target[eventNameSymbol];\n var result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\n return result;\n};\nfunction patchProperty(obj, prop, prototype) {\n var desc = ObjectGetOwnPropertyDescriptor(obj, prop);\n if (!desc && prototype) {\n // when patch window object, use prototype to check prop exist or not\n var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop);\n if (prototypeDesc) {\n desc = { enumerable: true, configurable: true };\n }\n }\n // if the descriptor not exists or is not configurable\n // just return\n if (!desc || !desc.configurable) {\n return;\n }\n // A property descriptor cannot have getter/setter and be writable\n // deleting the writable and value properties avoids this error:\n //\n // TypeError: property descriptors must not specify a value or be writable when a\n // getter or setter has been specified\n delete desc.writable;\n delete desc.value;\n var originalDescGet = desc.get;\n var originalDescSet = desc.set;\n // substr(2) cuz 'onclick' -> 'click', etc\n var eventName = prop.substr(2);\n var eventNameSymbol = zoneSymbolEventNames[eventName];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[eventName] = zoneSymbol('ON_PROPERTY' + eventName);\n }\n desc.set = function (newValue) {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n var target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return;\n }\n var previousValue = target[eventNameSymbol];\n if (previousValue) {\n target.removeEventListener(eventName, wrapFn);\n }\n // issue #978, when onload handler was added before loading zone.js\n // we should remove it with originalDescSet\n if (originalDescSet) {\n originalDescSet.apply(target, NULL_ON_PROP_VALUE);\n }\n if (typeof newValue === 'function') {\n target[eventNameSymbol] = newValue;\n target.addEventListener(eventName, wrapFn, false);\n }\n else {\n target[eventNameSymbol] = null;\n }\n };\n // The getter would return undefined for unassigned properties but the default value of an\n // unassigned property is null\n desc.get = function () {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n var target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return null;\n }\n var listener = target[eventNameSymbol];\n if (listener) {\n return listener;\n }\n else if (originalDescGet) {\n // result will be null when use inline event attribute,\n // such as \n // because the onclick function is internal raw uncompiled handler\n // the onclick will be evaluated when first time event was triggered or\n // the property is accessed, https://github.com/angular/zone.js/issues/525\n // so we should use original native get to retrieve the handler\n var value = originalDescGet && originalDescGet.call(this);\n if (value) {\n desc.set.call(this, value);\n if (typeof target[REMOVE_ATTRIBUTE] === 'function') {\n target.removeAttribute(prop);\n }\n return value;\n }\n }\n return null;\n };\n ObjectDefineProperty(obj, prop, desc);\n}\nfunction patchOnProperties(obj, properties, prototype) {\n if (properties) {\n for (var i = 0; i < properties.length; i++) {\n patchProperty(obj, 'on' + properties[i], prototype);\n }\n }\n else {\n var onProperties = [];\n for (var prop in obj) {\n if (prop.substr(0, 2) == 'on') {\n onProperties.push(prop);\n }\n }\n for (var j = 0; j < onProperties.length; j++) {\n patchProperty(obj, onProperties[j], prototype);\n }\n }\n}\nvar originalInstanceKey = zoneSymbol('originalInstance');\n// wrap some native API on `window`\nfunction patchClass(className) {\n var OriginalClass = _global[className];\n if (!OriginalClass)\n return;\n // keep original class in global\n _global[zoneSymbol(className)] = OriginalClass;\n _global[className] = function () {\n var a = bindArguments(arguments, className);\n switch (a.length) {\n case 0:\n this[originalInstanceKey] = new OriginalClass();\n break;\n case 1:\n this[originalInstanceKey] = new OriginalClass(a[0]);\n break;\n case 2:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1]);\n break;\n case 3:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]);\n break;\n case 4:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]);\n break;\n default:\n throw new Error('Arg list too long.');\n }\n };\n // attach original delegate to patched function\n attachOriginToPatched(_global[className], OriginalClass);\n var instance = new OriginalClass(function () { });\n var prop;\n for (prop in instance) {\n // https://bugs.webkit.org/show_bug.cgi?id=44721\n if (className === 'XMLHttpRequest' && prop === 'responseBlob')\n continue;\n (function (prop) {\n if (typeof instance[prop] === 'function') {\n _global[className].prototype[prop] = function () {\n return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);\n };\n }\n else {\n ObjectDefineProperty(_global[className].prototype, prop, {\n set: function (fn) {\n if (typeof fn === 'function') {\n this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop);\n // keep callback in wrapped function so we can\n // use it in Function.prototype.toString to return\n // the native one.\n attachOriginToPatched(this[originalInstanceKey][prop], fn);\n }\n else {\n this[originalInstanceKey][prop] = fn;\n }\n },\n get: function () {\n return this[originalInstanceKey][prop];\n }\n });\n }\n }(prop));\n }\n for (prop in OriginalClass) {\n if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) {\n _global[className][prop] = OriginalClass[prop];\n }\n }\n}\nfunction patchMethod(target, name, patchFn) {\n var proto = target;\n while (proto && !proto.hasOwnProperty(name)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && target[name]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = target;\n }\n var delegateName = zoneSymbol(name);\n var delegate;\n if (proto && !(delegate = proto[delegateName])) {\n delegate = proto[delegateName] = proto[name];\n // check whether proto[name] is writable\n // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob\n var desc = proto && ObjectGetOwnPropertyDescriptor(proto, name);\n if (isPropertyWritable(desc)) {\n var patchDelegate_1 = patchFn(delegate, delegateName, name);\n proto[name] = function () {\n return patchDelegate_1(this, arguments);\n };\n attachOriginToPatched(proto[name], delegate);\n }\n }\n return delegate;\n}\n// TODO: @JiaLiPassion, support cancel task later if necessary\nfunction patchMacroTask(obj, funcName, metaCreator) {\n var setNative = null;\n function scheduleTask(task) {\n var data = task.data;\n data.args[data.cbIdx] = function () {\n task.invoke.apply(this, arguments);\n };\n setNative.apply(data.target, data.args);\n return task;\n }\n setNative = patchMethod(obj, funcName, function (delegate) { return function (self, args) {\n var meta = metaCreator(self, args);\n if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') {\n return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask, null);\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(self, args);\n }\n }; });\n}\n\nfunction attachOriginToPatched(patched, original) {\n patched[zoneSymbol('OriginalDelegate')] = original;\n}\nvar isDetectedIEOrEdge = false;\nvar ieOrEdge = false;\nfunction isIEOrEdge() {\n if (isDetectedIEOrEdge) {\n return ieOrEdge;\n }\n isDetectedIEOrEdge = true;\n try {\n var ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) {\n ieOrEdge = true;\n }\n return ieOrEdge;\n }\n catch (error) {\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// override Function.prototype.toString to make zone.js patched function\n// look like native function\nZone.__load_patch('toString', function (global) {\n // patch Func.prototype.toString to let them look like native\n var originalFunctionToString = Function.prototype.toString;\n var ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate');\n var PROMISE_SYMBOL = zoneSymbol('Promise');\n var ERROR_SYMBOL = zoneSymbol('Error');\n var newFunctionToString = function toString() {\n if (typeof this === 'function') {\n var originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL];\n if (originalDelegate) {\n if (typeof originalDelegate === 'function') {\n return originalFunctionToString.apply(this[ORIGINAL_DELEGATE_SYMBOL], arguments);\n }\n else {\n return Object.prototype.toString.call(originalDelegate);\n }\n }\n if (this === Promise) {\n var nativePromise = global[PROMISE_SYMBOL];\n if (nativePromise) {\n return originalFunctionToString.apply(nativePromise, arguments);\n }\n }\n if (this === Error) {\n var nativeError = global[ERROR_SYMBOL];\n if (nativeError) {\n return originalFunctionToString.apply(nativeError, arguments);\n }\n }\n }\n return originalFunctionToString.apply(this, arguments);\n };\n newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString;\n Function.prototype.toString = newFunctionToString;\n // patch Object.prototype.toString to let them look like native\n var originalObjectToString = Object.prototype.toString;\n var PROMISE_OBJECT_TO_STRING = '[object Promise]';\n Object.prototype.toString = function () {\n if (this instanceof Promise) {\n return PROMISE_OBJECT_TO_STRING;\n }\n return originalObjectToString.apply(this, arguments);\n };\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\n// an identifier to tell ZoneTask do not create a new invoke closure\nvar OPTIMIZED_ZONE_EVENT_TASK_DATA = {\n useG: true\n};\nvar zoneSymbolEventNames$1 = {};\nvar globalSources = {};\nvar EVENT_NAME_SYMBOL_REGX = /^__zone_symbol__(\\w+)(true|false)$/;\nvar IMMEDIATE_PROPAGATION_SYMBOL = ('__zone_symbol__propagationStopped');\nfunction patchEventTarget(_global, apis, patchOptions) {\n var ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR;\n var REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR;\n var LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners';\n var REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners';\n var zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER);\n var ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':';\n var PREPEND_EVENT_LISTENER = 'prependListener';\n var PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':';\n var invokeTask = function (task, target, event) {\n // for better performance, check isRemoved which is set\n // by removeEventListener\n if (task.isRemoved) {\n return;\n }\n var delegate = task.callback;\n if (typeof delegate === 'object' && delegate.handleEvent) {\n // create the bind version of handleEvent when invoke\n task.callback = function (event) { return delegate.handleEvent(event); };\n task.originalDelegate = delegate;\n }\n // invoke static task.invoke\n task.invoke(task, target, [event]);\n var options = task.options;\n if (options && typeof options === 'object' && options.once) {\n // if options.once is true, after invoke once remove listener here\n // only browser need to do this, nodejs eventEmitter will cal removeListener\n // inside EventEmitter.once\n var delegate_1 = task.originalDelegate ? task.originalDelegate : task.callback;\n target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate_1, options);\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = false\n var globalZoneAwareCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n var target = this || event.target || _global;\n var tasks = target[zoneSymbolEventNames$1[event.type][FALSE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n var copyTasks = tasks.slice();\n for (var i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = true\n var globalZoneAwareCaptureCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n var target = this || event.target || _global;\n var tasks = target[zoneSymbolEventNames$1[event.type][TRUE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n var copyTasks = tasks.slice();\n for (var i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n function patchEventTargetMethods(obj, patchOptions) {\n if (!obj) {\n return false;\n }\n var useGlobalCallback = true;\n if (patchOptions && patchOptions.useG !== undefined) {\n useGlobalCallback = patchOptions.useG;\n }\n var validateHandler = patchOptions && patchOptions.vh;\n var checkDuplicate = true;\n if (patchOptions && patchOptions.chkDup !== undefined) {\n checkDuplicate = patchOptions.chkDup;\n }\n var returnTarget = false;\n if (patchOptions && patchOptions.rt !== undefined) {\n returnTarget = patchOptions.rt;\n }\n var proto = obj;\n while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && obj[ADD_EVENT_LISTENER]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = obj;\n }\n if (!proto) {\n return false;\n }\n if (proto[zoneSymbolAddEventListener]) {\n return false;\n }\n // a shared global taskData to pass data for scheduleEventTask\n // so we do not need to create a new object just for pass some data\n var taskData = {};\n var nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER];\n var nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] =\n proto[REMOVE_EVENT_LISTENER];\n var nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] =\n proto[LISTENERS_EVENT_LISTENER];\n var nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] =\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER];\n var nativePrependEventListener;\n if (patchOptions && patchOptions.prepend) {\n nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] =\n proto[patchOptions.prepend];\n }\n var customScheduleGlobal = function () {\n // if there is already a task for the eventName + capture,\n // just return, because we use the shared globalZoneAwareCallback here.\n if (taskData.isExisting) {\n return;\n }\n return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options);\n };\n var customCancelGlobal = function (task) {\n // if task is not marked as isRemoved, this call is directly\n // from Zone.prototype.cancelTask, we should remove the task\n // from tasksList of target first\n if (!task.isRemoved) {\n var symbolEventNames = zoneSymbolEventNames$1[task.eventName];\n var symbolEventName = void 0;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = symbolEventName && task.target[symbolEventName];\n if (existingTasks) {\n for (var i = 0; i < existingTasks.length; i++) {\n var existingTask = existingTasks[i];\n if (existingTask === task) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n task.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n task.allRemoved = true;\n task.target[symbolEventName] = null;\n }\n break;\n }\n }\n }\n }\n // if all tasks for the eventName + capture have gone,\n // we will really remove the global event callback,\n // if not, return\n if (!task.allRemoved) {\n return;\n }\n return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options);\n };\n var customScheduleNonGlobal = function (task) {\n return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n var customSchedulePrepend = function (task) {\n return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n var customCancelNonGlobal = function (task) {\n return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options);\n };\n var customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal;\n var customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal;\n var compareTaskCallbackVsDelegate = function (task, delegate) {\n var typeOfDelegate = typeof delegate;\n return (typeOfDelegate === 'function' && task.callback === delegate) ||\n (typeOfDelegate === 'object' && task.originalDelegate === delegate);\n };\n var compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate;\n var blackListedEvents = Zone[Zone.__symbol__('BLACK_LISTED_EVENTS')];\n var makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget, prepend) {\n if (returnTarget === void 0) { returnTarget = false; }\n if (prepend === void 0) { prepend = false; }\n return function () {\n var target = this || _global;\n var delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n // don't create the bind delegate function for handleEvent\n // case here to improve addEventListener performance\n // we will create the bind delegate when invoke\n var isHandleEvent = false;\n if (typeof delegate !== 'function') {\n if (!delegate.handleEvent) {\n return nativeListener.apply(this, arguments);\n }\n isHandleEvent = true;\n }\n if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) {\n return;\n }\n var eventName = arguments[0];\n var options = arguments[2];\n if (blackListedEvents) {\n // check black list\n for (var i = 0; i < blackListedEvents.length; i++) {\n if (eventName === blackListedEvents[i]) {\n return nativeListener.apply(this, arguments);\n }\n }\n }\n var capture;\n var once = false;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n once = options ? !!options.once : false;\n }\n var zone = Zone.current;\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n var symbolEventName;\n if (!symbolEventNames) {\n // the code is duplicate, but I just want to get some better performance\n var falseEventName = eventName + FALSE_STR;\n var trueEventName = eventName + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames$1[eventName] = {};\n zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture;\n symbolEventName = capture ? symbolCapture : symbol;\n }\n else {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = target[symbolEventName];\n var isExisting = false;\n if (existingTasks) {\n // already have task registered\n isExisting = true;\n if (checkDuplicate) {\n for (var i = 0; i < existingTasks.length; i++) {\n if (compare(existingTasks[i], delegate)) {\n // same callback, same capture, same event name, just return\n return;\n }\n }\n }\n }\n else {\n existingTasks = target[symbolEventName] = [];\n }\n var source;\n var constructorName = target.constructor['name'];\n var targetSource = globalSources[constructorName];\n if (targetSource) {\n source = targetSource[eventName];\n }\n if (!source) {\n source = constructorName + addSource + eventName;\n }\n // do not create a new object as task.data to pass those things\n // just use the global shared one\n taskData.options = options;\n if (once) {\n // if addEventListener with once options, we don't pass it to\n // native addEventListener, instead we keep the once setting\n // and handle ourselves.\n taskData.options.once = false;\n }\n taskData.target = target;\n taskData.capture = capture;\n taskData.eventName = eventName;\n taskData.isExisting = isExisting;\n var data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : null;\n // keep taskData into data to allow onScheduleEventTask to access the task information\n if (data) {\n data.taskData = taskData;\n }\n var task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn);\n // should clear taskData.target to avoid memory leak\n // issue, https://github.com/angular/angular/issues/20442\n taskData.target = null;\n // need to clear up taskData because it is a global object\n if (data) {\n data.taskData = null;\n }\n // have to save those information to task in case\n // application may call task.zone.cancelTask() directly\n if (once) {\n options.once = true;\n }\n task.options = options;\n task.target = target;\n task.capture = capture;\n task.eventName = eventName;\n if (isHandleEvent) {\n // save original delegate for compare to check duplicate\n task.originalDelegate = delegate;\n }\n if (!prepend) {\n existingTasks.push(task);\n }\n else {\n existingTasks.unshift(task);\n }\n if (returnTarget) {\n return target;\n }\n };\n };\n proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget);\n if (nativePrependEventListener) {\n proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true);\n }\n proto[REMOVE_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n var options = arguments[2];\n var capture;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n }\n var delegate = arguments[1];\n if (!delegate) {\n return nativeRemoveEventListener.apply(this, arguments);\n }\n if (validateHandler &&\n !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) {\n return;\n }\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n var symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = symbolEventName && target[symbolEventName];\n if (existingTasks) {\n for (var i = 0; i < existingTasks.length; i++) {\n var existingTask = existingTasks[i];\n if (compare(existingTask, delegate)) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n existingTask.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n existingTask.allRemoved = true;\n target[symbolEventName] = null;\n }\n existingTask.zone.cancelTask(existingTask);\n if (returnTarget) {\n return target;\n }\n return;\n }\n }\n }\n // issue 930, didn't find the event name or callback\n // from zone kept existingTasks, the callback maybe\n // added outside of zone, we need to call native removeEventListener\n // to try to remove it.\n return nativeRemoveEventListener.apply(this, arguments);\n };\n proto[LISTENERS_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n var listeners = [];\n var tasks = findEventTasks(target, eventName);\n for (var i = 0; i < tasks.length; i++) {\n var task = tasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n listeners.push(delegate);\n }\n return listeners;\n };\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n if (!eventName) {\n var keys = Object.keys(target);\n for (var i = 0; i < keys.length; i++) {\n var prop = keys[i];\n var match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n var evtName = match && match[1];\n // in nodejs EventEmitter, removeListener event is\n // used for monitoring the removeListener call,\n // so just keep removeListener eventListener until\n // all other eventListeners are removed\n if (evtName && evtName !== 'removeListener') {\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName);\n }\n }\n // remove removeListener listener finally\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener');\n }\n else {\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n if (symbolEventNames) {\n var symbolEventName = symbolEventNames[FALSE_STR];\n var symbolCaptureEventName = symbolEventNames[TRUE_STR];\n var tasks = target[symbolEventName];\n var captureTasks = target[symbolCaptureEventName];\n if (tasks) {\n var removeTasks = tasks.slice();\n for (var i = 0; i < removeTasks.length; i++) {\n var task = removeTasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n if (captureTasks) {\n var removeTasks = captureTasks.slice();\n for (var i = 0; i < removeTasks.length; i++) {\n var task = removeTasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n }\n }\n if (returnTarget) {\n return this;\n }\n };\n // for native toString patch\n attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener);\n attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener);\n if (nativeRemoveAllListeners) {\n attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners);\n }\n if (nativeListeners) {\n attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners);\n }\n return true;\n }\n var results = [];\n for (var i = 0; i < apis.length; i++) {\n results[i] = patchEventTargetMethods(apis[i], patchOptions);\n }\n return results;\n}\nfunction findEventTasks(target, eventName) {\n var foundTasks = [];\n for (var prop in target) {\n var match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n var evtName = match && match[1];\n if (evtName && (!eventName || evtName === eventName)) {\n var tasks = target[prop];\n if (tasks) {\n for (var i = 0; i < tasks.length; i++) {\n foundTasks.push(tasks[i]);\n }\n }\n }\n }\n return foundTasks;\n}\nfunction patchEventPrototype(global, api) {\n var Event = global['Event'];\n if (Event && Event.prototype) {\n api.patchMethod(Event.prototype, 'stopImmediatePropagation', function (delegate) { return function (self, args) {\n self[IMMEDIATE_PROPAGATION_SYMBOL] = true;\n // we need to call the native stopImmediatePropagation\n // in case in some hybrid application, some part of\n // application will be controlled by zone, some are not\n delegate && delegate.apply(self, args);\n }; });\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nvar taskSymbol = zoneSymbol('zoneTask');\nfunction patchTimer(window, setName, cancelName, nameSuffix) {\n var setNative = null;\n var clearNative = null;\n setName += nameSuffix;\n cancelName += nameSuffix;\n var tasksByHandleId = {};\n function scheduleTask(task) {\n var data = task.data;\n function timer() {\n try {\n task.invoke.apply(this, arguments);\n }\n finally {\n // issue-934, task will be cancelled\n // even it is a periodic task such as\n // setInterval\n if (!(task.data && task.data.isPeriodic)) {\n if (typeof data.handleId === 'number') {\n // in non-nodejs env, we remove timerId\n // from local cache\n delete tasksByHandleId[data.handleId];\n }\n else if (data.handleId) {\n // Node returns complex objects as handleIds\n // we remove task reference from timer object\n data.handleId[taskSymbol] = null;\n }\n }\n }\n }\n data.args[0] = timer;\n data.handleId = setNative.apply(window, data.args);\n return task;\n }\n function clearTask(task) {\n return clearNative(task.data.handleId);\n }\n setNative =\n patchMethod(window, setName, function (delegate) { return function (self, args) {\n if (typeof args[0] === 'function') {\n var options = {\n handleId: null,\n isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 : null,\n args: args\n };\n var task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask);\n if (!task) {\n return task;\n }\n // Node.js must additionally support the ref and unref functions.\n var handle = task.data.handleId;\n if (typeof handle === 'number') {\n // for non nodejs env, we save handleId: task\n // mapping in local cache for clearTimeout\n tasksByHandleId[handle] = task;\n }\n else if (handle) {\n // for nodejs env, we save task\n // reference in timerId Object for clearTimeout\n handle[taskSymbol] = task;\n }\n // check whether handle is null, because some polyfill or browser\n // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame\n if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' &&\n typeof handle.unref === 'function') {\n task.ref = handle.ref.bind(handle);\n task.unref = handle.unref.bind(handle);\n }\n if (typeof handle === 'number' || handle) {\n return handle;\n }\n return task;\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(window, args);\n }\n }; });\n clearNative =\n patchMethod(window, cancelName, function (delegate) { return function (self, args) {\n var id = args[0];\n var task;\n if (typeof id === 'number') {\n // non nodejs env.\n task = tasksByHandleId[id];\n }\n else {\n // nodejs env.\n task = id && id[taskSymbol];\n // other environments.\n if (!task) {\n task = id;\n }\n }\n if (task && typeof task.type === 'string') {\n if (task.state !== 'notScheduled' &&\n (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) {\n if (typeof id === 'number') {\n delete tasksByHandleId[id];\n }\n else if (id) {\n id[taskSymbol] = null;\n }\n // Do not cancel already canceled functions\n task.zone.cancelTask(task);\n }\n }\n else {\n // cause an error by calling it directly.\n delegate.apply(window, args);\n }\n }; });\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/*\n * This is necessary for Chrome and Chrome mobile, to enable\n * things like redefining `createdCallback` on an element.\n */\nvar _defineProperty = Object[zoneSymbol('defineProperty')] = Object.defineProperty;\nvar _getOwnPropertyDescriptor = Object[zoneSymbol('getOwnPropertyDescriptor')] =\n Object.getOwnPropertyDescriptor;\nvar _create = Object.create;\nvar unconfigurablesKey = zoneSymbol('unconfigurables');\nfunction propertyPatch() {\n Object.defineProperty = function (obj, prop, desc) {\n if (isUnconfigurable(obj, prop)) {\n throw new TypeError('Cannot assign to read only property \\'' + prop + '\\' of ' + obj);\n }\n var originalConfigurableFlag = desc.configurable;\n if (prop !== 'prototype') {\n desc = rewriteDescriptor(obj, prop, desc);\n }\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n };\n Object.defineProperties = function (obj, props) {\n Object.keys(props).forEach(function (prop) {\n Object.defineProperty(obj, prop, props[prop]);\n });\n return obj;\n };\n Object.create = function (obj, proto) {\n if (typeof proto === 'object' && !Object.isFrozen(proto)) {\n Object.keys(proto).forEach(function (prop) {\n proto[prop] = rewriteDescriptor(obj, prop, proto[prop]);\n });\n }\n return _create(obj, proto);\n };\n Object.getOwnPropertyDescriptor = function (obj, prop) {\n var desc = _getOwnPropertyDescriptor(obj, prop);\n if (isUnconfigurable(obj, prop)) {\n desc.configurable = false;\n }\n return desc;\n };\n}\nfunction _redefineProperty(obj, prop, desc) {\n var originalConfigurableFlag = desc.configurable;\n desc = rewriteDescriptor(obj, prop, desc);\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n}\nfunction isUnconfigurable(obj, prop) {\n return obj && obj[unconfigurablesKey] && obj[unconfigurablesKey][prop];\n}\nfunction rewriteDescriptor(obj, prop, desc) {\n // issue-927, if the desc is frozen, don't try to change the desc\n if (!Object.isFrozen(desc)) {\n desc.configurable = true;\n }\n if (!desc.configurable) {\n // issue-927, if the obj is frozen, don't try to set the desc to obj\n if (!obj[unconfigurablesKey] && !Object.isFrozen(obj)) {\n _defineProperty(obj, unconfigurablesKey, { writable: true, value: {} });\n }\n if (obj[unconfigurablesKey]) {\n obj[unconfigurablesKey][prop] = true;\n }\n }\n return desc;\n}\nfunction _tryDefineProperty(obj, prop, desc, originalConfigurableFlag) {\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n if (desc.configurable) {\n // In case of errors, when the configurable flag was likely set by rewriteDescriptor(), let's\n // retry with the original flag value\n if (typeof originalConfigurableFlag == 'undefined') {\n delete desc.configurable;\n }\n else {\n desc.configurable = originalConfigurableFlag;\n }\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n var descJson = null;\n try {\n descJson = JSON.stringify(desc);\n }\n catch (error) {\n descJson = desc.toString();\n }\n console.log(\"Attempting to configure '\" + prop + \"' with descriptor '\" + descJson + \"' on object '\" + obj + \"' and got error, giving up: \" + error);\n }\n }\n else {\n throw error;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// we have to patch the instance since the proto is non-configurable\nfunction apply(api, _global) {\n var WS = _global.WebSocket;\n // On Safari window.EventTarget doesn't exist so need to patch WS add/removeEventListener\n // On older Chrome, no need since EventTarget was already patched\n if (!_global.EventTarget) {\n patchEventTarget(_global, [WS.prototype]);\n }\n _global.WebSocket = function (x, y) {\n var socket = arguments.length > 1 ? new WS(x, y) : new WS(x);\n var proxySocket;\n var proxySocketProto;\n // Safari 7.0 has non-configurable own 'onmessage' and friends properties on the socket instance\n var onmessageDesc = ObjectGetOwnPropertyDescriptor(socket, 'onmessage');\n if (onmessageDesc && onmessageDesc.configurable === false) {\n proxySocket = ObjectCreate(socket);\n // socket have own property descriptor 'onopen', 'onmessage', 'onclose', 'onerror'\n // but proxySocket not, so we will keep socket as prototype and pass it to\n // patchOnProperties method\n proxySocketProto = socket;\n [ADD_EVENT_LISTENER_STR, REMOVE_EVENT_LISTENER_STR, 'send', 'close'].forEach(function (propName) {\n proxySocket[propName] = function () {\n var args = ArraySlice.call(arguments);\n if (propName === ADD_EVENT_LISTENER_STR || propName === REMOVE_EVENT_LISTENER_STR) {\n var eventName = args.length > 0 ? args[0] : undefined;\n if (eventName) {\n var propertySymbol = Zone.__symbol__('ON_PROPERTY' + eventName);\n socket[propertySymbol] = proxySocket[propertySymbol];\n }\n }\n return socket[propName].apply(socket, args);\n };\n });\n }\n else {\n // we can patch the real socket\n proxySocket = socket;\n }\n patchOnProperties(proxySocket, ['close', 'error', 'message', 'open'], proxySocketProto);\n return proxySocket;\n };\n var globalWebSocket = _global['WebSocket'];\n for (var prop in WS) {\n globalWebSocket[prop] = WS[prop];\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {globalThis}\n */\nvar globalEventHandlersEventNames = [\n 'abort',\n 'animationcancel',\n 'animationend',\n 'animationiteration',\n 'auxclick',\n 'beforeinput',\n 'blur',\n 'cancel',\n 'canplay',\n 'canplaythrough',\n 'change',\n 'compositionstart',\n 'compositionupdate',\n 'compositionend',\n 'cuechange',\n 'click',\n 'close',\n 'contextmenu',\n 'curechange',\n 'dblclick',\n 'drag',\n 'dragend',\n 'dragenter',\n 'dragexit',\n 'dragleave',\n 'dragover',\n 'drop',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'focus',\n 'focusin',\n 'focusout',\n 'gotpointercapture',\n 'input',\n 'invalid',\n 'keydown',\n 'keypress',\n 'keyup',\n 'load',\n 'loadstart',\n 'loadeddata',\n 'loadedmetadata',\n 'lostpointercapture',\n 'mousedown',\n 'mouseenter',\n 'mouseleave',\n 'mousemove',\n 'mouseout',\n 'mouseover',\n 'mouseup',\n 'mousewheel',\n 'orientationchange',\n 'pause',\n 'play',\n 'playing',\n 'pointercancel',\n 'pointerdown',\n 'pointerenter',\n 'pointerleave',\n 'pointerlockchange',\n 'mozpointerlockchange',\n 'webkitpointerlockerchange',\n 'pointerlockerror',\n 'mozpointerlockerror',\n 'webkitpointerlockerror',\n 'pointermove',\n 'pointout',\n 'pointerover',\n 'pointerup',\n 'progress',\n 'ratechange',\n 'reset',\n 'resize',\n 'scroll',\n 'seeked',\n 'seeking',\n 'select',\n 'selectionchange',\n 'selectstart',\n 'show',\n 'sort',\n 'stalled',\n 'submit',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'touchcancel',\n 'touchmove',\n 'touchstart',\n 'touchend',\n 'transitioncancel',\n 'transitionend',\n 'waiting',\n 'wheel'\n];\nvar documentEventNames = [\n 'afterscriptexecute', 'beforescriptexecute', 'DOMContentLoaded', 'fullscreenchange',\n 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror',\n 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange',\n 'visibilitychange'\n];\nvar windowEventNames = [\n 'absolutedeviceorientation',\n 'afterinput',\n 'afterprint',\n 'appinstalled',\n 'beforeinstallprompt',\n 'beforeprint',\n 'beforeunload',\n 'devicelight',\n 'devicemotion',\n 'deviceorientation',\n 'deviceorientationabsolute',\n 'deviceproximity',\n 'hashchange',\n 'languagechange',\n 'message',\n 'mozbeforepaint',\n 'offline',\n 'online',\n 'paint',\n 'pageshow',\n 'pagehide',\n 'popstate',\n 'rejectionhandled',\n 'storage',\n 'unhandledrejection',\n 'unload',\n 'userproximity',\n 'vrdisplyconnected',\n 'vrdisplaydisconnected',\n 'vrdisplaypresentchange'\n];\nvar htmlElementEventNames = [\n 'beforecopy', 'beforecut', 'beforepaste', 'copy', 'cut', 'paste', 'dragstart', 'loadend',\n 'animationstart', 'search', 'transitionrun', 'transitionstart', 'webkitanimationend',\n 'webkitanimationiteration', 'webkitanimationstart', 'webkittransitionend'\n];\nvar mediaElementEventNames = ['encrypted', 'waitingforkey', 'msneedkey', 'mozinterruptbegin', 'mozinterruptend'];\nvar ieElementEventNames = [\n 'activate',\n 'afterupdate',\n 'ariarequest',\n 'beforeactivate',\n 'beforedeactivate',\n 'beforeeditfocus',\n 'beforeupdate',\n 'cellchange',\n 'controlselect',\n 'dataavailable',\n 'datasetchanged',\n 'datasetcomplete',\n 'errorupdate',\n 'filterchange',\n 'layoutcomplete',\n 'losecapture',\n 'move',\n 'moveend',\n 'movestart',\n 'propertychange',\n 'resizeend',\n 'resizestart',\n 'rowenter',\n 'rowexit',\n 'rowsdelete',\n 'rowsinserted',\n 'command',\n 'compassneedscalibration',\n 'deactivate',\n 'help',\n 'mscontentzoom',\n 'msmanipulationstatechanged',\n 'msgesturechange',\n 'msgesturedoubletap',\n 'msgestureend',\n 'msgesturehold',\n 'msgesturestart',\n 'msgesturetap',\n 'msgotpointercapture',\n 'msinertiastart',\n 'mslostpointercapture',\n 'mspointercancel',\n 'mspointerdown',\n 'mspointerenter',\n 'mspointerhover',\n 'mspointerleave',\n 'mspointermove',\n 'mspointerout',\n 'mspointerover',\n 'mspointerup',\n 'pointerout',\n 'mssitemodejumplistitemremoved',\n 'msthumbnailclick',\n 'stop',\n 'storagecommit'\n];\nvar webglEventNames = ['webglcontextrestored', 'webglcontextlost', 'webglcontextcreationerror'];\nvar formEventNames = ['autocomplete', 'autocompleteerror'];\nvar detailEventNames = ['toggle'];\nvar frameEventNames = ['load'];\nvar frameSetEventNames = ['blur', 'error', 'focus', 'load', 'resize', 'scroll', 'messageerror'];\nvar marqueeEventNames = ['bounce', 'finish', 'start'];\nvar XMLHttpRequestEventNames = [\n 'loadstart', 'progress', 'abort', 'error', 'load', 'progress', 'timeout', 'loadend',\n 'readystatechange'\n];\nvar IDBIndexEventNames = ['upgradeneeded', 'complete', 'abort', 'success', 'error', 'blocked', 'versionchange', 'close'];\nvar websocketEventNames = ['close', 'error', 'open', 'message'];\nvar workerEventNames = ['error', 'message'];\nvar eventNames = globalEventHandlersEventNames.concat(webglEventNames, formEventNames, detailEventNames, documentEventNames, windowEventNames, htmlElementEventNames, ieElementEventNames);\nfunction filterProperties(target, onProperties, ignoreProperties) {\n if (!ignoreProperties) {\n return onProperties;\n }\n var tip = ignoreProperties.filter(function (ip) { return ip.target === target; });\n if (!tip || tip.length === 0) {\n return onProperties;\n }\n var targetIgnoreProperties = tip[0].ignoreProperties;\n return onProperties.filter(function (op) { return targetIgnoreProperties.indexOf(op) === -1; });\n}\nfunction patchFilteredProperties(target, onProperties, ignoreProperties, prototype) {\n // check whether target is available, sometimes target will be undefined\n // because different browser or some 3rd party plugin.\n if (!target) {\n return;\n }\n var filteredProperties = filterProperties(target, onProperties, ignoreProperties);\n patchOnProperties(target, filteredProperties, prototype);\n}\nfunction propertyDescriptorPatch(api, _global) {\n if (isNode && !isMix) {\n return;\n }\n var supportsWebSocket = typeof WebSocket !== 'undefined';\n if (canPatchViaPropertyDescriptor()) {\n var ignoreProperties = _global.__Zone_ignore_on_properties;\n // for browsers that we can patch the descriptor: Chrome & Firefox\n if (isBrowser) {\n var internalWindow = window;\n // in IE/Edge, onProp not exist in window object, but in WindowPrototype\n // so we need to pass WindowPrototype to check onProp exist or not\n patchFilteredProperties(internalWindow, eventNames.concat(['messageerror']), ignoreProperties, ObjectGetPrototypeOf(internalWindow));\n patchFilteredProperties(Document.prototype, eventNames, ignoreProperties);\n if (typeof internalWindow['SVGElement'] !== 'undefined') {\n patchFilteredProperties(internalWindow['SVGElement'].prototype, eventNames, ignoreProperties);\n }\n patchFilteredProperties(Element.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLElement.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLMediaElement.prototype, mediaElementEventNames, ignoreProperties);\n patchFilteredProperties(HTMLFrameSetElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLBodyElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLFrameElement.prototype, frameEventNames, ignoreProperties);\n patchFilteredProperties(HTMLIFrameElement.prototype, frameEventNames, ignoreProperties);\n var HTMLMarqueeElement_1 = internalWindow['HTMLMarqueeElement'];\n if (HTMLMarqueeElement_1) {\n patchFilteredProperties(HTMLMarqueeElement_1.prototype, marqueeEventNames, ignoreProperties);\n }\n var Worker_1 = internalWindow['Worker'];\n if (Worker_1) {\n patchFilteredProperties(Worker_1.prototype, workerEventNames, ignoreProperties);\n }\n }\n patchFilteredProperties(XMLHttpRequest.prototype, XMLHttpRequestEventNames, ignoreProperties);\n var XMLHttpRequestEventTarget = _global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n patchFilteredProperties(XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype, XMLHttpRequestEventNames, ignoreProperties);\n }\n if (typeof IDBIndex !== 'undefined') {\n patchFilteredProperties(IDBIndex.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBOpenDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBDatabase.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBTransaction.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBCursor.prototype, IDBIndexEventNames, ignoreProperties);\n }\n if (supportsWebSocket) {\n patchFilteredProperties(WebSocket.prototype, websocketEventNames, ignoreProperties);\n }\n }\n else {\n // Safari, Android browsers (Jelly Bean)\n patchViaCapturingAllTheEvents();\n patchClass('XMLHttpRequest');\n if (supportsWebSocket) {\n apply(api, _global);\n }\n }\n}\nfunction canPatchViaPropertyDescriptor() {\n if ((isBrowser || isMix) && !ObjectGetOwnPropertyDescriptor(HTMLElement.prototype, 'onclick') &&\n typeof Element !== 'undefined') {\n // WebKit https://bugs.webkit.org/show_bug.cgi?id=134364\n // IDL interface attributes are not configurable\n var desc = ObjectGetOwnPropertyDescriptor(Element.prototype, 'onclick');\n if (desc && !desc.configurable)\n return false;\n }\n var ON_READY_STATE_CHANGE = 'onreadystatechange';\n var XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n var xhrDesc = ObjectGetOwnPropertyDescriptor(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE);\n // add enumerable and configurable here because in opera\n // by default XMLHttpRequest.prototype.onreadystatechange is undefined\n // without adding enumerable and configurable will cause onreadystatechange\n // non-configurable\n // and if XMLHttpRequest.prototype.onreadystatechange is undefined,\n // we should set a real desc instead a fake one\n if (xhrDesc) {\n ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, {\n enumerable: true,\n configurable: true,\n get: function () {\n return true;\n }\n });\n var req = new XMLHttpRequest();\n var result = !!req.onreadystatechange;\n // restore original desc\n ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, xhrDesc || {});\n return result;\n }\n else {\n var SYMBOL_FAKE_ONREADYSTATECHANGE_1 = zoneSymbol('fake');\n ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, {\n enumerable: true,\n configurable: true,\n get: function () {\n return this[SYMBOL_FAKE_ONREADYSTATECHANGE_1];\n },\n set: function (value) {\n this[SYMBOL_FAKE_ONREADYSTATECHANGE_1] = value;\n }\n });\n var req = new XMLHttpRequest();\n var detectFunc = function () { };\n req.onreadystatechange = detectFunc;\n var result = req[SYMBOL_FAKE_ONREADYSTATECHANGE_1] === detectFunc;\n req.onreadystatechange = null;\n return result;\n }\n}\nvar unboundKey = zoneSymbol('unbound');\n// Whenever any eventListener fires, we check the eventListener target and all parents\n// for `onwhatever` properties and replace them with zone-bound functions\n// - Chrome (for now)\nfunction patchViaCapturingAllTheEvents() {\n var _loop_1 = function (i) {\n var property = eventNames[i];\n var onproperty = 'on' + property;\n self.addEventListener(property, function (event) {\n var elt = event.target, bound, source;\n if (elt) {\n source = elt.constructor['name'] + '.' + onproperty;\n }\n else {\n source = 'unknown.' + onproperty;\n }\n while (elt) {\n if (elt[onproperty] && !elt[onproperty][unboundKey]) {\n bound = wrapWithCurrentZone(elt[onproperty], source);\n bound[unboundKey] = elt[onproperty];\n elt[onproperty] = bound;\n }\n elt = elt.parentElement;\n }\n }, true);\n };\n for (var i = 0; i < eventNames.length; i++) {\n _loop_1(i);\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction eventTargetPatch(_global, api) {\n var WTF_ISSUE_555 = 'Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video';\n var NO_EVENT_TARGET = 'ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket'\n .split(',');\n var EVENT_TARGET = 'EventTarget';\n var apis = [];\n var isWtf = _global['wtf'];\n var WTF_ISSUE_555_ARRAY = WTF_ISSUE_555.split(',');\n if (isWtf) {\n // Workaround for: https://github.com/google/tracing-framework/issues/555\n apis = WTF_ISSUE_555_ARRAY.map(function (v) { return 'HTML' + v + 'Element'; }).concat(NO_EVENT_TARGET);\n }\n else if (_global[EVENT_TARGET]) {\n apis.push(EVENT_TARGET);\n }\n else {\n // Note: EventTarget is not available in all browsers,\n // if it's not available, we instead patch the APIs in the IDL that inherit from EventTarget\n apis = NO_EVENT_TARGET;\n }\n var isDisableIECheck = _global['__Zone_disable_IE_check'] || false;\n var isEnableCrossContextCheck = _global['__Zone_enable_cross_context_check'] || false;\n var ieOrEdge = isIEOrEdge();\n var ADD_EVENT_LISTENER_SOURCE = '.addEventListener:';\n var FUNCTION_WRAPPER = '[object FunctionWrapper]';\n var BROWSER_TOOLS = 'function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }';\n // predefine all __zone_symbol__ + eventName + true/false string\n for (var i = 0; i < eventNames.length; i++) {\n var eventName = eventNames[i];\n var falseEventName = eventName + FALSE_STR;\n var trueEventName = eventName + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames$1[eventName] = {};\n zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture;\n }\n // predefine all task.source string\n for (var i = 0; i < WTF_ISSUE_555.length; i++) {\n var target = WTF_ISSUE_555_ARRAY[i];\n var targets = globalSources[target] = {};\n for (var j = 0; j < eventNames.length; j++) {\n var eventName = eventNames[j];\n targets[eventName] = target + ADD_EVENT_LISTENER_SOURCE + eventName;\n }\n }\n var checkIEAndCrossContext = function (nativeDelegate, delegate, target, args) {\n if (!isDisableIECheck && ieOrEdge) {\n if (isEnableCrossContextCheck) {\n try {\n var testString = delegate.toString();\n if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n catch (error) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n else {\n var testString = delegate.toString();\n if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n }\n else if (isEnableCrossContextCheck) {\n try {\n delegate.toString();\n }\n catch (error) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n return true;\n };\n var apiTypes = [];\n for (var i = 0; i < apis.length; i++) {\n var type = _global[apis[i]];\n apiTypes.push(type && type.prototype);\n }\n // vh is validateHandler to check event handler\n // is valid or not(for security check)\n patchEventTarget(_global, apiTypes, { vh: checkIEAndCrossContext });\n api.patchEventTarget = patchEventTarget;\n return true;\n}\nfunction patchEvent(global, api) {\n patchEventPrototype(global, api);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction registerElementPatch(_global) {\n if ((!isBrowser && !isMix) || !('registerElement' in _global.document)) {\n return;\n }\n var _registerElement = document.registerElement;\n var callbacks = ['createdCallback', 'attachedCallback', 'detachedCallback', 'attributeChangedCallback'];\n document.registerElement = function (name, opts) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n var source = 'Document.registerElement::' + callback;\n var prototype = opts.prototype;\n if (prototype.hasOwnProperty(callback)) {\n var descriptor = ObjectGetOwnPropertyDescriptor(prototype, callback);\n if (descriptor && descriptor.value) {\n descriptor.value = wrapWithCurrentZone(descriptor.value, source);\n _redefineProperty(opts.prototype, callback, descriptor);\n }\n else {\n prototype[callback] = wrapWithCurrentZone(prototype[callback], source);\n }\n }\n else if (prototype[callback]) {\n prototype[callback] = wrapWithCurrentZone(prototype[callback], source);\n }\n });\n }\n return _registerElement.call(document, name, opts);\n };\n attachOriginToPatched(document.registerElement, _registerElement);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nZone.__load_patch('util', function (global, Zone, api) {\n api.patchOnProperties = patchOnProperties;\n api.patchMethod = patchMethod;\n api.bindArguments = bindArguments;\n});\nZone.__load_patch('timers', function (global) {\n var set = 'set';\n var clear = 'clear';\n patchTimer(global, set, clear, 'Timeout');\n patchTimer(global, set, clear, 'Interval');\n patchTimer(global, set, clear, 'Immediate');\n});\nZone.__load_patch('requestAnimationFrame', function (global) {\n patchTimer(global, 'request', 'cancel', 'AnimationFrame');\n patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame');\n patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame');\n});\nZone.__load_patch('blocking', function (global, Zone) {\n var blockingMethods = ['alert', 'prompt', 'confirm'];\n for (var i = 0; i < blockingMethods.length; i++) {\n var name_1 = blockingMethods[i];\n patchMethod(global, name_1, function (delegate, symbol, name) {\n return function (s, args) {\n return Zone.current.run(delegate, global, args, name);\n };\n });\n }\n});\nZone.__load_patch('EventTarget', function (global, Zone, api) {\n // load blackListEvents from global\n var SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS');\n if (global[SYMBOL_BLACK_LISTED_EVENTS]) {\n Zone[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_BLACK_LISTED_EVENTS];\n }\n patchEvent(global, api);\n eventTargetPatch(global, api);\n // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener\n var XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) {\n api.patchEventTarget(global, [XMLHttpRequestEventTarget.prototype]);\n }\n patchClass('MutationObserver');\n patchClass('WebKitMutationObserver');\n patchClass('IntersectionObserver');\n patchClass('FileReader');\n});\nZone.__load_patch('on_property', function (global, Zone, api) {\n propertyDescriptorPatch(api, global);\n propertyPatch();\n registerElementPatch(global);\n});\nZone.__load_patch('canvas', function (global) {\n var HTMLCanvasElement = global['HTMLCanvasElement'];\n if (typeof HTMLCanvasElement !== 'undefined' && HTMLCanvasElement.prototype &&\n HTMLCanvasElement.prototype.toBlob) {\n patchMacroTask(HTMLCanvasElement.prototype, 'toBlob', function (self, args) {\n return { name: 'HTMLCanvasElement.toBlob', target: self, cbIdx: 0, args: args };\n });\n }\n});\nZone.__load_patch('XHR', function (global, Zone) {\n // Treat XMLHttpRequest as a macrotask.\n patchXHR(global);\n var XHR_TASK = zoneSymbol('xhrTask');\n var XHR_SYNC = zoneSymbol('xhrSync');\n var XHR_LISTENER = zoneSymbol('xhrListener');\n var XHR_SCHEDULED = zoneSymbol('xhrScheduled');\n var XHR_URL = zoneSymbol('xhrURL');\n function patchXHR(window) {\n var XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n function findPendingTask(target) {\n return target[XHR_TASK];\n }\n var oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n var oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n if (!oriAddListener) {\n var XMLHttpRequestEventTarget = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n var XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget.prototype;\n oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n }\n var READY_STATE_CHANGE = 'readystatechange';\n var SCHEDULED = 'scheduled';\n function scheduleTask(task) {\n XMLHttpRequest[XHR_SCHEDULED] = false;\n var data = task.data;\n var target = data.target;\n // remove existing event listener\n var listener = target[XHR_LISTENER];\n if (!oriAddListener) {\n oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n if (listener) {\n oriRemoveListener.call(target, READY_STATE_CHANGE, listener);\n }\n var newListener = target[XHR_LISTENER] = function () {\n if (target.readyState === target.DONE) {\n // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with\n // readyState=4 multiple times, so we need to check task state here\n if (!data.aborted && XMLHttpRequest[XHR_SCHEDULED] && task.state === SCHEDULED) {\n task.invoke();\n }\n }\n };\n oriAddListener.call(target, READY_STATE_CHANGE, newListener);\n var storedTask = target[XHR_TASK];\n if (!storedTask) {\n target[XHR_TASK] = task;\n }\n sendNative.apply(target, data.args);\n XMLHttpRequest[XHR_SCHEDULED] = true;\n return task;\n }\n function placeholderCallback() { }\n function clearTask(task) {\n var data = task.data;\n // Note - ideally, we would call data.target.removeEventListener here, but it's too late\n // to prevent it from firing. So instead, we store info for the event listener.\n data.aborted = true;\n return abortNative.apply(data.target, data.args);\n }\n var openNative = patchMethod(XMLHttpRequestPrototype, 'open', function () { return function (self, args) {\n self[XHR_SYNC] = args[2] == false;\n self[XHR_URL] = args[1];\n return openNative.apply(self, args);\n }; });\n var XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send';\n var sendNative = patchMethod(XMLHttpRequestPrototype, 'send', function () { return function (self, args) {\n if (self[XHR_SYNC]) {\n // if the XHR is sync there is no task to schedule, just execute the code.\n return sendNative.apply(self, args);\n }\n else {\n var options = {\n target: self,\n url: self[XHR_URL],\n isPeriodic: false,\n delay: null,\n args: args,\n aborted: false\n };\n return scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n }\n }; });\n var abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', function () { return function (self) {\n var task = findPendingTask(self);\n if (task && typeof task.type == 'string') {\n // If the XHR has already completed, do nothing.\n // If the XHR has already been aborted, do nothing.\n // Fix #569, call abort multiple times before done will cause\n // macroTask task count be negative number\n if (task.cancelFn == null || (task.data && task.data.aborted)) {\n return;\n }\n task.zone.cancelTask(task);\n }\n // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no\n // task\n // to cancel. Do nothing.\n }; });\n }\n});\nZone.__load_patch('geolocation', function (global) {\n /// GEO_LOCATION\n if (global['navigator'] && global['navigator'].geolocation) {\n patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']);\n }\n});\nZone.__load_patch('PromiseRejectionEvent', function (global, Zone) {\n // handle unhandled promise rejection\n function findPromiseRejectionHandler(evtName) {\n return function (e) {\n var eventTasks = findEventTasks(global, evtName);\n eventTasks.forEach(function (eventTask) {\n // windows has added unhandledrejection event listener\n // trigger the event listener\n var PromiseRejectionEvent = global['PromiseRejectionEvent'];\n if (PromiseRejectionEvent) {\n var evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection });\n eventTask.invoke(evt);\n }\n });\n };\n }\n if (global['PromiseRejectionEvent']) {\n Zone[zoneSymbol('unhandledPromiseRejectionHandler')] =\n findPromiseRejectionHandler('unhandledrejection');\n Zone[zoneSymbol('rejectionHandledHandler')] =\n findPromiseRejectionHandler('rejectionhandled');\n }\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n})));\n","var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob()\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n}\n\nfunction isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n}\n\nif (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ]\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n }\n}\n\nfunction normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name)\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n}\n\nfunction normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value)\n }\n return value\n}\n\n// Build a destructive iterator for the value list\nfunction iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift()\n return {done: value === undefined, value: value}\n }\n }\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n }\n }\n\n return iterator\n}\n\nexport function Headers(headers) {\n this.map = {}\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value)\n }, this)\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1])\n }, this)\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name])\n }, this)\n }\n}\n\nHeaders.prototype.append = function(name, value) {\n name = normalizeName(name)\n value = normalizeValue(value)\n var oldValue = this.map[name]\n this.map[name] = oldValue ? oldValue + ', ' + value : value\n}\n\nHeaders.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)]\n}\n\nHeaders.prototype.get = function(name) {\n name = normalizeName(name)\n return this.has(name) ? this.map[name] : null\n}\n\nHeaders.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n}\n\nHeaders.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value)\n}\n\nHeaders.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this)\n }\n }\n}\n\nHeaders.prototype.keys = function() {\n var items = []\n this.forEach(function(value, name) {\n items.push(name)\n })\n return iteratorFor(items)\n}\n\nHeaders.prototype.values = function() {\n var items = []\n this.forEach(function(value) {\n items.push(value)\n })\n return iteratorFor(items)\n}\n\nHeaders.prototype.entries = function() {\n var items = []\n this.forEach(function(value, name) {\n items.push([name, value])\n })\n return iteratorFor(items)\n}\n\nif (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries\n}\n\nfunction consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true\n}\n\nfunction fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result)\n }\n reader.onerror = function() {\n reject(reader.error)\n }\n })\n}\n\nfunction readBlobAsArrayBuffer(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n}\n\nfunction readBlobAsText(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n}\n\nfunction readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf)\n var chars = new Array(view.length)\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i])\n }\n return chars.join('')\n}\n\nfunction bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength)\n view.set(new Uint8Array(buf))\n return view.buffer\n }\n}\n\nfunction Body() {\n this.bodyUsed = false\n\n this._initBody = function(body) {\n this._bodyInit = body\n if (!body) {\n this._bodyText = ''\n } else if (typeof body === 'string') {\n this._bodyText = body\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString()\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer)\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer])\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body)\n } else {\n this._bodyText = body = Object.prototype.toString.call(body)\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8')\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type)\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')\n }\n }\n }\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n }\n }\n\n this.text = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n }\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n }\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n }\n\n return this\n}\n\n// HTTP methods whose capitalization should be normalized\nvar methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']\n\nfunction normalizeMethod(method) {\n var upcased = method.toUpperCase()\n return methods.indexOf(upcased) > -1 ? upcased : method\n}\n\nexport function Request(input, options) {\n options = options || {}\n var body = options.body\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url\n this.credentials = input.credentials\n if (!options.headers) {\n this.headers = new Headers(input.headers)\n }\n this.method = input.method\n this.mode = input.mode\n this.signal = input.signal\n if (!body && input._bodyInit != null) {\n body = input._bodyInit\n input.bodyUsed = true\n }\n } else {\n this.url = String(input)\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin'\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers)\n }\n this.method = normalizeMethod(options.method || this.method || 'GET')\n this.mode = options.mode || this.mode || null\n this.signal = options.signal || this.signal\n this.referrer = null\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body)\n}\n\nRequest.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n}\n\nfunction decode(body) {\n var form = new FormData()\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=')\n var name = split.shift().replace(/\\+/g, ' ')\n var value = split.join('=').replace(/\\+/g, ' ')\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n}\n\nfunction parseHeaders(rawHeaders) {\n var headers = new Headers()\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ')\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':')\n var key = parts.shift().trim()\n if (key) {\n var value = parts.join(':').trim()\n headers.append(key, value)\n }\n })\n return headers\n}\n\nBody.call(Request.prototype)\n\nexport function Response(bodyInit, options) {\n if (!options) {\n options = {}\n }\n\n this.type = 'default'\n this.status = options.status === undefined ? 200 : options.status\n this.ok = this.status >= 200 && this.status < 300\n this.statusText = 'statusText' in options ? options.statusText : 'OK'\n this.headers = new Headers(options.headers)\n this.url = options.url || ''\n this._initBody(bodyInit)\n}\n\nBody.call(Response.prototype)\n\nResponse.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n}\n\nResponse.error = function() {\n var response = new Response(null, {status: 0, statusText: ''})\n response.type = 'error'\n return response\n}\n\nvar redirectStatuses = [301, 302, 303, 307, 308]\n\nResponse.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n}\n\nexport var DOMException = self.DOMException\ntry {\n new DOMException()\n} catch (err) {\n DOMException = function(message, name) {\n this.message = message\n this.name = name\n var error = Error(message)\n this.stack = error.stack\n }\n DOMException.prototype = Object.create(Error.prototype)\n DOMException.prototype.constructor = DOMException\n}\n\nexport function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init)\n\n if (request.signal && request.signal.aborted) {\n return reject(new DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest()\n\n function abortXhr() {\n xhr.abort()\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL')\n var body = 'response' in xhr ? xhr.response : xhr.responseText\n resolve(new Response(body, options))\n }\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.onabort = function() {\n reject(new DOMException('Aborted', 'AbortError'))\n }\n\n xhr.open(request.method, request.url, true)\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob'\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value)\n })\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr)\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr)\n }\n }\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)\n })\n}\n\nfetch.polyfill = true\n\nif (!self.fetch) {\n self.fetch = fetch\n self.Headers = Headers\n self.Request = Request\n self.Response = Response\n}\n","/**\n * @file Web Cryptography API shim\n * @author Artem S Vybornov \n * @license MIT\n */\n(function (global, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], function () {\n return factory(global);\n });\n } else if (typeof module === 'object' && module.exports) {\n // CommonJS-like environments that support module.exports\n module.exports = factory(global);\n } else {\n factory(global);\n }\n}(typeof self !== 'undefined' ? self : this, function (global) {\n 'use strict';\n\n if ( typeof Promise !== 'function' )\n throw \"Promise support required\";\n\n var _crypto = global.crypto || global.msCrypto;\n if ( !_crypto ) return;\n\n var _subtle = _crypto.subtle || _crypto.webkitSubtle;\n if ( !_subtle ) return;\n\n var _Crypto = global.Crypto || _crypto.constructor || Object,\n _SubtleCrypto = global.SubtleCrypto || _subtle.constructor || Object,\n _CryptoKey = global.CryptoKey || global.Key || Object;\n\n var isEdge = global.navigator.userAgent.indexOf('Edge/') > -1;\n var isIE = !!global.msCrypto && !isEdge;\n var isWebkit = !_crypto.subtle && !!_crypto.webkitSubtle;\n if ( !isIE && !isWebkit ) return;\n\n function s2a ( s ) {\n return btoa(s).replace(/\\=+$/, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n }\n\n function a2s ( s ) {\n s += '===', s = s.slice( 0, -s.length % 4 );\n return atob( s.replace(/-/g, '+').replace(/_/g, '/') );\n }\n\n function s2b ( s ) {\n var b = new Uint8Array(s.length);\n for ( var i = 0; i < s.length; i++ ) b[i] = s.charCodeAt(i);\n return b;\n }\n\n function b2s ( b ) {\n if ( b instanceof ArrayBuffer ) b = new Uint8Array(b);\n return String.fromCharCode.apply( String, b );\n }\n\n function alg ( a ) {\n var r = { 'name': (a.name || a || '').toUpperCase().replace('V','v') };\n switch ( r.name ) {\n case 'SHA-1':\n case 'SHA-256':\n case 'SHA-384':\n case 'SHA-512':\n break;\n case 'AES-CBC':\n case 'AES-GCM':\n case 'AES-KW':\n if ( a.length ) r['length'] = a.length;\n break;\n case 'HMAC':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.length ) r['length'] = a.length;\n break;\n case 'RSAES-PKCS1-v1_5':\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n case 'RSASSA-PKCS1-v1_5':\n case 'RSA-OAEP':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n default:\n throw new SyntaxError(\"Bad algorithm name\");\n }\n return r;\n };\n\n function jwkAlg ( a ) {\n return {\n 'HMAC': {\n 'SHA-1': 'HS1',\n 'SHA-256': 'HS256',\n 'SHA-384': 'HS384',\n 'SHA-512': 'HS512',\n },\n 'RSASSA-PKCS1-v1_5': {\n 'SHA-1': 'RS1',\n 'SHA-256': 'RS256',\n 'SHA-384': 'RS384',\n 'SHA-512': 'RS512',\n },\n 'RSAES-PKCS1-v1_5': {\n '': 'RSA1_5',\n },\n 'RSA-OAEP': {\n 'SHA-1': 'RSA-OAEP',\n 'SHA-256': 'RSA-OAEP-256',\n },\n 'AES-KW': {\n '128': 'A128KW',\n '192': 'A192KW',\n '256': 'A256KW',\n },\n 'AES-GCM': {\n '128': 'A128GCM',\n '192': 'A192GCM',\n '256': 'A256GCM',\n },\n 'AES-CBC': {\n '128': 'A128CBC',\n '192': 'A192CBC',\n '256': 'A256CBC',\n },\n }[a.name][ ( a.hash || {} ).name || a.length || '' ];\n }\n\n function b2jwk ( k ) {\n if ( k instanceof ArrayBuffer || k instanceof Uint8Array ) k = JSON.parse( decodeURIComponent( escape( b2s(k) ) ) );\n var jwk = { 'kty': k.kty, 'alg': k.alg, 'ext': k.ext || k.extractable };\n switch ( jwk.kty ) {\n case 'oct':\n jwk.k = k.k;\n case 'RSA':\n [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi', 'oth' ].forEach( function ( x ) { if ( x in k ) jwk[x] = k[x] } );\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2b ( k ) {\n var jwk = b2jwk(k);\n if ( isIE ) jwk['extractable'] = jwk.ext, delete jwk.ext;\n return s2b( unescape( encodeURIComponent( JSON.stringify(jwk) ) ) ).buffer;\n }\n\n function pkcs2jwk ( k ) {\n var info = b2der(k), prv = false;\n if ( info.length > 2 ) prv = true, info.shift(); // remove version from PKCS#8 PrivateKeyInfo structure\n var jwk = { 'ext': true };\n switch ( info[0][0] ) {\n case '1.2.840.113549.1.1.1':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = b2der( info[1] );\n if ( prv ) rsaKey.shift(); // remove version from PKCS#1 RSAPrivateKey structure\n for ( var i = 0; i < rsaKey.length; i++ ) {\n if ( !rsaKey[i][0] ) rsaKey[i] = rsaKey[i].subarray(1);\n jwk[ rsaComp[i] ] = s2a( b2s( rsaKey[i] ) );\n }\n jwk['kty'] = 'RSA';\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2pkcs ( k ) {\n var key, info = [ [ '', null ] ], prv = false;\n switch ( k.kty ) {\n case 'RSA':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = [];\n for ( var i = 0; i < rsaComp.length; i++ ) {\n if ( !( rsaComp[i] in k ) ) break;\n var b = rsaKey[i] = s2b( a2s( k[ rsaComp[i] ] ) );\n if ( b[0] & 0x80 ) rsaKey[i] = new Uint8Array(b.length + 1), rsaKey[i].set( b, 1 );\n }\n if ( rsaKey.length > 2 ) prv = true, rsaKey.unshift( new Uint8Array([0]) ); // add version to PKCS#1 RSAPrivateKey structure\n info[0][0] = '1.2.840.113549.1.1.1';\n key = rsaKey;\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n info.push( new Uint8Array( der2b(key) ).buffer );\n if ( !prv ) info[1] = { 'tag': 0x03, 'value': info[1] };\n else info.unshift( new Uint8Array([0]) ); // add version to PKCS#8 PrivateKeyInfo structure\n return new Uint8Array( der2b(info) ).buffer;\n }\n\n var oid2str = { 'KoZIhvcNAQEB': '1.2.840.113549.1.1.1' },\n str2oid = { '1.2.840.113549.1.1.1': 'KoZIhvcNAQEB' };\n\n function b2der ( buf, ctx ) {\n if ( buf instanceof ArrayBuffer ) buf = new Uint8Array(buf);\n if ( !ctx ) ctx = { pos: 0, end: buf.length };\n\n if ( ctx.end - ctx.pos < 2 || ctx.end > buf.length ) throw new RangeError(\"Malformed DER\");\n\n var tag = buf[ctx.pos++],\n len = buf[ctx.pos++];\n\n if ( len >= 0x80 ) {\n len &= 0x7f;\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n for ( var xlen = 0; len--; ) xlen <<= 8, xlen |= buf[ctx.pos++];\n len = xlen;\n }\n\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n\n var rv;\n\n switch ( tag ) {\n case 0x02: // Universal Primitive INTEGER\n rv = buf.subarray( ctx.pos, ctx.pos += len );\n break;\n case 0x03: // Universal Primitive BIT STRING\n if ( buf[ctx.pos++] ) throw new Error( \"Unsupported bit string\" );\n len--;\n case 0x04: // Universal Primitive OCTET STRING\n rv = new Uint8Array( buf.subarray( ctx.pos, ctx.pos += len ) ).buffer;\n break;\n case 0x05: // Universal Primitive NULL\n rv = null;\n break;\n case 0x06: // Universal Primitive OBJECT IDENTIFIER\n var oid = btoa( b2s( buf.subarray( ctx.pos, ctx.pos += len ) ) );\n if ( !( oid in oid2str ) ) throw new Error( \"Unsupported OBJECT ID \" + oid );\n rv = oid2str[oid];\n break;\n case 0x30: // Universal Constructed SEQUENCE\n rv = [];\n for ( var end = ctx.pos + len; ctx.pos < end; ) rv.push( b2der( buf, ctx ) );\n break;\n default:\n throw new Error( \"Unsupported DER tag 0x\" + tag.toString(16) );\n }\n\n return rv;\n }\n\n function der2b ( val, buf ) {\n if ( !buf ) buf = [];\n\n var tag = 0, len = 0,\n pos = buf.length + 2;\n\n buf.push( 0, 0 ); // placeholder\n\n if ( val instanceof Uint8Array ) { // Universal Primitive INTEGER\n tag = 0x02, len = val.length;\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val instanceof ArrayBuffer ) { // Universal Primitive OCTET STRING\n tag = 0x04, len = val.byteLength, val = new Uint8Array(val);\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val === null ) { // Universal Primitive NULL\n tag = 0x05, len = 0;\n }\n else if ( typeof val === 'string' && val in str2oid ) { // Universal Primitive OBJECT IDENTIFIER\n var oid = s2b( atob( str2oid[val] ) );\n tag = 0x06, len = oid.length;\n for ( var i = 0; i < len; i++ ) buf.push( oid[i] );\n }\n else if ( val instanceof Array ) { // Universal Constructed SEQUENCE\n for ( var i = 0; i < val.length; i++ ) der2b( val[i], buf );\n tag = 0x30, len = buf.length - pos;\n }\n else if ( typeof val === 'object' && val.tag === 0x03 && val.value instanceof ArrayBuffer ) { // Tag hint\n val = new Uint8Array(val.value), tag = 0x03, len = val.byteLength;\n buf.push(0); for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n len++;\n }\n else {\n throw new Error( \"Unsupported DER value \" + val );\n }\n\n if ( len >= 0x80 ) {\n var xlen = len, len = 4;\n buf.splice( pos, 0, (xlen >> 24) & 0xff, (xlen >> 16) & 0xff, (xlen >> 8) & 0xff, xlen & 0xff );\n while ( len > 1 && !(xlen >> 24) ) xlen <<= 8, len--;\n if ( len < 4 ) buf.splice( pos, 4 - len );\n len |= 0x80;\n }\n\n buf.splice( pos - 2, 2, tag, len );\n\n return buf;\n }\n\n function CryptoKey ( key, alg, ext, use ) {\n Object.defineProperties( this, {\n _key: {\n value: key\n },\n type: {\n value: key.type,\n enumerable: true,\n },\n extractable: {\n value: (ext === undefined) ? key.extractable : ext,\n enumerable: true,\n },\n algorithm: {\n value: (alg === undefined) ? key.algorithm : alg,\n enumerable: true,\n },\n usages: {\n value: (use === undefined) ? key.usages : use,\n enumerable: true,\n },\n });\n }\n\n function isPubKeyUse ( u ) {\n return u === 'verify' || u === 'encrypt' || u === 'wrapKey';\n }\n\n function isPrvKeyUse ( u ) {\n return u === 'sign' || u === 'decrypt' || u === 'unwrapKey';\n }\n\n [ 'generateKey', 'importKey', 'unwrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments),\n ka, kx, ku;\n\n switch ( m ) {\n case 'generateKey':\n ka = alg(a), kx = b, ku = c;\n break;\n case 'importKey':\n ka = alg(c), kx = args[3], ku = args[4];\n if ( a === 'jwk' ) {\n b = b2jwk(b);\n if ( !b.alg ) b.alg = jwkAlg(ka);\n if ( !b.key_ops ) b.key_ops = ( b.kty !== 'oct' ) ? ( 'd' in b ) ? ku.filter(isPrvKeyUse) : ku.filter(isPubKeyUse) : ku.slice();\n args[1] = jwk2b(b);\n }\n break;\n case 'unwrapKey':\n ka = args[4], kx = args[5], ku = args[6];\n args[2] = c._key;\n break;\n }\n\n if ( m === 'generateKey' && ka.name === 'HMAC' && ka.hash ) {\n ka.length = ka.length || { 'SHA-1': 512, 'SHA-256': 512, 'SHA-384': 1024, 'SHA-512': 1024 }[ka.hash.name];\n return _subtle.importKey( 'raw', _crypto.getRandomValues( new Uint8Array( (ka.length+7)>>3 ) ), ka, kx, ku );\n }\n\n if ( isWebkit && m === 'generateKey' && ka.name === 'RSASSA-PKCS1-v1_5' && ( !ka.modulusLength || ka.modulusLength >= 2048 ) ) {\n a = alg(a), a.name = 'RSAES-PKCS1-v1_5', delete a.hash;\n return _subtle.generateKey( a, true, [ 'encrypt', 'decrypt' ] )\n .then( function ( k ) {\n return Promise.all([\n _subtle.exportKey( 'jwk', k.publicKey ),\n _subtle.exportKey( 'jwk', k.privateKey ),\n ]);\n })\n .then( function ( keys ) {\n keys[0].alg = keys[1].alg = jwkAlg(ka);\n keys[0].key_ops = ku.filter(isPubKeyUse), keys[1].key_ops = ku.filter(isPrvKeyUse);\n return Promise.all([\n _subtle.importKey( 'jwk', keys[0], ka, true, keys[0].key_ops ),\n _subtle.importKey( 'jwk', keys[1], ka, kx, keys[1].key_ops ),\n ]);\n })\n .then( function ( keys ) {\n return {\n publicKey: keys[0],\n privateKey: keys[1],\n };\n });\n }\n\n if ( ( isWebkit || ( isIE && ( ka.hash || {} ).name === 'SHA-1' ) )\n && m === 'importKey' && a === 'jwk' && ka.name === 'HMAC' && b.kty === 'oct' ) {\n return _subtle.importKey( 'raw', s2b( a2s(b.k) ), c, args[3], args[4] );\n }\n\n if ( isWebkit && m === 'importKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n return _subtle.importKey( 'jwk', pkcs2jwk(b), c, args[3], args[4] );\n }\n\n if ( isIE && m === 'unwrapKey' ) {\n return _subtle.decrypt( args[3], c, b )\n .then( function ( k ) {\n return _subtle.importKey( a, k, args[4], args[5], args[6] );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n op = op.then( function ( k ) {\n if ( ka.name === 'HMAC' ) {\n if ( !ka.length ) ka.length = 8 * k.algorithm.length;\n }\n if ( ka.name.search('RSA') == 0 ) {\n if ( !ka.modulusLength ) ka.modulusLength = (k.publicKey || k).algorithm.modulusLength;\n if ( !ka.publicExponent ) ka.publicExponent = (k.publicKey || k).algorithm.publicExponent;\n }\n if ( k.publicKey && k.privateKey ) {\n k = {\n publicKey: new CryptoKey( k.publicKey, ka, kx, ku.filter(isPubKeyUse) ),\n privateKey: new CryptoKey( k.privateKey, ka, kx, ku.filter(isPrvKeyUse) ),\n };\n }\n else {\n k = new CryptoKey( k, ka, kx, ku );\n }\n return k;\n });\n\n return op;\n }\n });\n\n [ 'exportKey', 'wrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments);\n\n switch ( m ) {\n case 'exportKey':\n args[1] = b._key;\n break;\n case 'wrapKey':\n args[1] = b._key, args[2] = c._key;\n break;\n }\n\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && m === 'exportKey' && a === 'jwk' && b.algorithm.name === 'HMAC' ) {\n args[0] = 'raw';\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n args[0] = 'jwk';\n }\n\n if ( isIE && m === 'wrapKey' ) {\n return _subtle.exportKey( a, b )\n .then( function ( k ) {\n if ( a === 'jwk' ) k = s2b( unescape( encodeURIComponent( JSON.stringify( b2jwk(k) ) ) ) );\n return _subtle.encrypt( args[3], c, k );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n if ( m === 'exportKey' && a === 'jwk' ) {\n op = op.then( function ( k ) {\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && b.algorithm.name === 'HMAC') {\n return { 'kty': 'oct', 'alg': jwkAlg(b.algorithm), 'key_ops': b.usages.slice(), 'ext': true, 'k': s2a( b2s(k) ) };\n }\n k = b2jwk(k);\n if ( !k.alg ) k['alg'] = jwkAlg(b.algorithm);\n if ( !k.key_ops ) k['key_ops'] = ( b.type === 'public' ) ? b.usages.filter(isPubKeyUse) : ( b.type === 'private' ) ? b.usages.filter(isPrvKeyUse) : b.usages.slice();\n return k;\n });\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n op = op.then( function ( k ) {\n k = jwk2pkcs( b2jwk(k) );\n return k;\n });\n }\n\n return op;\n }\n });\n\n [ 'encrypt', 'decrypt', 'sign', 'verify' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c, d ) {\n if ( isIE && ( !c.byteLength || ( d && !d.byteLength ) ) )\n throw new Error(\"Empy input is not allowed\");\n\n var args = [].slice.call(arguments),\n ka = alg(a);\n\n if ( isIE && m === 'decrypt' && ka.name === 'AES-GCM' ) {\n var tl = a.tagLength >> 3;\n args[2] = (c.buffer || c).slice( 0, c.byteLength - tl ),\n a.tag = (c.buffer || c).slice( c.byteLength - tl );\n }\n\n args[1] = b._key;\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) {\n rej(e);\n };\n\n op.oncomplete = function ( r ) {\n var r = r.target.result;\n\n if ( m === 'encrypt' && r instanceof AesGcmEncryptResult ) {\n var c = r.ciphertext, t = r.tag;\n r = new Uint8Array( c.byteLength + t.byteLength );\n r.set( new Uint8Array(c), 0 );\n r.set( new Uint8Array(t), c.byteLength );\n r = r.buffer;\n }\n\n res(r);\n };\n });\n }\n\n return op;\n }\n });\n\n if ( isIE ) {\n var _digest = _subtle.digest;\n\n _subtle['digest'] = function ( a, b ) {\n if ( !b.byteLength )\n throw new Error(\"Empy input is not allowed\");\n\n var op;\n try {\n op = _digest.call( _subtle, a, b );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n\n return op;\n };\n\n global.crypto = Object.create( _crypto, {\n getRandomValues: { value: function ( a ) { return _crypto.getRandomValues(a) } },\n subtle: { value: _subtle },\n });\n\n global.CryptoKey = CryptoKey;\n }\n\n if ( isWebkit ) {\n _crypto.subtle = _subtle;\n\n global.Crypto = _Crypto;\n global.SubtleCrypto = _SubtleCrypto;\n global.CryptoKey = CryptoKey;\n }\n}));\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/core-js/modules/_export.js","webpack:///./node_modules/core-js/modules/_an-object.js","webpack:///./node_modules/core-js/modules/_global.js","webpack:///./node_modules/core-js/modules/_fails.js","webpack:///./node_modules/core-js/modules/_is-object.js","webpack:///./node_modules/core-js/modules/_wks.js","webpack:///./node_modules/core-js/modules/_object-dp.js","webpack:///./node_modules/core-js/modules/_descriptors.js","webpack:///./node_modules/core-js/modules/_to-length.js","webpack:///./node_modules/core-js/modules/_to-object.js","webpack:///./node_modules/core-js/modules/_a-function.js","webpack:///./node_modules/core-js/modules/_string-html.js","webpack:///./node_modules/core-js/modules/_has.js","webpack:///./node_modules/core-js/modules/_redefine.js","webpack:///./node_modules/core-js/modules/_to-iobject.js","webpack:///./node_modules/core-js/modules/_core.js","webpack:///./node_modules/core-js/modules/_hide.js","webpack:///./node_modules/core-js/modules/_object-gpo.js","webpack:///./node_modules/core-js/modules/_object-gopd.js","webpack:///./node_modules/core-js/modules/_strict-method.js","webpack:///./node_modules/core-js/modules/_ctx.js","webpack:///./node_modules/core-js/modules/_cof.js","webpack:///./node_modules/core-js/modules/_object-sap.js","webpack:///./node_modules/core-js/modules/_array-methods.js","webpack:///./node_modules/core-js/modules/_to-integer.js","webpack:///./node_modules/core-js/modules/_to-primitive.js","webpack:///./node_modules/core-js/modules/_defined.js","webpack:///./node_modules/core-js/modules/_typed-array.js","webpack:///./node_modules/core-js/modules/_metadata.js","webpack:///./node_modules/core-js/modules/_meta.js","webpack:///./node_modules/core-js/modules/_object-create.js","webpack:///./node_modules/core-js/modules/_property-desc.js","webpack:///./node_modules/core-js/modules/_library.js","webpack:///./node_modules/core-js/modules/_uid.js","webpack:///./node_modules/core-js/modules/_object-keys.js","webpack:///./node_modules/core-js/modules/_to-absolute-index.js","webpack:///./node_modules/core-js/modules/_object-gopn.js","webpack:///./node_modules/core-js/modules/_add-to-unscopables.js","webpack:///./node_modules/core-js/modules/_set-species.js","webpack:///./node_modules/core-js/modules/_an-instance.js","webpack:///./node_modules/core-js/modules/_for-of.js","webpack:///./node_modules/core-js/modules/_redefine-all.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/modules/_set-to-string-tag.js","webpack:///./node_modules/core-js/modules/_iterators.js","webpack:///./node_modules/core-js/modules/_validate-collection.js","webpack:///./node_modules/core-js/modules/_classof.js","webpack:///./node_modules/core-js/modules/_iobject.js","webpack:///./node_modules/core-js/modules/_string-trim.js","webpack:///./node_modules/core-js/modules/_object-pie.js","webpack:///./node_modules/core-js/modules/_shared.js","webpack:///./node_modules/core-js/modules/_object-gops.js","webpack:///./node_modules/core-js/modules/core.get-iterator-method.js","webpack:///./node_modules/core-js/modules/_iter-detect.js","webpack:///./node_modules/core-js/modules/_fix-re-wks.js","webpack:///./node_modules/core-js/modules/_collection.js","webpack:///./node_modules/core-js/modules/_typed.js","webpack:///./node_modules/core-js/modules/_array-includes.js","webpack:///./node_modules/core-js/modules/_is-array.js","webpack:///./node_modules/core-js/modules/_iter-define.js","webpack:///./node_modules/core-js/modules/_is-regexp.js","webpack:///./node_modules/core-js/modules/_flags.js","webpack:///./node_modules/core-js/modules/_species-constructor.js","webpack:///./node_modules/core-js/modules/_dom-create.js","webpack:///./node_modules/core-js/modules/_shared-key.js","webpack:///./node_modules/core-js/modules/_enum-bug-keys.js","webpack:///./node_modules/core-js/modules/_html.js","webpack:///./node_modules/core-js/modules/_set-proto.js","webpack:///./node_modules/core-js/modules/_string-ws.js","webpack:///./node_modules/core-js/modules/_inherit-if-required.js","webpack:///./node_modules/core-js/modules/_math-sign.js","webpack:///./node_modules/core-js/modules/_math-expm1.js","webpack:///./node_modules/core-js/modules/_iter-create.js","webpack:///./node_modules/core-js/modules/_string-context.js","webpack:///./node_modules/core-js/modules/_fails-is-regexp.js","webpack:///./node_modules/core-js/modules/_is-array-iter.js","webpack:///./node_modules/core-js/modules/_array-fill.js","webpack:///./node_modules/core-js/modules/_typed-buffer.js","webpack:///./node_modules/core-js/modules/_object-assign.js","webpack:///./node_modules/core-js/modules/_invoke.js","webpack:///./node_modules/core-js/modules/_string-repeat.js","webpack:///./node_modules/core-js/modules/_string-at.js","webpack:///./node_modules/core-js/modules/_create-property.js","webpack:///./node_modules/core-js/modules/es6.array.iterator.js","webpack:///./node_modules/core-js/modules/_iter-step.js","webpack:///./node_modules/core-js/modules/_task.js","webpack:///./node_modules/core-js/modules/_new-promise-capability.js","webpack:///./node_modules/core-js/modules/_user-agent.js","webpack:///./node_modules/core-js/modules/_ie8-dom-define.js","webpack:///./node_modules/core-js/modules/_wks-ext.js","webpack:///./node_modules/core-js/modules/_wks-define.js","webpack:///./node_modules/core-js/modules/_object-keys-internal.js","webpack:///./node_modules/core-js/modules/_object-dps.js","webpack:///./node_modules/core-js/modules/_object-gopn-ext.js","webpack:///./node_modules/core-js/modules/_bind.js","webpack:///./node_modules/core-js/modules/_parse-int.js","webpack:///./node_modules/core-js/modules/_parse-float.js","webpack:///./node_modules/core-js/modules/_a-number-value.js","webpack:///./node_modules/core-js/modules/_is-integer.js","webpack:///./node_modules/core-js/modules/_math-log1p.js","webpack:///./node_modules/core-js/modules/_iter-call.js","webpack:///./node_modules/core-js/modules/_array-species-create.js","webpack:///./node_modules/core-js/modules/_array-reduce.js","webpack:///./node_modules/core-js/modules/_array-copy-within.js","webpack:///./node_modules/core-js/modules/es6.regexp.flags.js","webpack:///./node_modules/core-js/modules/_microtask.js","webpack:///./node_modules/core-js/modules/es6.map.js","webpack:///./node_modules/core-js/modules/_collection-strong.js","webpack:///./node_modules/core-js/modules/es6.set.js","webpack:///./node_modules/core-js/modules/es6.weak-map.js","webpack:///./node_modules/core-js/modules/_collection-weak.js","webpack:///./node_modules/core-js/modules/_to-index.js","webpack:///./node_modules/core-js/modules/_own-keys.js","webpack:///./node_modules/core-js/modules/_math-fround.js","webpack:///./node_modules/core-js/modules/_perform.js","webpack:///./node_modules/core-js/modules/_promise-resolve.js","webpack:///./node_modules/core-js/modules/_array-from-iterable.js","webpack:///./node_modules/core-js/modules/es6.symbol.js","webpack:///./node_modules/core-js/modules/_enum-keys.js","webpack:///./node_modules/core-js/modules/es6.object.create.js","webpack:///./node_modules/core-js/modules/es6.object.define-property.js","webpack:///./node_modules/core-js/modules/es6.object.define-properties.js","webpack:///./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es6.object.get-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.object.keys.js","webpack:///./node_modules/core-js/modules/es6.object.get-own-property-names.js","webpack:///./node_modules/core-js/modules/es6.object.freeze.js","webpack:///./node_modules/core-js/modules/es6.object.seal.js","webpack:///./node_modules/core-js/modules/es6.object.prevent-extensions.js","webpack:///./node_modules/core-js/modules/es6.object.is-frozen.js","webpack:///./node_modules/core-js/modules/es6.object.is-sealed.js","webpack:///./node_modules/core-js/modules/es6.object.is-extensible.js","webpack:///./node_modules/core-js/modules/es6.object.assign.js","webpack:///./node_modules/core-js/modules/es6.object.is.js","webpack:///./node_modules/core-js/modules/_same-value.js","webpack:///./node_modules/core-js/modules/es6.object.set-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.object.to-string.js","webpack:///./node_modules/core-js/modules/es6.function.bind.js","webpack:///./node_modules/core-js/modules/es6.function.name.js","webpack:///./node_modules/core-js/modules/es6.function.has-instance.js","webpack:///./node_modules/core-js/modules/es6.parse-int.js","webpack:///./node_modules/core-js/modules/es6.parse-float.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js","webpack:///./node_modules/core-js/modules/es6.number.to-fixed.js","webpack:///./node_modules/core-js/modules/es6.number.to-precision.js","webpack:///./node_modules/core-js/modules/es6.number.epsilon.js","webpack:///./node_modules/core-js/modules/es6.number.is-finite.js","webpack:///./node_modules/core-js/modules/es6.number.is-integer.js","webpack:///./node_modules/core-js/modules/es6.number.is-nan.js","webpack:///./node_modules/core-js/modules/es6.number.is-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.max-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.min-safe-integer.js","webpack:///./node_modules/core-js/modules/es6.number.parse-float.js","webpack:///./node_modules/core-js/modules/es6.number.parse-int.js","webpack:///./node_modules/core-js/modules/es6.math.acosh.js","webpack:///./node_modules/core-js/modules/es6.math.asinh.js","webpack:///./node_modules/core-js/modules/es6.math.atanh.js","webpack:///./node_modules/core-js/modules/es6.math.cbrt.js","webpack:///./node_modules/core-js/modules/es6.math.clz32.js","webpack:///./node_modules/core-js/modules/es6.math.cosh.js","webpack:///./node_modules/core-js/modules/es6.math.expm1.js","webpack:///./node_modules/core-js/modules/es6.math.fround.js","webpack:///./node_modules/core-js/modules/es6.math.hypot.js","webpack:///./node_modules/core-js/modules/es6.math.imul.js","webpack:///./node_modules/core-js/modules/es6.math.log10.js","webpack:///./node_modules/core-js/modules/es6.math.log1p.js","webpack:///./node_modules/core-js/modules/es6.math.log2.js","webpack:///./node_modules/core-js/modules/es6.math.sign.js","webpack:///./node_modules/core-js/modules/es6.math.sinh.js","webpack:///./node_modules/core-js/modules/es6.math.tanh.js","webpack:///./node_modules/core-js/modules/es6.math.trunc.js","webpack:///./node_modules/core-js/modules/es6.string.from-code-point.js","webpack:///./node_modules/core-js/modules/es6.string.raw.js","webpack:///./node_modules/core-js/modules/es6.string.trim.js","webpack:///./node_modules/core-js/modules/es6.string.iterator.js","webpack:///./node_modules/core-js/modules/es6.string.code-point-at.js","webpack:///./node_modules/core-js/modules/es6.string.ends-with.js","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./node_modules/core-js/modules/es6.string.repeat.js","webpack:///./node_modules/core-js/modules/es6.string.starts-with.js","webpack:///./node_modules/core-js/modules/es6.string.anchor.js","webpack:///./node_modules/core-js/modules/es6.string.big.js","webpack:///./node_modules/core-js/modules/es6.string.blink.js","webpack:///./node_modules/core-js/modules/es6.string.bold.js","webpack:///./node_modules/core-js/modules/es6.string.fixed.js","webpack:///./node_modules/core-js/modules/es6.string.fontcolor.js","webpack:///./node_modules/core-js/modules/es6.string.fontsize.js","webpack:///./node_modules/core-js/modules/es6.string.italics.js","webpack:///./node_modules/core-js/modules/es6.string.link.js","webpack:///./node_modules/core-js/modules/es6.string.small.js","webpack:///./node_modules/core-js/modules/es6.string.strike.js","webpack:///./node_modules/core-js/modules/es6.string.sub.js","webpack:///./node_modules/core-js/modules/es6.string.sup.js","webpack:///./node_modules/core-js/modules/es6.date.now.js","webpack:///./node_modules/core-js/modules/es6.date.to-json.js","webpack:///./node_modules/core-js/modules/es6.date.to-iso-string.js","webpack:///./node_modules/core-js/modules/_date-to-iso-string.js","webpack:///./node_modules/core-js/modules/es6.date.to-string.js","webpack:///./node_modules/core-js/modules/es6.date.to-primitive.js","webpack:///./node_modules/core-js/modules/_date-to-primitive.js","webpack:///./node_modules/core-js/modules/es6.array.is-array.js","webpack:///./node_modules/core-js/modules/es6.array.from.js","webpack:///./node_modules/core-js/modules/es6.array.of.js","webpack:///./node_modules/core-js/modules/es6.array.join.js","webpack:///./node_modules/core-js/modules/es6.array.slice.js","webpack:///./node_modules/core-js/modules/es6.array.sort.js","webpack:///./node_modules/core-js/modules/es6.array.for-each.js","webpack:///./node_modules/core-js/modules/_array-species-constructor.js","webpack:///./node_modules/core-js/modules/es6.array.map.js","webpack:///./node_modules/core-js/modules/es6.array.filter.js","webpack:///./node_modules/core-js/modules/es6.array.some.js","webpack:///./node_modules/core-js/modules/es6.array.every.js","webpack:///./node_modules/core-js/modules/es6.array.reduce.js","webpack:///./node_modules/core-js/modules/es6.array.reduce-right.js","webpack:///./node_modules/core-js/modules/es6.array.index-of.js","webpack:///./node_modules/core-js/modules/es6.array.last-index-of.js","webpack:///./node_modules/core-js/modules/es6.array.copy-within.js","webpack:///./node_modules/core-js/modules/es6.array.fill.js","webpack:///./node_modules/core-js/modules/es6.array.find.js","webpack:///./node_modules/core-js/modules/es6.array.find-index.js","webpack:///./node_modules/core-js/modules/es6.array.species.js","webpack:///./node_modules/core-js/modules/es6.regexp.constructor.js","webpack:///./node_modules/core-js/modules/es6.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es6.regexp.match.js","webpack:///./node_modules/core-js/modules/es6.regexp.replace.js","webpack:///./node_modules/core-js/modules/es6.regexp.search.js","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./node_modules/core-js/modules/es6.promise.js","webpack:///./node_modules/core-js/modules/es6.weak-set.js","webpack:///./node_modules/core-js/modules/es6.typed.array-buffer.js","webpack:///./node_modules/core-js/modules/es6.typed.data-view.js","webpack:///./node_modules/core-js/modules/es6.typed.int8-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint8-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint8-clamped-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int16-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint16-array.js","webpack:///./node_modules/core-js/modules/es6.typed.int32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.uint32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.float32-array.js","webpack:///./node_modules/core-js/modules/es6.typed.float64-array.js","webpack:///./node_modules/core-js/modules/es6.reflect.apply.js","webpack:///./node_modules/core-js/modules/es6.reflect.construct.js","webpack:///./node_modules/core-js/modules/es6.reflect.define-property.js","webpack:///./node_modules/core-js/modules/es6.reflect.delete-property.js","webpack:///./node_modules/core-js/modules/es6.reflect.enumerate.js","webpack:///./node_modules/core-js/modules/es6.reflect.get.js","webpack:///./node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js","webpack:///./node_modules/core-js/modules/es6.reflect.get-prototype-of.js","webpack:///./node_modules/core-js/modules/es6.reflect.has.js","webpack:///./node_modules/core-js/modules/es6.reflect.is-extensible.js","webpack:///./node_modules/core-js/modules/es6.reflect.own-keys.js","webpack:///./node_modules/core-js/modules/es6.reflect.prevent-extensions.js","webpack:///./node_modules/core-js/modules/es6.reflect.set.js","webpack:///./node_modules/core-js/modules/es6.reflect.set-prototype-of.js","webpack:///./node_modules/core-js/modules/es7.reflect.define-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.delete-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-metadata-keys.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-own-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.get-own-metadata-keys.js","webpack:///./node_modules/core-js/modules/es7.reflect.has-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.has-own-metadata.js","webpack:///./node_modules/core-js/modules/es7.reflect.metadata.js","webpack:///./src/app/polyfills.ts","webpack:///./node_modules/core-js/es6/index.js","webpack:///./node_modules/core-js/es7/reflect.js","webpack:///./node_modules/zone.js/dist/zone.js","webpack:///./node_modules/whatwg-fetch/fetch.js","webpack:///./node_modules/webcrypto-shim/webcrypto-shim.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","global","core","hide","redefine","ctx","$export","type","source","own","out","exp","IS_FORCED","F","IS_GLOBAL","G","IS_STATIC","S","IS_PROTO","P","IS_BIND","B","target","expProto","undefined","Function","U","W","R","isObject","it","TypeError","window","Math","self","__g","exec","e","store","uid","USE_SYMBOL","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","a","toInteger","min","defined","fails","quot","createHTML","string","tag","attribute","String","p1","replace","NAME","test","toLowerCase","split","length","has","SRC","$toString","TPL","inspectSource","val","safe","isFunction","join","this","IObject","version","__e","createDesc","toObject","IE_PROTO","ObjectProto","getPrototypeOf","constructor","pIE","toIObject","gOPD","getOwnPropertyDescriptor","method","arg","aFunction","fn","that","b","apply","arguments","toString","slice","KEY","toLength","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","callbackfn","res","index","result","push","ceil","floor","isNaN","valueOf","LIBRARY","$typed","$buffer","anInstance","propertyDesc","redefineAll","toIndex","toAbsoluteIndex","classof","isArrayIter","gOPN","getIterFn","wks","createArrayMethod","createArrayIncludes","speciesConstructor","ArrayIterators","Iterators","$iterDetect","setSpecies","arrayFill","arrayCopyWithin","$DP","$GOPD","RangeError","Uint8Array","ArrayProto","Array","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayFind","arrayFindIndex","arrayIncludes","arrayIndexOf","arrayValues","values","arrayKeys","keys","arrayEntries","entries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","sort","arraySlice","arrayToString","arrayToLocaleString","toLocaleString","ITERATOR","TAG","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","set","toOffset","BYTES","offset","validate","C","speciesFromList","list","fromList","addGetter","internal","_d","$from","step","iterator","aLen","mapfn","mapping","iterFn","next","done","$of","TO_LOCALE_BUG","$toLocaleString","proto","copyWithin","start","every","fill","filter","find","predicate","findIndex","forEach","indexOf","searchElement","includes","separator","map","reverse","middle","some","comparefn","subarray","begin","end","$begin","byteOffset","BYTES_PER_ELEMENT","$slice","$set","arrayLike","src","len","$iterators","isTAIndex","$getDesc","$setDesc","desc","configurable","writable","$TypedArrayPrototype$","wrapper","CLAMPED","GETTER","SETTER","TypedArray","Base","TAC","FORCED","ABV","TypedArrayPrototype","addElement","data","v","round","setter","$offset","$length","byteLength","klass","$len","iter","concat","$nativeIterator","CORRECT_ITER_NAME","$iterator","of","from","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","keyMetadata","MetadataKey","metadataMap","MetadataValue","_","META","setDesc","id","isExtensible","FREEZE","preventExtensions","setMeta","w","meta","NEED","fastKey","getWeak","onFreeze","dPs","enumBugKeys","Empty","createDict","iframeDocument","iframe","style","display","appendChild","contentWindow","document","open","write","lt","close","Properties","bitmap","px","random","$keys","max","hiddenKeys","getOwnPropertyNames","UNSCOPABLES","DESCRIPTORS","SPECIES","Constructor","forbiddenField","BREAK","RETURN","iterable","g","eval","def","stat","_t","cof","ARG","T","tryGet","callee","propertyIsEnumerable","spaces","space","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","copyright","getOwnPropertySymbols","getIteratorMethod","SAFE_CLOSING","riter","skipClosing","arr","SYMBOL","fns","strfn","rxfn","forOf","setToStringTag","inheritIfRequired","methods","common","IS_WEAK","ADDER","fixMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","clear","getConstructor","setStrong","Typed","TypedArrayConstructors","IS_INCLUDES","el","fromIndex","isArray","$iterCreate","BUGGY","returnThis","DEFAULT","IS_SET","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","MATCH","isRegExp","ignoreCase","multiline","unicode","sticky","D","is","createElement","documentElement","check","setPrototypeOf","buggy","__proto__","sign","x","$expm1","expm1","descriptor","searchString","re","endPos","PROTOTYPE","WRONG_INDEX","Infinity","BaseBuffer","abs","pow","log","LN2","$BUFFER","$LENGTH","$OFFSET","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","view","isLittleEndian","intIndex","_b","pack","conversion","ArrayBufferProto","j","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","getKeys","gOPS","$assign","assign","A","K","k","getSymbols","isEnum","args","un","count","str","TO_STRING","pos","charCodeAt","charAt","$defineProperty","addToUnscopables","iterated","_i","_k","Arguments","defer","channel","port","invoke","html","cel","process","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","Dispatch","counter","queue","run","listener","event","nextTick","now","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","setTimeout","resolve","reject","promise","$$resolve","$$reject","navigator","userAgent","wksExt","$Symbol","names","defineProperties","windowNames","getWindowNames","factories","partArgs","bound","construct","$parseInt","parseInt","$trim","ws","hex","radix","$parseFloat","parseFloat","msg","isFinite","log1p","ret","original","memo","isRight","to","inc","flags","macrotask","Observer","MutationObserver","WebKitMutationObserver","Promise","isNode","head","last","notify","flush","parent","domain","exit","enter","standalone","then","toggle","node","createTextNode","observe","characterData","task","strong","entry","getEntry","$iterDefine","SIZE","_f","_l","delete","prev","add","InternalMap","each","weak","uncaughtFrozenStore","ufstore","tmp","$WeakMap","freeze","$has","UncaughtFrozenStore","findUncaughtFrozen","splice","number","Reflect","ownKeys","EPSILON","EPSILON32","MAX32","MIN32","fround","$abs","$sign","roundTiesToEven","newPromiseCapability","promiseCapability","$fails","wksDefine","enumKeys","_create","gOPNExt","$JSON","JSON","_stringify","stringify","HIDDEN","TO_PRIMITIVE","SymbolRegistry","AllSymbols","OPSymbols","USE_NATIVE","QObject","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","for","keyFor","useSetter","useSimple","replacer","$replacer","symbols","$getPrototypeOf","$freeze","$seal","$preventExtensions","$isFrozen","$isSealed","$isExtensible","y","FProto","nameRE","match","HAS_INSTANCE","FunctionProto","$Number","BROKEN_COF","TRIM","toNumber","argument","third","maxCode","first","code","digits","aNumberValue","repeat","$toFixed","toFixed","ERROR","multiply","c2","divide","numToString","acc","fractionDigits","z","x2","$toPrecision","toPrecision","precision","_isFinite","isInteger","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","Number","sqrt","$acosh","acosh","MAX_VALUE","$asinh","asinh","$atanh","atanh","cbrt","clz32","LOG2E","cosh","hypot","value1","value2","div","sum","larg","$imul","imul","xn","yn","xl","yl","log10","LOG10E","log2","sinh","tanh","trunc","fromCharCode","$fromCodePoint","fromCodePoint","raw","callSite","tpl","$at","point","codePointAt","context","$endsWith","endsWith","endPosition","search","$startsWith","startsWith","color","size","url","Date","getTime","toJSON","toISOString","pv","$toISOString","lz","num","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","DateProto","hint","createProperty","upTo","cloned","$sort","$forEach","STRICT","$filter","$some","$every","$reduce","$indexOf","NEGATIVE_ZERO","$find","forced","$flags","$RegExp","re1","re2","CORRECT_NEW","tiRE","piRE","fiU","proxy","define","$match","regexp","REPLACE","$replace","searchValue","replaceValue","SEARCH","$search","SPLIT","$split","_split","$push","NPCG","limit","separator2","lastIndex","lastLength","output","lastLastIndex","splitLimit","separatorCopy","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","microtask","newPromiseCapabilityModule","perform","promiseResolve","versions","v8","$Promise","empty","FakePromise","PromiseRejectionEvent","isThenable","isReject","_n","chain","_c","_v","ok","_s","reaction","exited","handler","fail","_h","onHandleUnhandled","onUnhandled","console","unhandled","isUnhandled","emit","onunhandledrejection","reason","error","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","catch","capability","all","remaining","$index","alreadyCalled","race","$isView","isView","fin","viewS","viewT","init","rApply","fApply","thisArgument","argumentsList","L","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","propertyKey","attributes","deleteProperty","Enumerate","enumerate","receiver","getProto","V","existingDescriptor","ownDesc","setProto","metadata","toMetaKey","ordinaryDefineOwnMetadata","defineMetadata","metadataKey","metadataValue","deleteMetadata","ordinaryHasOwnMetadata","ordinaryGetOwnMetadata","ordinaryGetMetadata","getMetadata","Set","ordinaryOwnMetadataKeys","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","getOwnMetadata","getOwnMetadataKeys","ordinaryHasMetadata","hasMetadata","hasOwnMetadata","$metadata","factory","performance","mark","performanceMeasure","label","Error","nativeMicroTaskQueuePromise","Zone","zoneSpec","_properties","_parent","_name","properties","_zoneDelegate","ZoneDelegate","assertZonePatched","patches","zone","current","_currentZoneFrame","_currentTask","__load_patch","perfName","_api","getZoneWith","fork","callback","_callback","intercept","runGuarded","applyThis","applyArgs","handleError","runTask","NO_ZONE","state","notScheduled","eventTask","reEntryGuard","running","_transitionTo","scheduled","runCount","previousTask","macroTask","isPeriodic","cancelFn","invokeTask","unknown","_updateTaskCount","scheduleTask","newZone","scheduling","zoneDelegates","_zoneDelegates","_zone","scheduleMicroTask","customSchedule","ZoneTask","microTask","scheduleMacroTask","customCancel","scheduleEventTask","cancelTask","canceling","__symbol__","DELEGATE_ZS","onHasTask","delegate","hasTaskState","hasTask","onScheduleTask","onInvokeTask","onCancelTask","parentDelegate","_taskCounts","_parentDelegate","_forkZS","onFork","_forkDlgt","_forkCurrZone","_interceptZS","onIntercept","_interceptDlgt","_interceptCurrZone","_invokeZS","onInvoke","_invokeDlgt","_invokeCurrZone","_handleErrorZS","onHandleError","_handleErrorDlgt","_handleErrorCurrZone","_scheduleTaskZS","_scheduleTaskDlgt","_scheduleTaskCurrZone","_invokeTaskZS","_invokeTaskDlgt","_invokeTaskCurrZone","_cancelTaskZS","_cancelTaskDlgt","_cancelTaskCurrZone","_hasTaskZS","_hasTaskDlgt","_hasTaskDlgtOwner","_hasTaskCurrZone","zoneSpecHasTask","parentHasTask","targetZone","returnTask","scheduleFn","isEmpty","counts","change","options","_state","useG","_numberOfNestedTaskFrames","drainMicroTaskQueue","cancelScheduleRequest","toState","fromState1","fromState2","handleId","symbolSetTimeout","symbolPromise","symbolThen","_microTaskQueue","_isDrainingMicrotaskQueue","onUnhandledError","microtaskDrainDone","symbol","currentZoneFrame","noop","showUncaughtError","patchEventTarget","patchOnProperties","patchMethod","bindArguments","setNativePromise","NativePromise","api","ObjectGetOwnPropertyDescriptor","ObjectDefineProperty","_uncaughtPromiseErrors","creationTrace","rejection","message","stack","_loop_1","uncaughtPromiseError","shift","handleUnhandledRejection","UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL","forwardResolution","forwardRejection","ZoneAwarePromise","symbolState","symbolValue","symbolFinally","symbolParentPromiseValue","symbolParentPromiseState","UNRESOLVED","RESOLVED","REJECTED","REJECTED_NO_CATCH","makeResolver","resolvePromise","once","wasCalled","wrappedFunction","TYPE_ERROR","CURRENT_TASK_TRACE_SYMBOL","onceWrapper","clearRejectedNoCatch","trace","currentTask","scheduleResolveOrReject","obj","className","readableObjectToString","error_1","REJECTION_HANDLED_HANDLER","chainPromise","promiseState","parentPromiseValue","isFinallyPromise","rej","onResolve","onReject","values_1","resolvedValues","values_2","finally","onFinally","ZONE_AWARE_PROMISE","NewNativePromise","patchThen","symbolThenPatched","Ctor","prop","originalThen","_this","fetch_1","resultPromise","ctor","zoneify","ObjectGetPrototypeOf","ObjectCreate","ArraySlice","ADD_EVENT_LISTENER_STR","REMOVE_EVENT_LISTENER_STR","ZONE_SYMBOL_ADD_EVENT_LISTENER","ZONE_SYMBOL_REMOVE_EVENT_LISTENER","TRUE_STR","FALSE_STR","ZONE_SYMBOL_PREFIX","wrapWithCurrentZone","scheduleMacroTaskWithCurrentZone","zoneSymbol","isWindowExists","internalWindow","_global","REMOVE_ATTRIBUTE","NULL_ON_PROP_VALUE","isPropertyWritable","isWebWorker","WorkerGlobalScope","isBrowser","isMix","zoneSymbolEventNames","wrapFn","eventNameSymbol","preventDefault","patchProperty","originalDescGet","originalDescSet","eventName","substr","newValue","removeEventListener","removeAttribute","onProperties","originalInstanceKey","patchClass","OriginalClass","attachOriginToPatched","patchFn","delegateName","patchDelegate_1","patched","isDetectedIEOrEdge","ieOrEdge","isIEOrEdge","ua","originalFunctionToString","ORIGINAL_DELEGATE_SYMBOL","PROMISE_SYMBOL","ERROR_SYMBOL","newFunctionToString","originalDelegate","nativePromise","nativeError","originalObjectToString","OPTIMIZED_ZONE_EVENT_TASK_DATA","zoneSymbolEventNames$1","globalSources","EVENT_NAME_SYMBOL_REGX","IMMEDIATE_PROPAGATION_SYMBOL","apis","patchOptions","ADD_EVENT_LISTENER","REMOVE_EVENT_LISTENER","rm","LISTENERS_EVENT_LISTENER","listeners","REMOVE_ALL_LISTENERS_EVENT_LISTENER","rmAll","zoneSymbolAddEventListener","ADD_EVENT_LISTENER_SOURCE","PREPEND_EVENT_LISTENER","PREPEND_EVENT_LISTENER_SOURCE","isRemoved","handleEvent","delegate_1","globalZoneAwareCallback","tasks","copyTasks","globalZoneAwareCaptureCallback","patchEventTargetMethods","useGlobalCallback","validateHandler","vh","checkDuplicate","chkDup","returnTarget","nativePrependEventListener","taskData","nativeAddEventListener","nativeRemoveEventListener","nativeListeners","nativeRemoveAllListeners","prepend","isExisting","capture","symbolEventNames","symbolEventName","existingTasks","allRemoved","compare","diff","typeOfDelegate","blackListedEvents","makeAddListener","nativeListener","addSource","customScheduleFn","customCancelFn","isHandleEvent","symbolCapture","constructorName","targetSource","unshift","existingTask","findEventTasks","symbolCaptureEventName","captureTasks","removeTasks","evtName","results","foundTasks","taskSymbol","patchTimer","setName","cancelName","nameSuffix","setNative","clearNative","tasksByHandleId","delay","handle","ref","unref","_defineProperty","_getOwnPropertyDescriptor","unconfigurablesKey","isUnconfigurable","rewriteDescriptor","isFrozen","_tryDefineProperty","originalConfigurableFlag","descJson","windowEventNames","mediaElementEventNames","frameEventNames","frameSetEventNames","marqueeEventNames","XMLHttpRequestEventNames","IDBIndexEventNames","websocketEventNames","workerEventNames","eventNames","patchFilteredProperties","ignoreProperties","tip","ip","targetIgnoreProperties","op","filterProperties","propertyDescriptorPatch","supportsWebSocket","WebSocket","HTMLElement","Element","XMLHttpRequestPrototype","XMLHttpRequest","xhrDesc","req","onreadystatechange","SYMBOL_FAKE_ONREADYSTATECHANGE_1","detectFunc","canPatchViaPropertyDescriptor","__Zone_ignore_on_properties","Document","HTMLMediaElement","HTMLFrameSetElement","HTMLBodyElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement_1","Worker_1","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","onproperty","elt","unboundKey","parentElement","patchViaCapturingAllTheEvents","WS","EventTarget","proxySocket","proxySocketProto","socket","onmessageDesc","propName","propertySymbol","globalWebSocket","patchEvent","Event","patchEventPrototype","registerElementPatch","_registerElement","registerElement","callbacks","opts","_redefineProperty","blockingMethods","SYMBOL_BLACK_LISTED_EVENTS","WTF_ISSUE_555","NO_EVENT_TARGET","isWtf","WTF_ISSUE_555_ARRAY","isDisableIECheck","isEnableCrossContextCheck","BROWSER_TOOLS","targets","apiTypes","nativeDelegate","testString","eventTargetPatch","props","HTMLCanvasElement","toBlob","funcName","metaCreator","cbIdx","patchMacroTask","oriAddListener","oriRemoveListener","XMLHttpRequestEventTargetPrototype","READY_STATE_CHANGE","SCHEDULED","XHR_SCHEDULED","XHR_LISTENER","newListener","readyState","DONE","aborted","storedTask","XHR_TASK","sendNative","placeholderCallback","abortNative","openNative","XHR_SYNC","XHR_URL","findPendingTask","patchXHR","geolocation","fnNames","name_1","patchPrototype","findPromiseRejectionHandler","evt","__webpack_exports__","Headers","Request","Response","DOMException","fetch","support","searchParams","blob","Blob","formData","arrayBuffer","viewClasses","isArrayBufferView","normalizeName","normalizeValue","iteratorFor","items","headers","append","header","consumed","body","bodyUsed","fileReaderReady","reader","onload","onerror","readBlobAsArrayBuffer","FileReader","readAsArrayBuffer","bufferClone","buf","Body","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","FormData","_bodyFormData","URLSearchParams","isDataView","_bodyArrayBuffer","rejected","text","readAsText","readBlobAsText","chars","readArrayBufferAsText","decode","json","parse","oldValue","thisArg","input","credentials","signal","upcased","toUpperCase","normalizeMethod","referrer","form","decodeURIComponent","bodyInit","status","statusText","clone","response","redirectStatuses","redirect","location","request","xhr","abortXhr","abort","rawHeaders","line","parts","parseHeaders","getAllResponseHeaders","responseURL","responseText","ontimeout","onabort","withCredentials","responseType","setRequestHeader","send","polyfill","__WEBPACK_AMD_DEFINE_RESULT__","_crypto","crypto","msCrypto","_subtle","subtle","webkitSubtle","_Crypto","Crypto","_SubtleCrypto","SubtleCrypto","isEdge","CryptoKey","Key","isIE","isWebkit","s2a","btoa","a2s","atob","s2b","b2s","alg","hash","publicExponent","modulusLength","SyntaxError","jwkAlg","HMAC","SHA-1","SHA-256","SHA-384","SHA-512","RSASSA-PKCS1-v1_5","RSAES-PKCS1-v1_5","","RSA-OAEP","AES-KW","128","192","256","AES-GCM","AES-CBC","b2jwk","escape","jwk","kty","ext","extractable","oid2str","KoZIhvcNAQEB","str2oid","1.2.840.113549.1.1.1","b2der","rv","xlen","oid","der2b","use","_key","algorithm","usages","isPubKeyUse","u","isPrvKeyUse","_fn","ka","kx","ku","key_ops","unescape","encodeURIComponent","jwk2b","importKey","getRandomValues","generateKey","exportKey","publicKey","privateKey","info","prv","rsaComp","rsaKey","pkcs2jwk","decrypt","oncomplete","encrypt","jwk2pkcs","tl","tagLength","AesGcmEncryptResult","ciphertext","_digest","digest"],"mappings":"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,aAAA0/B,EAEA,IACA,OAAAP,EAAArK,EAAAsB,EAAAr2B,GAEA,MAAAylB,GACA,IAAAma,EAAA,KACA,IACAA,EAAAloB,KAAAE,UAAA5X,GAEA,MAAAylB,GACAma,EAAA5/B,EAAA3J,WAEA8uB,QAAA9Z,IAAA,4BAAAgrB,EAAA,sBAAAuJ,EAAA,gBAAA7K,EAAA,+BAAAtP;;;;;;;;;;;;;;;AA0EA,IAwGAoa,IACA,4BACA,aACA,aACA,eACA,sBACA,cACA,eACA,cACA,eACA,oBACA,4BACA,kBACA,aACA,iBACA,UACA,iBACA,UACA,SACA,QACA,WACA,WACA,WACA,mBACA,UACA,qBACA,SACA,gBACA,oBACA,wBACA,0BAOAC,IAAA,+EA6DAC,IAAA,QACAC,IAAA,gEACAC,IAAA,2BACAC,IACA,6EACA,oBAEAC,IAAA,wFACAC,IAAA,kCACAC,IAAA,mBACAC,IAnNA,QACA,kBACA,eACA,qBACA,WACA,cACA,OACA,SACA,UACA,iBACA,SACA,mBACA,oBACA,iBACA,YACA,QACA,QACA,cACA,aACA,WACA,OACA,UACA,YACA,WACA,YACA,WACA,OACA,iBACA,UACA,QACA,QACA,QACA,UACA,WACA,oBACA,QACA,UACA,UACA,WACA,QACA,OACA,YACA,aACA,iBACA,qBACA,YACA,aACA,aACA,YACA,WACA,YACA,UACA,aACA,oBACA,QACA,OACA,UACA,gBACA,cACA,eACA,eACA,oBACA,uBACA,4BACA,mBACA,sBACA,yBACA,cACA,WACA,cACA,YACA,WACA,aACA,QACA,SACA,SACA,SACA,UACA,SACA,kBACA,cACA,OACA,OACA,UACA,SACA,UACA,aACA,eACA,cACA,YACA,aACA,WACA,mBACA,gBACA,UACA,SAoHA7+B,QAbA,wEACA,qCACA,WAtGA,iFACA,sFACA,oFACA,oBA8GAo+B,IA3EA,kFACA,iFACA,0EAIA,WACA,cACA,cACA,iBACA,mBACA,kBACA,eACA,aACA,gBACA,gBACA,iBACA,kBACA,cACA,eACA,iBACA,cACA,OACA,UACA,YACA,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","file":"app/polyfills.7c2e53863584b575d629.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 658);\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar TO_STRING = 'toString';\nvar $toString = Function[TO_STRING];\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","var core = module.exports = { version: '2.5.7' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","'use strict';\nvar fails = require('./_fails');\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// most Object methods by ES6 should accept primitives\nvar $export = require('./_export');\nvar core = require('./_core');\nvar fails = require('./_fails');\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n","// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = require('./_ctx');\nvar IObject = require('./_iobject');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar asc = require('./_array-species-create');\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nif (require('./_descriptors')) {\n var LIBRARY = require('./_library');\n var global = require('./_global');\n var fails = require('./_fails');\n var $export = require('./_export');\n var $typed = require('./_typed');\n var $buffer = require('./_typed-buffer');\n var ctx = require('./_ctx');\n var anInstance = require('./_an-instance');\n var propertyDesc = require('./_property-desc');\n var hide = require('./_hide');\n var redefineAll = require('./_redefine-all');\n var toInteger = require('./_to-integer');\n var toLength = require('./_to-length');\n var toIndex = require('./_to-index');\n var toAbsoluteIndex = require('./_to-absolute-index');\n var toPrimitive = require('./_to-primitive');\n var has = require('./_has');\n var classof = require('./_classof');\n var isObject = require('./_is-object');\n var toObject = require('./_to-object');\n var isArrayIter = require('./_is-array-iter');\n var create = require('./_object-create');\n var getPrototypeOf = require('./_object-gpo');\n var gOPN = require('./_object-gopn').f;\n var getIterFn = require('./core.get-iterator-method');\n var uid = require('./_uid');\n var wks = require('./_wks');\n var createArrayMethod = require('./_array-methods');\n var createArrayIncludes = require('./_array-includes');\n var speciesConstructor = require('./_species-constructor');\n var ArrayIterators = require('./es6.array.iterator');\n var Iterators = require('./_iterators');\n var $iterDetect = require('./_iter-detect');\n var setSpecies = require('./_set-species');\n var arrayFill = require('./_array-fill');\n var arrayCopyWithin = require('./_array-copy-within');\n var $DP = require('./_object-dp');\n var $GOPD = require('./_object-gopd');\n var dP = $DP.f;\n var gOPD = $GOPD.f;\n var RangeError = global.RangeError;\n var TypeError = global.TypeError;\n var Uint8Array = global.Uint8Array;\n var ARRAY_BUFFER = 'ArrayBuffer';\n var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;\n var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\n var PROTOTYPE = 'prototype';\n var ArrayProto = Array[PROTOTYPE];\n var $ArrayBuffer = $buffer.ArrayBuffer;\n var $DataView = $buffer.DataView;\n var arrayForEach = createArrayMethod(0);\n var arrayFilter = createArrayMethod(2);\n var arraySome = createArrayMethod(3);\n var arrayEvery = createArrayMethod(4);\n var arrayFind = createArrayMethod(5);\n var arrayFindIndex = createArrayMethod(6);\n var arrayIncludes = createArrayIncludes(true);\n var arrayIndexOf = createArrayIncludes(false);\n var arrayValues = ArrayIterators.values;\n var arrayKeys = ArrayIterators.keys;\n var arrayEntries = ArrayIterators.entries;\n var arrayLastIndexOf = ArrayProto.lastIndexOf;\n var arrayReduce = ArrayProto.reduce;\n var arrayReduceRight = ArrayProto.reduceRight;\n var arrayJoin = ArrayProto.join;\n var arraySort = ArrayProto.sort;\n var arraySlice = ArrayProto.slice;\n var arrayToString = ArrayProto.toString;\n var arrayToLocaleString = ArrayProto.toLocaleString;\n var ITERATOR = wks('iterator');\n var TAG = wks('toStringTag');\n var TYPED_CONSTRUCTOR = uid('typed_constructor');\n var DEF_CONSTRUCTOR = uid('def_constructor');\n var ALL_CONSTRUCTORS = $typed.CONSTR;\n var TYPED_ARRAY = $typed.TYPED;\n var VIEW = $typed.VIEW;\n var WRONG_LENGTH = 'Wrong length!';\n\n var $map = createArrayMethod(1, function (O, length) {\n return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);\n });\n\n var LITTLE_ENDIAN = fails(function () {\n // eslint-disable-next-line no-undef\n return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;\n });\n\n var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {\n new Uint8Array(1).set({});\n });\n\n var toOffset = function (it, BYTES) {\n var offset = toInteger(it);\n if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');\n return offset;\n };\n\n var validate = function (it) {\n if (isObject(it) && TYPED_ARRAY in it) return it;\n throw TypeError(it + ' is not a typed array!');\n };\n\n var allocate = function (C, length) {\n if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {\n throw TypeError('It is not a typed array constructor!');\n } return new C(length);\n };\n\n var speciesFromList = function (O, list) {\n return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);\n };\n\n var fromList = function (C, list) {\n var index = 0;\n var length = list.length;\n var result = allocate(C, length);\n while (length > index) result[index] = list[index++];\n return result;\n };\n\n var addGetter = function (it, key, internal) {\n dP(it, key, { get: function () { return this._d[internal]; } });\n };\n\n var $from = function from(source /* , mapfn, thisArg */) {\n var O = toObject(source);\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iterFn = getIterFn(O);\n var i, length, values, result, step, iterator;\n if (iterFn != undefined && !isArrayIter(iterFn)) {\n for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {\n values.push(step.value);\n } O = values;\n }\n if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);\n for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n };\n\n var $of = function of(/* ...items */) {\n var index = 0;\n var length = arguments.length;\n var result = allocate(this, length);\n while (length > index) result[index] = arguments[index++];\n return result;\n };\n\n // iOS Safari 6.x fails here\n var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });\n\n var $toLocaleString = function toLocaleString() {\n return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);\n };\n\n var proto = {\n copyWithin: function copyWithin(target, start /* , end */) {\n return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n },\n every: function every(callbackfn /* , thisArg */) {\n return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars\n return arrayFill.apply(validate(this), arguments);\n },\n filter: function filter(callbackfn /* , thisArg */) {\n return speciesFromList(this, arrayFilter(validate(this), callbackfn,\n arguments.length > 1 ? arguments[1] : undefined));\n },\n find: function find(predicate /* , thisArg */) {\n return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n findIndex: function findIndex(predicate /* , thisArg */) {\n return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n forEach: function forEach(callbackfn /* , thisArg */) {\n arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n indexOf: function indexOf(searchElement /* , fromIndex */) {\n return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n includes: function includes(searchElement /* , fromIndex */) {\n return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n join: function join(separator) { // eslint-disable-line no-unused-vars\n return arrayJoin.apply(validate(this), arguments);\n },\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars\n return arrayLastIndexOf.apply(validate(this), arguments);\n },\n map: function map(mapfn /* , thisArg */) {\n return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduce.apply(validate(this), arguments);\n },\n reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduceRight.apply(validate(this), arguments);\n },\n reverse: function reverse() {\n var that = this;\n var length = validate(that).length;\n var middle = Math.floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n },\n some: function some(callbackfn /* , thisArg */) {\n return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n sort: function sort(comparefn) {\n return arraySort.call(validate(this), comparefn);\n },\n subarray: function subarray(begin, end) {\n var O = validate(this);\n var length = O.length;\n var $begin = toAbsoluteIndex(begin, length);\n return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(\n O.buffer,\n O.byteOffset + $begin * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)\n );\n }\n };\n\n var $slice = function slice(start, end) {\n return speciesFromList(this, arraySlice.call(validate(this), start, end));\n };\n\n var $set = function set(arrayLike /* , offset */) {\n validate(this);\n var offset = toOffset(arguments[1], 1);\n var length = this.length;\n var src = toObject(arrayLike);\n var len = toLength(src.length);\n var index = 0;\n if (len + offset > length) throw RangeError(WRONG_LENGTH);\n while (index < len) this[offset + index] = src[index++];\n };\n\n var $iterators = {\n entries: function entries() {\n return arrayEntries.call(validate(this));\n },\n keys: function keys() {\n return arrayKeys.call(validate(this));\n },\n values: function values() {\n return arrayValues.call(validate(this));\n }\n };\n\n var isTAIndex = function (target, key) {\n return isObject(target)\n && target[TYPED_ARRAY]\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n };\n var $getDesc = function getOwnPropertyDescriptor(target, key) {\n return isTAIndex(target, key = toPrimitive(key, true))\n ? propertyDesc(2, target[key])\n : gOPD(target, key);\n };\n var $setDesc = function defineProperty(target, key, desc) {\n if (isTAIndex(target, key = toPrimitive(key, true))\n && isObject(desc)\n && has(desc, 'value')\n && !has(desc, 'get')\n && !has(desc, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !desc.configurable\n && (!has(desc, 'writable') || desc.writable)\n && (!has(desc, 'enumerable') || desc.enumerable)\n ) {\n target[key] = desc.value;\n return target;\n } return dP(target, key, desc);\n };\n\n if (!ALL_CONSTRUCTORS) {\n $GOPD.f = $getDesc;\n $DP.f = $setDesc;\n }\n\n $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {\n getOwnPropertyDescriptor: $getDesc,\n defineProperty: $setDesc\n });\n\n if (fails(function () { arrayToString.call({}); })) {\n arrayToString = arrayToLocaleString = function toString() {\n return arrayJoin.call(this);\n };\n }\n\n var $TypedArrayPrototype$ = redefineAll({}, proto);\n redefineAll($TypedArrayPrototype$, $iterators);\n hide($TypedArrayPrototype$, ITERATOR, $iterators.values);\n redefineAll($TypedArrayPrototype$, {\n slice: $slice,\n set: $set,\n constructor: function () { /* noop */ },\n toString: arrayToString,\n toLocaleString: $toLocaleString\n });\n addGetter($TypedArrayPrototype$, 'buffer', 'b');\n addGetter($TypedArrayPrototype$, 'byteOffset', 'o');\n addGetter($TypedArrayPrototype$, 'byteLength', 'l');\n addGetter($TypedArrayPrototype$, 'length', 'e');\n dP($TypedArrayPrototype$, TAG, {\n get: function () { return this[TYPED_ARRAY]; }\n });\n\n // eslint-disable-next-line max-statements\n module.exports = function (KEY, BYTES, wrapper, CLAMPED) {\n CLAMPED = !!CLAMPED;\n var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + KEY;\n var SETTER = 'set' + KEY;\n var TypedArray = global[NAME];\n var Base = TypedArray || {};\n var TAC = TypedArray && getPrototypeOf(TypedArray);\n var FORCED = !TypedArray || !$typed.ABV;\n var O = {};\n var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];\n var getter = function (that, index) {\n var data = that._d;\n return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);\n };\n var setter = function (that, index, value) {\n var data = that._d;\n if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;\n data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);\n };\n var addElement = function (that, index) {\n dP(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n if (FORCED) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME, '_d');\n var index = 0;\n var offset = 0;\n var buffer, byteLength, length, klass;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new $ArrayBuffer(byteLength);\n } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n buffer = data;\n offset = toOffset($offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - offset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (TYPED_ARRAY in data) {\n return fromList(TypedArray, data);\n } else {\n return $from.call(TypedArray, data);\n }\n hide(that, '_d', {\n b: buffer,\n o: offset,\n l: byteLength,\n e: length,\n v: new $DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);\n hide(TypedArrayPrototype, 'constructor', TypedArray);\n } else if (!fails(function () {\n TypedArray(1);\n }) || !fails(function () {\n new TypedArray(-1); // eslint-disable-line no-new\n }) || !$iterDetect(function (iter) {\n new TypedArray(); // eslint-disable-line no-new\n new TypedArray(null); // eslint-disable-line no-new\n new TypedArray(1.5); // eslint-disable-line no-new\n new TypedArray(iter); // eslint-disable-line no-new\n }, true)) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME);\n var klass;\n // `ws` module bug, temporarily remove validation length for Uint8Array\n // https://github.com/websockets/ws/pull/645\n if (!isObject(data)) return new Base(toIndex(data));\n if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n return $length !== undefined\n ? new Base(data, toOffset($offset, BYTES), $length)\n : $offset !== undefined\n ? new Base(data, toOffset($offset, BYTES))\n : new Base(data);\n }\n if (TYPED_ARRAY in data) return fromList(TypedArray, data);\n return $from.call(TypedArray, data);\n });\n arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {\n if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);\n });\n TypedArray[PROTOTYPE] = TypedArrayPrototype;\n if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;\n }\n var $nativeIterator = TypedArrayPrototype[ITERATOR];\n var CORRECT_ITER_NAME = !!$nativeIterator\n && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);\n var $iterator = $iterators.values;\n hide(TypedArray, TYPED_CONSTRUCTOR, true);\n hide(TypedArrayPrototype, TYPED_ARRAY, NAME);\n hide(TypedArrayPrototype, VIEW, true);\n hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);\n\n if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {\n dP(TypedArrayPrototype, TAG, {\n get: function () { return NAME; }\n });\n }\n\n O[NAME] = TypedArray;\n\n $export($export.G + $export.W + $export.F * (TypedArray != Base), O);\n\n $export($export.S, NAME, {\n BYTES_PER_ELEMENT: BYTES\n });\n\n $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {\n from: $from,\n of: $of\n });\n\n if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);\n\n $export($export.P, NAME, proto);\n\n setSpecies(NAME);\n\n $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });\n\n $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);\n\n if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;\n\n $export($export.P + $export.F * fails(function () {\n new TypedArray(1).slice();\n }), NAME, { slice: $slice });\n\n $export($export.P + $export.F * (fails(function () {\n return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();\n }) || !fails(function () {\n TypedArrayPrototype.toLocaleString.call([1, 2]);\n })), NAME, { toLocaleString: $toLocaleString });\n\n Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;\n if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);\n };\n} else module.exports = function () { /* empty */ };\n","var Map = require('./es6.map');\nvar $export = require('./_export');\nvar shared = require('./_shared')('metadata');\nvar store = shared.store || (shared.store = new (require('./es6.weak-map'))());\n\nvar getOrCreateMetadataMap = function (target, targetKey, create) {\n var targetMetadata = store.get(target);\n if (!targetMetadata) {\n if (!create) return undefined;\n store.set(target, targetMetadata = new Map());\n }\n var keyMetadata = targetMetadata.get(targetKey);\n if (!keyMetadata) {\n if (!create) return undefined;\n targetMetadata.set(targetKey, keyMetadata = new Map());\n } return keyMetadata;\n};\nvar ordinaryHasOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? false : metadataMap.has(MetadataKey);\n};\nvar ordinaryGetOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);\n};\nvar ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {\n getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);\n};\nvar ordinaryOwnMetadataKeys = function (target, targetKey) {\n var metadataMap = getOrCreateMetadataMap(target, targetKey, false);\n var keys = [];\n if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); });\n return keys;\n};\nvar toMetaKey = function (it) {\n return it === undefined || typeof it == 'symbol' ? it : String(it);\n};\nvar exp = function (O) {\n $export($export.S, 'Reflect', O);\n};\n\nmodule.exports = {\n store: store,\n map: getOrCreateMetadataMap,\n has: ordinaryHasOwnMetadata,\n get: ordinaryGetOwnMetadata,\n set: ordinaryDefineOwnMetadata,\n keys: ordinaryOwnMetadataKeys,\n key: toMetaKey,\n exp: exp\n};\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","module.exports = false;\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal');\nvar hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar global = require('./_global');\nvar dP = require('./_object-dp');\nvar DESCRIPTORS = require('./_descriptors');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n","module.exports = function (it, Constructor, name, forbiddenField) {\n if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n","var ctx = require('./_ctx');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar getIterFn = require('./core.get-iterator-method');\nvar BREAK = {};\nvar RETURN = {};\nvar exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {\n var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);\n var f = ctx(fn, that, entries ? 2 : 1);\n var index = 0;\n var length, step, iterator, result;\n if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if (result === BREAK || result === RETURN) return result;\n } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {\n result = call(iterator, f, step.value, entries);\n if (result === BREAK || result === RETURN) return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n","var redefine = require('./_redefine');\nmodule.exports = function (target, src, safe) {\n for (var key in src) redefine(target, key, src[key], safe);\n return target;\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || Function(\"return this\")() || (1, eval)(\"this\");\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","module.exports = {};\n","var isObject = require('./_is-object');\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n","exports.f = {}.propertyIsEnumerable;\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2018 Denis Pushkarev (zloirock.ru)'\n});\n","exports.f = Object.getOwnPropertySymbols;\n","var classof = require('./_classof');\nvar ITERATOR = require('./_wks')('iterator');\nvar Iterators = require('./_iterators');\nmodule.exports = require('./_core').getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var ITERATOR = require('./_wks')('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n","'use strict';\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar wks = require('./_wks');\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n var fns = exec(defined, SYMBOL, ''[KEY]);\n var strfn = fns[0];\n var rxfn = fns[1];\n if (fails(function () {\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n })) {\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n","'use strict';\nvar global = require('./_global');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar redefineAll = require('./_redefine-all');\nvar meta = require('./_meta');\nvar forOf = require('./_for-of');\nvar anInstance = require('./_an-instance');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar $iterDetect = require('./_iter-detect');\nvar setToStringTag = require('./_set-to-string-tag');\nvar inheritIfRequired = require('./_inherit-if-required');\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar uid = require('./_uid');\nvar TYPED = uid('typed_array');\nvar VIEW = uid('view');\nvar ABV = !!(global.ArrayBuffer && global.DataView);\nvar CONSTR = ABV;\nvar i = 0;\nvar l = 9;\nvar Typed;\n\nvar TypedArrayConstructors = (\n 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'\n).split(',');\n\nwhile (i < l) {\n if (Typed = global[TypedArrayConstructors[i++]]) {\n hide(Typed.prototype, TYPED, true);\n hide(Typed.prototype, VIEW, true);\n } else CONSTR = false;\n}\n\nmodule.exports = {\n ABV: ABV,\n CONSTR: CONSTR,\n TYPED: TYPED,\n VIEW: VIEW\n};\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","// 7.2.8 IsRegExp(argument)\nvar isObject = require('./_is-object');\nvar cof = require('./_cof');\nvar MATCH = require('./_wks')('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n","'use strict';\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = require('./_an-object');\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar SPECIES = require('./_wks')('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var isObject = require('./_is-object');\nvar setPrototypeOf = require('./_set-proto').set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n","// 20.2.2.28 Math.sign(x)\nmodule.exports = Math.sign || function sign(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n","// 20.2.2.14 Math.expm1(x)\nvar $expm1 = Math.expm1;\nmodule.exports = (!$expm1\n // Old FF bug\n || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || $expm1(-2e-17) != -2e-17\n) ? function expm1(x) {\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : $expm1;\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = require('./_is-regexp');\nvar defined = require('./_defined');\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n","var MATCH = require('./_wks')('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n","// check on default Array iterator\nvar Iterators = require('./_iterators');\nvar ITERATOR = require('./_wks')('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var aLen = arguments.length;\n var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);\n var end = aLen > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar global = require('./_global');\nvar DESCRIPTORS = require('./_descriptors');\nvar LIBRARY = require('./_library');\nvar $typed = require('./_typed');\nvar hide = require('./_hide');\nvar redefineAll = require('./_redefine-all');\nvar fails = require('./_fails');\nvar anInstance = require('./_an-instance');\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nvar toIndex = require('./_to-index');\nvar gOPN = require('./_object-gopn').f;\nvar dP = require('./_object-dp').f;\nvar arrayFill = require('./_array-fill');\nvar setToStringTag = require('./_set-to-string-tag');\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length!';\nvar WRONG_INDEX = 'Wrong index!';\nvar $ArrayBuffer = global[ARRAY_BUFFER];\nvar $DataView = global[DATA_VIEW];\nvar Math = global.Math;\nvar RangeError = global.RangeError;\n// eslint-disable-next-line no-shadow-restricted-names\nvar Infinity = global.Infinity;\nvar BaseBuffer = $ArrayBuffer;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\nvar BUFFER = 'buffer';\nvar BYTE_LENGTH = 'byteLength';\nvar BYTE_OFFSET = 'byteOffset';\nvar $BUFFER = DESCRIPTORS ? '_b' : BUFFER;\nvar $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;\nvar $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;\n\n// IEEE754 conversions based on https://github.com/feross/ieee754\nfunction packIEEE754(value, mLen, nBytes) {\n var buffer = new Array(nBytes);\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var i = 0;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n var e, m, c;\n value = abs(value);\n // eslint-disable-next-line no-self-compare\n if (value != value || value === Infinity) {\n // eslint-disable-next-line no-self-compare\n m = value != value ? 1 : 0;\n e = eMax;\n } else {\n e = floor(log(value) / LN2);\n if (value * (c = pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * pow(2, eBias - 1) * pow(2, mLen);\n e = 0;\n }\n }\n for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);\n buffer[--i] |= s * 128;\n return buffer;\n}\nfunction unpackIEEE754(buffer, mLen, nBytes) {\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = eLen - 7;\n var i = nBytes - 1;\n var s = buffer[i--];\n var e = s & 127;\n var m;\n s >>= 7;\n for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : s ? -Infinity : Infinity;\n } else {\n m = m + pow(2, mLen);\n e = e - eBias;\n } return (s ? -1 : 1) * m * pow(2, e - mLen);\n}\n\nfunction unpackI32(bytes) {\n return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];\n}\nfunction packI8(it) {\n return [it & 0xff];\n}\nfunction packI16(it) {\n return [it & 0xff, it >> 8 & 0xff];\n}\nfunction packI32(it) {\n return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];\n}\nfunction packF64(it) {\n return packIEEE754(it, 52, 8);\n}\nfunction packF32(it) {\n return packIEEE754(it, 23, 4);\n}\n\nfunction addGetter(C, key, internal) {\n dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });\n}\n\nfunction get(view, bytes, index, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = store.slice(start, start + bytes);\n return isLittleEndian ? pack : pack.reverse();\n}\nfunction set(view, bytes, index, conversion, value, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = conversion(+value);\n for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];\n}\n\nif (!$typed.ABV) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer, ARRAY_BUFFER);\n var byteLength = toIndex(length);\n this._b = arrayFill.call(new Array(byteLength), 0);\n this[$LENGTH] = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = buffer[$LENGTH];\n var offset = toInteger(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n this[$BUFFER] = buffer;\n this[$OFFSET] = offset;\n this[$LENGTH] = byteLength;\n };\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, BYTE_LENGTH, '_l');\n addGetter($DataView, BUFFER, '_b');\n addGetter($DataView, BYTE_LENGTH, '_l');\n addGetter($DataView, BYTE_OFFSET, '_o');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1]));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packF32, value, arguments[2]);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packF64, value, arguments[2]);\n }\n });\n} else {\n if (!fails(function () {\n $ArrayBuffer(1);\n }) || !fails(function () {\n new $ArrayBuffer(-1); // eslint-disable-line no-new\n }) || fails(function () {\n new $ArrayBuffer(); // eslint-disable-line no-new\n new $ArrayBuffer(1.5); // eslint-disable-line no-new\n new $ArrayBuffer(NaN); // eslint-disable-line no-new\n return $ArrayBuffer.name != ARRAY_BUFFER;\n })) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer);\n return new BaseBuffer(toIndex(length));\n };\n var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];\n for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);\n }\n if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;\n }\n // iOS Safari 7.x bug\n var view = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = $DataView[PROTOTYPE].setInt8;\n view.setInt8(0, 2147483648);\n view.setInt8(1, 2147483649);\n if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, true);\n}\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\nhide($DataView[PROTOTYPE], $typed.VIEW, true);\nexports[ARRAY_BUFFER] = $ArrayBuffer;\nexports[DATA_VIEW] = $DataView;\n","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n","// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function (fn, args, that) {\n var un = that === undefined;\n switch (args.length) {\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n","'use strict';\nvar toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n\nmodule.exports = function repeat(count) {\n var str = String(defined(this));\n var res = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError(\"Count can't be negative\");\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;\n return res;\n};\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar $defineProperty = require('./_object-dp');\nvar createDesc = require('./_property-desc');\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","var ctx = require('./_ctx');\nvar invoke = require('./_invoke');\nvar html = require('./_html');\nvar cel = require('./_dom-create');\nvar global = require('./_global');\nvar process = global.process;\nvar setTask = global.setImmediate;\nvar clearTask = global.clearImmediate;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function (event) {\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!setTask || !clearTask) {\n setTask = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (require('./_cof')(process) == 'process') {\n defer = function (id) {\n process.nextTick(ctx(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in cel('script')) {\n defer = function (id) {\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n","'use strict';\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = require('./_a-function');\n\nfunction PromiseCapability(C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n}\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var global = require('./_global');\nvar navigator = global.navigator;\n\nmodule.exports = navigator && navigator.userAgent || '';\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","exports.f = require('./_wks');\n","var global = require('./_global');\nvar core = require('./_core');\nvar LIBRARY = require('./_library');\nvar wksExt = require('./_wks-ext');\nvar defineProperty = require('./_object-dp').f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject');\nvar gOPN = require('./_object-gopn').f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n","'use strict';\nvar aFunction = require('./_a-function');\nvar isObject = require('./_is-object');\nvar invoke = require('./_invoke');\nvar arraySlice = [].slice;\nvar factories = {};\n\nvar construct = function (F, len, args) {\n if (!(len in factories)) {\n for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');\n } return factories[len](F, args);\n};\n\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = arraySlice.call(arguments, 1);\n var bound = function (/* args... */) {\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);\n };\n if (isObject(fn.prototype)) bound.prototype = fn.prototype;\n return bound;\n};\n","var $parseInt = require('./_global').parseInt;\nvar $trim = require('./_string-trim').trim;\nvar ws = require('./_string-ws');\nvar hex = /^[-+]?0[xX]/;\n\nmodule.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {\n var string = $trim(String(str), 3);\n return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : $parseInt;\n","var $parseFloat = require('./_global').parseFloat;\nvar $trim = require('./_string-trim').trim;\n\nmodule.exports = 1 / $parseFloat(require('./_string-ws') + '-0') !== -Infinity ? function parseFloat(str) {\n var string = $trim(String(str), 3);\n var result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n","var cof = require('./_cof');\nmodule.exports = function (it, msg) {\n if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg);\n return +it;\n};\n","// 20.1.2.3 Number.isInteger(number)\nvar isObject = require('./_is-object');\nvar floor = Math.floor;\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","// 20.2.2.20 Math.log1p(x)\nmodule.exports = Math.log1p || function log1p(x) {\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n","// call something on iterator step with safe closing on error\nvar anObject = require('./_an-object');\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n","// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = require('./_array-species-constructor');\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n","var aFunction = require('./_a-function');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar toLength = require('./_to-length');\n\nmodule.exports = function (that, callbackfn, aLen, memo, isRight) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IObject(O);\n var length = toLength(O.length);\n var index = isRight ? length - 1 : 0;\n var i = isRight ? -1 : 1;\n if (aLen < 2) for (;;) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (isRight ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n};\n","// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\n'use strict';\nvar toObject = require('./_to-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\n\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n","// 21.2.5.3 get RegExp.prototype.flags()\nif (require('./_descriptors') && /./g.flags != 'g') require('./_object-dp').f(RegExp.prototype, 'flags', {\n configurable: true,\n get: require('./_flags')\n});\n","var global = require('./_global');\nvar macrotask = require('./_task').set;\nvar Observer = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar isNode = require('./_cof')(process) == 'process';\n\nmodule.exports = function () {\n var head, last, notify;\n\n var flush = function () {\n var parent, fn;\n if (isNode && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (e) {\n if (head) notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (isNode) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339\n } else if (Observer && !(global.navigator && global.navigator.standalone)) {\n var toggle = true;\n var node = document.createTextNode('');\n new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n var promise = Promise.resolve(undefined);\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n };\n};\n","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar MAP = 'Map';\n\n// 23.1 Map Objects\nmodule.exports = require('./_collection')(MAP, function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = strong.getEntry(validate(this, MAP), key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);\n }\n}, strong, true);\n","'use strict';\nvar dP = require('./_object-dp').f;\nvar create = require('./_object-create');\nvar redefineAll = require('./_redefine-all');\nvar ctx = require('./_ctx');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar $iterDefine = require('./_iter-define');\nvar step = require('./_iter-step');\nvar setSpecies = require('./_set-species');\nvar DESCRIPTORS = require('./_descriptors');\nvar fastKey = require('./_meta').fastKey;\nvar validate = require('./_validate-collection');\nvar SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function (that, key) {\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return that._i[index];\n // frozen object case\n for (entry = that._f; entry; entry = entry.n) {\n if (entry.k == key) return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {\n entry.r = true;\n if (entry.p) entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = validate(this, NAME);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.n;\n var prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if (prev) prev.n = next;\n if (next) next.p = prev;\n if (that._f == entry) that._f = next;\n if (that._l == entry) that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n validate(this, NAME);\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.n : this._f) {\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(validate(this, NAME), key);\n }\n });\n if (DESCRIPTORS) dP(C.prototype, 'size', {\n get: function () {\n return validate(this, NAME)[SIZE];\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var entry = getEntry(that, key);\n var prev, index;\n // change existing entry\n if (entry) {\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if (!that._f) that._f = entry;\n if (prev) prev.n = entry;\n that[SIZE]++;\n // add to index\n if (index !== 'F') that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function (C, NAME, IS_MAP) {\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function (iterated, kind) {\n this._t = validate(iterated, NAME); // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function () {\n var that = this;\n var kind = that._k;\n var entry = that._l;\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n // get next entry\n if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if (kind == 'keys') return step(0, entry.k);\n if (kind == 'values') return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n","'use strict';\nvar strong = require('./_collection-strong');\nvar validate = require('./_validate-collection');\nvar SET = 'Set';\n\n// 23.2 Set Objects\nmodule.exports = require('./_collection')(SET, function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);\n }\n}, strong);\n","'use strict';\nvar each = require('./_array-methods')(0);\nvar redefine = require('./_redefine');\nvar meta = require('./_meta');\nvar assign = require('./_object-assign');\nvar weak = require('./_collection-weak');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar validate = require('./_validate-collection');\nvar WEAK_MAP = 'WeakMap';\nvar getWeak = meta.getWeak;\nvar isExtensible = Object.isExtensible;\nvar uncaughtFrozenStore = weak.ufstore;\nvar tmp = {};\nvar InternalMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n if (isObject(key)) {\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return weak.def(validate(this, WEAK_MAP), key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = require('./_collection')(WEAK_MAP, wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif (fails(function () { return new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7; })) {\n InternalMap = weak.getConstructor(wrapper, WEAK_MAP);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function (key) {\n var proto = $WeakMap.prototype;\n var method = proto[key];\n redefine(proto, key, function (a, b) {\n // store frozen objects on internal weakmap shim\n if (isObject(a) && !isExtensible(a)) {\n if (!this._f) this._f = new InternalMap();\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n","'use strict';\nvar redefineAll = require('./_redefine-all');\nvar getWeak = require('./_meta').getWeak;\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar createArrayMethod = require('./_array-methods');\nvar $has = require('./_has');\nvar validate = require('./_validate-collection');\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (that) {\n return that._l || (that._l = new UncaughtFrozenStore());\n};\nvar UncaughtFrozenStore = function () {\n this.a = [];\n};\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.a, function (it) {\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.a, function (it) {\n return it[0] === key;\n });\n if (~index) this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var data = getWeak(anObject(key), true);\n if (data === true) uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n","// https://tc39.github.io/ecma262/#sec-toindex\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toInteger(it);\n var length = toLength(number);\n if (number !== length) throw RangeError('Wrong length!');\n return length;\n};\n","// all object keys, includes non-enumerable and symbols\nvar gOPN = require('./_object-gopn');\nvar gOPS = require('./_object-gops');\nvar anObject = require('./_an-object');\nvar Reflect = require('./_global').Reflect;\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {\n var keys = gOPN.f(anObject(it));\n var getSymbols = gOPS.f;\n return getSymbols ? keys.concat(getSymbols(it)) : keys;\n};\n","// 20.2.2.16 Math.fround(x)\nvar sign = require('./_math-sign');\nvar pow = Math.pow;\nvar EPSILON = pow(2, -52);\nvar EPSILON32 = pow(2, -23);\nvar MAX32 = pow(2, 127) * (2 - EPSILON32);\nvar MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function (n) {\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\nmodule.exports = Math.fround || function fround(x) {\n var $abs = Math.abs(x);\n var $sign = sign(x);\n var a, result;\n if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n // eslint-disable-next-line no-self-compare\n if (result > MAX32 || result != result) return $sign * Infinity;\n return $sign * result;\n};\n","module.exports = function (exec) {\n try {\n return { e: false, v: exec() };\n } catch (e) {\n return { e: true, v: e };\n }\n};\n","var anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar newPromiseCapability = require('./_new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var forOf = require('./_for-of');\n\nmodule.exports = function (iter, ITERATOR) {\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global');\nvar has = require('./_has');\nvar DESCRIPTORS = require('./_descriptors');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar META = require('./_meta').KEY;\nvar $fails = require('./_fails');\nvar shared = require('./_shared');\nvar setToStringTag = require('./_set-to-string-tag');\nvar uid = require('./_uid');\nvar wks = require('./_wks');\nvar wksExt = require('./_wks-ext');\nvar wksDefine = require('./_wks-define');\nvar enumKeys = require('./_enum-keys');\nvar isArray = require('./_is-array');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar createDesc = require('./_property-desc');\nvar _create = require('./_object-create');\nvar gOPNExt = require('./_object-gopn-ext');\nvar $GOPD = require('./_object-gopd');\nvar $DP = require('./_object-dp');\nvar $keys = require('./_object-keys');\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol-registry');\nvar AllSymbols = shared('symbols');\nvar OPSymbols = shared('op-symbols');\nvar ObjectProto = Object[PROTOTYPE];\nvar USE_NATIVE = typeof $Symbol == 'function';\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function () {\n return _create(dP({}, 'a', {\n get: function () { return dP(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (it, key, D) {\n var protoDesc = gOPD(ObjectProto, key);\n if (protoDesc) delete ObjectProto[key];\n dP(it, key, D);\n if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function (tag) {\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D) {\n if (it === ObjectProto) $defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if (has(AllSymbols, key)) {\n if (!D.enumerable) {\n if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;\n D = _create(D, { enumerable: createDesc(0, false) });\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P) {\n anObject(it);\n var keys = enumKeys(P = toIObject(P));\n var i = 0;\n var l = keys.length;\n var key;\n while (l > i) $defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P) {\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key) {\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {\n it = toIObject(it);\n key = toPrimitive(key, true);\n if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;\n var D = gOPD(it, key);\n if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it) {\n var names = gOPN(toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it) {\n var IS_OP = it === ObjectProto;\n var names = gOPN(IS_OP ? OPSymbols : toIObject(it));\n var result = [];\n var i = 0;\n var key;\n while (names.length > i) {\n if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif (!USE_NATIVE) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function (value) {\n if (this === ObjectProto) $set.call(OPSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n require('./_object-gops').f = $getOwnPropertySymbols;\n\n if (DESCRIPTORS && !require('./_library')) {\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function (name) {\n return wrap(wks(name));\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });\n\nfor (var es6Symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);\n\nfor (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function (key) {\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');\n for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;\n },\n useSetter: function () { setter = true; },\n useSimple: function () { setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it) {\n var args = [it];\n var i = 1;\n var replacer, $replacer;\n while (arguments.length > i) args.push(arguments[i++]);\n $replacer = replacer = args[1];\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n","var $export = require('./_export');\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: require('./_object-create') });\n","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperty: require('./_object-dp').f });\n","var $export = require('./_export');\n// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', { defineProperties: require('./_object-dps') });\n","// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = require('./_to-iobject');\nvar $getOwnPropertyDescriptor = require('./_object-gopd').f;\n\nrequire('./_object-sap')('getOwnPropertyDescriptor', function () {\n return function getOwnPropertyDescriptor(it, key) {\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n","// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = require('./_to-object');\nvar $getPrototypeOf = require('./_object-gpo');\n\nrequire('./_object-sap')('getPrototypeOf', function () {\n return function getPrototypeOf(it) {\n return $getPrototypeOf(toObject(it));\n };\n});\n","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object');\nvar $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n","// 19.1.2.7 Object.getOwnPropertyNames(O)\nrequire('./_object-sap')('getOwnPropertyNames', function () {\n return require('./_object-gopn-ext').f;\n});\n","// 19.1.2.5 Object.freeze(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('freeze', function ($freeze) {\n return function freeze(it) {\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n","// 19.1.2.17 Object.seal(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('seal', function ($seal) {\n return function seal(it) {\n return $seal && isObject(it) ? $seal(meta(it)) : it;\n };\n});\n","// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = require('./_is-object');\nvar meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('preventExtensions', function ($preventExtensions) {\n return function preventExtensions(it) {\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n","// 19.1.2.12 Object.isFrozen(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isFrozen', function ($isFrozen) {\n return function isFrozen(it) {\n return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;\n };\n});\n","// 19.1.2.13 Object.isSealed(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isSealed', function ($isSealed) {\n return function isSealed(it) {\n return isObject(it) ? $isSealed ? $isSealed(it) : false : true;\n };\n});\n","// 19.1.2.11 Object.isExtensible(O)\nvar isObject = require('./_is-object');\n\nrequire('./_object-sap')('isExtensible', function ($isExtensible) {\n return function isExtensible(it) {\n return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;\n };\n});\n","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', { assign: require('./_object-assign') });\n","// 19.1.3.10 Object.is(value1, value2)\nvar $export = require('./_export');\n$export($export.S, 'Object', { is: require('./_same-value') });\n","// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = require('./_export');\n$export($export.S, 'Object', { setPrototypeOf: require('./_set-proto').set });\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)\nvar $export = require('./_export');\n\n$export($export.P, 'Function', { bind: require('./_bind') });\n","var dP = require('./_object-dp').f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || require('./_descriptors') && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n","'use strict';\nvar isObject = require('./_is-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar HAS_INSTANCE = require('./_wks')('hasInstance');\nvar FunctionProto = Function.prototype;\n// 19.2.3.6 Function.prototype[@@hasInstance](V)\nif (!(HAS_INSTANCE in FunctionProto)) require('./_object-dp').f(FunctionProto, HAS_INSTANCE, { value: function (O) {\n if (typeof this != 'function' || !isObject(O)) return false;\n if (!isObject(this.prototype)) return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while (O = getPrototypeOf(O)) if (this.prototype === O) return true;\n return false;\n} });\n","var $export = require('./_export');\nvar $parseInt = require('./_parse-int');\n// 18.2.5 parseInt(string, radix)\n$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });\n","var $export = require('./_export');\nvar $parseFloat = require('./_parse-float');\n// 18.2.4 parseFloat(string)\n$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });\n","'use strict';\nvar global = require('./_global');\nvar has = require('./_has');\nvar cof = require('./_cof');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar toPrimitive = require('./_to-primitive');\nvar fails = require('./_fails');\nvar gOPN = require('./_object-gopn').f;\nvar gOPD = require('./_object-gopd').f;\nvar dP = require('./_object-dp').f;\nvar $trim = require('./_string-trim').trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = require('./_descriptors') ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n require('./_redefine')(global, NUMBER, $Number);\n}\n","'use strict';\nvar $export = require('./_export');\nvar toInteger = require('./_to-integer');\nvar aNumberValue = require('./_a-number-value');\nvar repeat = require('./_string-repeat');\nvar $toFixed = 1.0.toFixed;\nvar floor = Math.floor;\nvar data = [0, 0, 0, 0, 0, 0];\nvar ERROR = 'Number.toFixed: incorrect invocation!';\nvar ZERO = '0';\n\nvar multiply = function (n, c) {\n var i = -1;\n var c2 = c;\n while (++i < 6) {\n c2 += n * data[i];\n data[i] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n};\nvar divide = function (n) {\n var i = 6;\n var c = 0;\n while (--i >= 0) {\n c += data[i];\n data[i] = floor(c / n);\n c = (c % n) * 1e7;\n }\n};\nvar numToString = function () {\n var i = 6;\n var s = '';\n while (--i >= 0) {\n if (s !== '' || i === 0 || data[i] !== 0) {\n var t = String(data[i]);\n s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;\n }\n } return s;\n};\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\n$export($export.P + $export.F * (!!$toFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !require('./_fails')(function () {\n // V8 ~ Android 4.3-\n $toFixed.call({});\n})), 'Number', {\n toFixed: function toFixed(fractionDigits) {\n var x = aNumberValue(this, ERROR);\n var f = toInteger(fractionDigits);\n var s = '';\n var m = ZERO;\n var e, z, j, k;\n if (f < 0 || f > 20) throw RangeError(ERROR);\n // eslint-disable-next-line no-self-compare\n if (x != x) return 'NaN';\n if (x <= -1e21 || x >= 1e21) return String(x);\n if (x < 0) {\n s = '-';\n x = -x;\n }\n if (x > 1e-21) {\n e = log(x * pow(2, 69, 1)) - 69;\n z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = f;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n m = numToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n m = numToString() + repeat.call(ZERO, f);\n }\n }\n if (f > 0) {\n k = m.length;\n m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));\n } else {\n m = s + m;\n } return m;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $fails = require('./_fails');\nvar aNumberValue = require('./_a-number-value');\nvar $toPrecision = 1.0.toPrecision;\n\n$export($export.P + $export.F * ($fails(function () {\n // IE7-\n return $toPrecision.call(1, undefined) !== '1';\n}) || !$fails(function () {\n // V8 ~ Android 4.3-\n $toPrecision.call({});\n})), 'Number', {\n toPrecision: function toPrecision(precision) {\n var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');\n return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);\n }\n});\n","// 20.1.2.1 Number.EPSILON\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });\n","// 20.1.2.2 Number.isFinite(number)\nvar $export = require('./_export');\nvar _isFinite = require('./_global').isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n","// 20.1.2.3 Number.isInteger(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { isInteger: require('./_is-integer') });\n","// 20.1.2.4 Number.isNaN(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n","// 20.1.2.5 Number.isSafeInteger(number)\nvar $export = require('./_export');\nvar isInteger = require('./_is-integer');\nvar abs = Math.abs;\n\n$export($export.S, 'Number', {\n isSafeInteger: function isSafeInteger(number) {\n return isInteger(number) && abs(number) <= 0x1fffffffffffff;\n }\n});\n","// 20.1.2.6 Number.MAX_SAFE_INTEGER\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff });\n","// 20.1.2.10 Number.MIN_SAFE_INTEGER\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff });\n","var $export = require('./_export');\nvar $parseFloat = require('./_parse-float');\n// 20.1.2.12 Number.parseFloat(string)\n$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat });\n","var $export = require('./_export');\nvar $parseInt = require('./_parse-int');\n// 20.1.2.13 Number.parseInt(string, radix)\n$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt });\n","// 20.2.2.3 Math.acosh(x)\nvar $export = require('./_export');\nvar log1p = require('./_math-log1p');\nvar sqrt = Math.sqrt;\nvar $acosh = Math.acosh;\n\n$export($export.S + $export.F * !($acosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n && Math.floor($acosh(Number.MAX_VALUE)) == 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN\n && $acosh(Infinity) == Infinity\n), 'Math', {\n acosh: function acosh(x) {\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? Math.log(x) + Math.LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n","// 20.2.2.5 Math.asinh(x)\nvar $export = require('./_export');\nvar $asinh = Math.asinh;\n\nfunction asinh(x) {\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));\n}\n\n// Tor Browser bug: Math.asinh(0) -> -0\n$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh });\n","// 20.2.2.7 Math.atanh(x)\nvar $export = require('./_export');\nvar $atanh = Math.atanh;\n\n// Tor Browser bug: Math.atanh(-0) -> 0\n$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {\n atanh: function atanh(x) {\n return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;\n }\n});\n","// 20.2.2.9 Math.cbrt(x)\nvar $export = require('./_export');\nvar sign = require('./_math-sign');\n\n$export($export.S, 'Math', {\n cbrt: function cbrt(x) {\n return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);\n }\n});\n","// 20.2.2.11 Math.clz32(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n clz32: function clz32(x) {\n return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;\n }\n});\n","// 20.2.2.12 Math.cosh(x)\nvar $export = require('./_export');\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n cosh: function cosh(x) {\n return (exp(x = +x) + exp(-x)) / 2;\n }\n});\n","// 20.2.2.14 Math.expm1(x)\nvar $export = require('./_export');\nvar $expm1 = require('./_math-expm1');\n\n$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 });\n","// 20.2.2.16 Math.fround(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { fround: require('./_math-fround') });\n","// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])\nvar $export = require('./_export');\nvar abs = Math.abs;\n\n$export($export.S, 'Math', {\n hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars\n var sum = 0;\n var i = 0;\n var aLen = arguments.length;\n var larg = 0;\n var arg, div;\n while (i < aLen) {\n arg = abs(arguments[i++]);\n if (larg < arg) {\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if (arg > 0) {\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * Math.sqrt(sum);\n }\n});\n","// 20.2.2.18 Math.imul(x, y)\nvar $export = require('./_export');\nvar $imul = Math.imul;\n\n// some WebKit versions fails with big numbers, some has wrong arity\n$export($export.S + $export.F * require('./_fails')(function () {\n return $imul(0xffffffff, 5) != -5 || $imul.length != 2;\n}), 'Math', {\n imul: function imul(x, y) {\n var UINT16 = 0xffff;\n var xn = +x;\n var yn = +y;\n var xl = UINT16 & xn;\n var yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n","// 20.2.2.21 Math.log10(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log10: function log10(x) {\n return Math.log(x) * Math.LOG10E;\n }\n});\n","// 20.2.2.20 Math.log1p(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { log1p: require('./_math-log1p') });\n","// 20.2.2.22 Math.log2(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log2: function log2(x) {\n return Math.log(x) / Math.LN2;\n }\n});\n","// 20.2.2.28 Math.sign(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', { sign: require('./_math-sign') });\n","// 20.2.2.30 Math.sinh(x)\nvar $export = require('./_export');\nvar expm1 = require('./_math-expm1');\nvar exp = Math.exp;\n\n// V8 near Chromium 38 has a problem with very small numbers\n$export($export.S + $export.F * require('./_fails')(function () {\n return !Math.sinh(-2e-17) != -2e-17;\n}), 'Math', {\n sinh: function sinh(x) {\n return Math.abs(x = +x) < 1\n ? (expm1(x) - expm1(-x)) / 2\n : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);\n }\n});\n","// 20.2.2.33 Math.tanh(x)\nvar $export = require('./_export');\nvar expm1 = require('./_math-expm1');\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n tanh: function tanh(x) {\n var a = expm1(x = +x);\n var b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n","// 20.2.2.34 Math.trunc(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n trunc: function trunc(it) {\n return (it > 0 ? Math.floor : Math.ceil)(it);\n }\n});\n","var $export = require('./_export');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar fromCharCode = String.fromCharCode;\nvar $fromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\n$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {\n // 21.1.2.2 String.fromCodePoint(...codePoints)\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var res = [];\n var aLen = arguments.length;\n var i = 0;\n var code;\n while (aLen > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');\n res.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)\n );\n } return res.join('');\n }\n});\n","var $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\n\n$export($export.S, 'String', {\n // 21.1.2.4 String.raw(callSite, ...substitutions)\n raw: function raw(callSite) {\n var tpl = toIObject(callSite.raw);\n var len = toLength(tpl.length);\n var aLen = arguments.length;\n var res = [];\n var i = 0;\n while (len > i) {\n res.push(String(tpl[i++]));\n if (i < aLen) res.push(String(arguments[i]));\n } return res.join('');\n }\n});\n","'use strict';\n// 21.1.3.25 String.prototype.trim()\nrequire('./_string-trim')('trim', function ($trim) {\n return function trim() {\n return $trim(this, 3);\n };\n});\n","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar $export = require('./_export');\nvar $at = require('./_string-at')(false);\n$export($export.P, 'String', {\n // 21.1.3.3 String.prototype.codePointAt(pos)\n codePointAt: function codePointAt(pos) {\n return $at(this, pos);\n }\n});\n","// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $export = require('./_export');\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: require('./_string-repeat')\n});\n","// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n'use strict';\nvar $export = require('./_export');\nvar toLength = require('./_to-length');\nvar context = require('./_string-context');\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\n// B.2.3.2 String.prototype.anchor(name)\nrequire('./_string-html')('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n","'use strict';\n// B.2.3.3 String.prototype.big()\nrequire('./_string-html')('big', function (createHTML) {\n return function big() {\n return createHTML(this, 'big', '', '');\n };\n});\n","'use strict';\n// B.2.3.4 String.prototype.blink()\nrequire('./_string-html')('blink', function (createHTML) {\n return function blink() {\n return createHTML(this, 'blink', '', '');\n };\n});\n","'use strict';\n// B.2.3.5 String.prototype.bold()\nrequire('./_string-html')('bold', function (createHTML) {\n return function bold() {\n return createHTML(this, 'b', '', '');\n };\n});\n","'use strict';\n// B.2.3.6 String.prototype.fixed()\nrequire('./_string-html')('fixed', function (createHTML) {\n return function fixed() {\n return createHTML(this, 'tt', '', '');\n };\n});\n","'use strict';\n// B.2.3.7 String.prototype.fontcolor(color)\nrequire('./_string-html')('fontcolor', function (createHTML) {\n return function fontcolor(color) {\n return createHTML(this, 'font', 'color', color);\n };\n});\n","'use strict';\n// B.2.3.8 String.prototype.fontsize(size)\nrequire('./_string-html')('fontsize', function (createHTML) {\n return function fontsize(size) {\n return createHTML(this, 'font', 'size', size);\n };\n});\n","'use strict';\n// B.2.3.9 String.prototype.italics()\nrequire('./_string-html')('italics', function (createHTML) {\n return function italics() {\n return createHTML(this, 'i', '', '');\n };\n});\n","'use strict';\n// B.2.3.10 String.prototype.link(url)\nrequire('./_string-html')('link', function (createHTML) {\n return function link(url) {\n return createHTML(this, 'a', 'href', url);\n };\n});\n","'use strict';\n// B.2.3.11 String.prototype.small()\nrequire('./_string-html')('small', function (createHTML) {\n return function small() {\n return createHTML(this, 'small', '', '');\n };\n});\n","'use strict';\n// B.2.3.12 String.prototype.strike()\nrequire('./_string-html')('strike', function (createHTML) {\n return function strike() {\n return createHTML(this, 'strike', '', '');\n };\n});\n","'use strict';\n// B.2.3.13 String.prototype.sub()\nrequire('./_string-html')('sub', function (createHTML) {\n return function sub() {\n return createHTML(this, 'sub', '', '');\n };\n});\n","'use strict';\n// B.2.3.14 String.prototype.sup()\nrequire('./_string-html')('sup', function (createHTML) {\n return function sup() {\n return createHTML(this, 'sup', '', '');\n };\n});\n","// 20.3.3.1 / 15.9.4.4 Date.now()\nvar $export = require('./_export');\n\n$export($export.S, 'Date', { now: function () { return new Date().getTime(); } });\n","'use strict';\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar toPrimitive = require('./_to-primitive');\n\n$export($export.P + $export.F * require('./_fails')(function () {\n return new Date(NaN).toJSON() !== null\n || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1;\n}), 'Date', {\n // eslint-disable-next-line no-unused-vars\n toJSON: function toJSON(key) {\n var O = toObject(this);\n var pv = toPrimitive(O);\n return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();\n }\n});\n","// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar $export = require('./_export');\nvar toISOString = require('./_date-to-iso-string');\n\n// PhantomJS / old WebKit has a broken implementations\n$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', {\n toISOString: toISOString\n});\n","'use strict';\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar fails = require('./_fails');\nvar getTime = Date.prototype.getTime;\nvar $toISOString = Date.prototype.toISOString;\n\nvar lz = function (num) {\n return num > 9 ? num : '0' + num;\n};\n\n// PhantomJS / old WebKit has a broken implementations\nmodule.exports = (fails(function () {\n return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z';\n}) || !fails(function () {\n $toISOString.call(new Date(NaN));\n})) ? function toISOString() {\n if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value');\n var d = this;\n var y = d.getUTCFullYear();\n var m = d.getUTCMilliseconds();\n var s = y < 0 ? '-' : y > 9999 ? '+' : '';\n return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +\n '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +\n 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +\n ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';\n} : $toISOString;\n","var DateProto = Date.prototype;\nvar INVALID_DATE = 'Invalid Date';\nvar TO_STRING = 'toString';\nvar $toString = DateProto[TO_STRING];\nvar getTime = DateProto.getTime;\nif (new Date(NaN) + '' != INVALID_DATE) {\n require('./_redefine')(DateProto, TO_STRING, function toString() {\n var value = getTime.call(this);\n // eslint-disable-next-line no-self-compare\n return value === value ? $toString.call(this) : INVALID_DATE;\n });\n}\n","var TO_PRIMITIVE = require('./_wks')('toPrimitive');\nvar proto = Date.prototype;\n\nif (!(TO_PRIMITIVE in proto)) require('./_hide')(proto, TO_PRIMITIVE, require('./_date-to-primitive'));\n","'use strict';\nvar anObject = require('./_an-object');\nvar toPrimitive = require('./_to-primitive');\nvar NUMBER = 'number';\n\nmodule.exports = function (hint) {\n if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint');\n return toPrimitive(anObject(this), hint != NUMBER);\n};\n","// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)\nvar $export = require('./_export');\n\n$export($export.S, 'Array', { isArray: require('./_is-array') });\n","'use strict';\nvar ctx = require('./_ctx');\nvar $export = require('./_export');\nvar toObject = require('./_to-object');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar toLength = require('./_to-length');\nvar createProperty = require('./_create-property');\nvar getIterFn = require('./core.get-iterator-method');\n\n$export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar createProperty = require('./_create-property');\n\n// WebKit Array.of isn't generic\n$export($export.S + $export.F * require('./_fails')(function () {\n function F() { /* empty */ }\n return !(Array.of.call(F) instanceof F);\n}), 'Array', {\n // 22.1.2.3 Array.of( ...items)\n of: function of(/* ...args */) {\n var index = 0;\n var aLen = arguments.length;\n var result = new (typeof this == 'function' ? this : Array)(aLen);\n while (aLen > index) createProperty(result, index, arguments[index++]);\n result.length = aLen;\n return result;\n }\n});\n","'use strict';\n// 22.1.3.13 Array.prototype.join(separator)\nvar $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar arrayJoin = [].join;\n\n// fallback for not array-like strings\n$export($export.P + $export.F * (require('./_iobject') != Object || !require('./_strict-method')(arrayJoin)), 'Array', {\n join: function join(separator) {\n return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar html = require('./_html');\nvar cof = require('./_cof');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nvar arraySlice = [].slice;\n\n// fallback for not array-like ES3 strings and DOM objects\n$export($export.P + $export.F * require('./_fails')(function () {\n if (html) arraySlice.call(html);\n}), 'Array', {\n slice: function slice(begin, end) {\n var len = toLength(this.length);\n var klass = cof(this);\n end = end === undefined ? len : end;\n if (klass == 'Array') return arraySlice.call(this, begin, end);\n var start = toAbsoluteIndex(begin, len);\n var upTo = toAbsoluteIndex(end, len);\n var size = toLength(upTo - start);\n var cloned = new Array(size);\n var i = 0;\n for (; i < size; i++) cloned[i] = klass == 'String'\n ? this.charAt(start + i)\n : this[start + i];\n return cloned;\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar toObject = require('./_to-object');\nvar fails = require('./_fails');\nvar $sort = [].sort;\nvar test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function () {\n // IE8-\n test.sort(undefined);\n}) || !fails(function () {\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !require('./_strict-method')($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $forEach = require('./_array-methods')(0);\nvar STRICT = require('./_strict-method')([].forEach, true);\n\n$export($export.P + $export.F * !STRICT, 'Array', {\n // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])\n forEach: function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments[1]);\n }\n});\n","var isObject = require('./_is-object');\nvar isArray = require('./_is-array');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n","'use strict';\nvar $export = require('./_export');\nvar $map = require('./_array-methods')(1);\n\n$export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', {\n // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $filter = require('./_array-methods')(2);\n\n$export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', {\n // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $some = require('./_array-methods')(3);\n\n$export($export.P + $export.F * !require('./_strict-method')([].some, true), 'Array', {\n // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $every = require('./_array-methods')(4);\n\n$export($export.P + $export.F * !require('./_strict-method')([].every, true), 'Array', {\n // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $reduce = require('./_array-reduce');\n\n$export($export.P + $export.F * !require('./_strict-method')([].reduce, true), 'Array', {\n // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], false);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $reduce = require('./_array-reduce');\n\n$export($export.P + $export.F * !require('./_strict-method')([].reduceRight, true), 'Array', {\n // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])\n reduceRight: function reduceRight(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], true);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar $indexOf = require('./_array-includes')(false);\nvar $native = [].indexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', {\n // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? $native.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments[1]);\n }\n});\n","'use strict';\nvar $export = require('./_export');\nvar toIObject = require('./_to-iobject');\nvar toInteger = require('./_to-integer');\nvar toLength = require('./_to-length');\nvar $native = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !require('./_strict-method')($native)), 'Array', {\n // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0;\n var O = toIObject(this);\n var length = toLength(O.length);\n var index = length - 1;\n if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0;\n return -1;\n }\n});\n","// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { copyWithin: require('./_array-copy-within') });\n\nrequire('./_add-to-unscopables')('copyWithin');\n","// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = require('./_export');\n\n$export($export.P, 'Array', { fill: require('./_array-fill') });\n\nrequire('./_add-to-unscopables')('fill');\n","'use strict';\n// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(5);\nvar KEY = 'find';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","'use strict';\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = require('./_export');\nvar $find = require('./_array-methods')(6);\nvar KEY = 'findIndex';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\nrequire('./_add-to-unscopables')(KEY);\n","require('./_set-species')('Array');\n","var global = require('./_global');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar dP = require('./_object-dp').f;\nvar gOPN = require('./_object-gopn').f;\nvar isRegExp = require('./_is-regexp');\nvar $flags = require('./_flags');\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () {\n re2[require('./_wks')('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n require('./_redefine')(global, 'RegExp', $RegExp);\n}\n\nrequire('./_set-species')('RegExp');\n","'use strict';\nrequire('./es6.regexp.flags');\nvar anObject = require('./_an-object');\nvar $flags = require('./_flags');\nvar DESCRIPTORS = require('./_descriptors');\nvar TO_STRING = 'toString';\nvar $toString = /./[TO_STRING];\n\nvar define = function (fn) {\n require('./_redefine')(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif (require('./_fails')(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {\n define(function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if ($toString.name != TO_STRING) {\n define(function toString() {\n return $toString.call(this);\n });\n}\n","// @@match logic\nrequire('./_fix-re-wks')('match', 1, function (defined, MATCH, $match) {\n // 21.1.3.11 String.prototype.match(regexp)\n return [function match(regexp) {\n 'use strict';\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n }, $match];\n});\n","// @@replace logic\nrequire('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace) {\n // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)\n return [function replace(searchValue, replaceValue) {\n 'use strict';\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n }, $replace];\n});\n","// @@search logic\nrequire('./_fix-re-wks')('search', 1, function (defined, SEARCH, $search) {\n // 21.1.3.15 String.prototype.search(regexp)\n return [function search(regexp) {\n 'use strict';\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n }, $search];\n});\n","// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split) {\n 'use strict';\n var isRegExp = require('./_is-regexp');\n var _split = $split;\n var $push = [].push;\n var $SPLIT = 'split';\n var LENGTH = 'length';\n var LAST_INDEX = 'lastIndex';\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n var NPCG = /()??/.exec('')[1] === undefined; // nonparticipating capturing group\n // based on es5-shim implementation, need to rework it\n $split = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return _split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? 4294967295 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var separator2, match, lastIndex, lastLength, i;\n // Doesn't need flags gy, but they don't hurt\n if (!NPCG) separator2 = new RegExp('^' + separatorCopy.source + '$(?!\\\\s)', flags);\n while (match = separatorCopy.exec(string)) {\n // `separatorCopy.lastIndex` is not reliable cross-browser\n lastIndex = match.index + match[0][LENGTH];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n // Fix browsers whose `exec` methods don't consistently return `undefined` for NPCG\n // eslint-disable-next-line no-loop-func\n if (!NPCG && match[LENGTH] > 1) match[0].replace(separator2, function () {\n for (i = 1; i < arguments[LENGTH] - 2; i++) if (arguments[i] === undefined) match[i] = undefined;\n });\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n $split = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : _split.call(this, separator, limit);\n };\n }\n // 21.1.3.17 String.prototype.split(separator, limit)\n return [function split(separator, limit) {\n var O = defined(this);\n var fn = separator == undefined ? undefined : separator[SPLIT];\n return fn !== undefined ? fn.call(separator, O, limit) : $split.call(String(O), separator, limit);\n }, $split];\n});\n","'use strict';\nvar LIBRARY = require('./_library');\nvar global = require('./_global');\nvar ctx = require('./_ctx');\nvar classof = require('./_classof');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar aFunction = require('./_a-function');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar speciesConstructor = require('./_species-constructor');\nvar task = require('./_task').set;\nvar microtask = require('./_microtask')();\nvar newPromiseCapabilityModule = require('./_new-promise-capability');\nvar perform = require('./_perform');\nvar userAgent = require('./_user-agent');\nvar promiseResolve = require('./_promise-resolve');\nvar PROMISE = 'Promise';\nvar TypeError = global.TypeError;\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8 || '';\nvar $Promise = global[PROMISE];\nvar isNode = classof(process) == 'process';\nvar empty = function () { /* empty */ };\nvar Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;\nvar newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;\n\nvar USE_NATIVE = !!function () {\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1);\n var FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function')\n && promise.then(empty) instanceof FakePromise\n // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // we can't detect it synchronously, so just check versions\n && v8.indexOf('6.6') !== 0\n && userAgent.indexOf('Chrome/66') === -1;\n } catch (e) { /* empty */ }\n}();\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (promise, isReject) {\n if (promise._n) return;\n promise._n = true;\n var chain = promise._c;\n microtask(function () {\n var value = promise._v;\n var ok = promise._s == 1;\n var i = 0;\n var run = function (reaction) {\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (promise._h == 2) onHandleUnhandled(promise);\n promise._h = 1;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // may throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (e) {\n if (domain && !exited) domain.exit();\n reject(e);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if (isReject && !promise._h) onUnhandled(promise);\n });\n};\nvar onUnhandled = function (promise) {\n task.call(global, function () {\n var value = promise._v;\n var unhandled = isUnhandled(promise);\n var result, handler, console;\n if (unhandled) {\n result = perform(function () {\n if (isNode) {\n process.emit('unhandledRejection', value, promise);\n } else if (handler = global.onunhandledrejection) {\n handler({ promise: promise, reason: value });\n } else if ((console = global.console) && console.error) {\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if (unhandled && result.e) throw result.v;\n });\n};\nvar isUnhandled = function (promise) {\n return promise._h !== 1 && (promise._a || promise._c).length === 0;\n};\nvar onHandleUnhandled = function (promise) {\n task.call(global, function () {\n var handler;\n if (isNode) {\n process.emit('rejectionHandled', promise);\n } else if (handler = global.onrejectionhandled) {\n handler({ promise: promise, reason: promise._v });\n }\n });\n};\nvar $reject = function (value) {\n var promise = this;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if (!promise._a) promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function (value) {\n var promise = this;\n var then;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n if (then = isThenable(value)) {\n microtask(function () {\n var wrapper = { _w: promise, _d: false }; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch (e) {\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch (e) {\n $reject.call({ _w: promise, _d: false }, e); // wrap\n }\n};\n\n// constructor polyfill\nif (!USE_NATIVE) {\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor) {\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch (err) {\n $reject.call(this, err);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = require('./_redefine-all')($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected) {\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if (this._a) this._a.push(reaction);\n if (this._s) notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === $Promise || C === Wrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });\nrequire('./_set-to-string-tag')($Promise, PROMISE);\nrequire('./_set-species')(PROMISE);\nWrapper = require('./_core')[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n var $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x) {\n return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function (iter) {\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var values = [];\n var index = 0;\n var remaining = 1;\n forOf(iterable, false, function (promise) {\n var $index = index++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.e) reject(result.v);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n forOf(iterable, false, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.e) reject(result.v);\n return capability.promise;\n }\n});\n","'use strict';\nvar weak = require('./_collection-weak');\nvar validate = require('./_validate-collection');\nvar WEAK_SET = 'WeakSet';\n\n// 23.4 WeakSet Objects\nrequire('./_collection')(WEAK_SET, function (get) {\n return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.4.3.1 WeakSet.prototype.add(value)\n add: function add(value) {\n return weak.def(validate(this, WEAK_SET), value, true);\n }\n}, weak, false, true);\n","'use strict';\nvar $export = require('./_export');\nvar $typed = require('./_typed');\nvar buffer = require('./_typed-buffer');\nvar anObject = require('./_an-object');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nvar toLength = require('./_to-length');\nvar isObject = require('./_is-object');\nvar ArrayBuffer = require('./_global').ArrayBuffer;\nvar speciesConstructor = require('./_species-constructor');\nvar $ArrayBuffer = buffer.ArrayBuffer;\nvar $DataView = buffer.DataView;\nvar $isView = $typed.ABV && ArrayBuffer.isView;\nvar $slice = $ArrayBuffer.prototype.slice;\nvar VIEW = $typed.VIEW;\nvar ARRAY_BUFFER = 'ArrayBuffer';\n\n$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer });\n\n$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {\n // 24.1.3.1 ArrayBuffer.isView(arg)\n isView: function isView(it) {\n return $isView && $isView(it) || isObject(it) && VIEW in it;\n }\n});\n\n$export($export.P + $export.U + $export.F * require('./_fails')(function () {\n return !new $ArrayBuffer(2).slice(1, undefined).byteLength;\n}), ARRAY_BUFFER, {\n // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)\n slice: function slice(start, end) {\n if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix\n var len = anObject(this).byteLength;\n var first = toAbsoluteIndex(start, len);\n var fin = toAbsoluteIndex(end === undefined ? len : end, len);\n var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first));\n var viewS = new $DataView(this);\n var viewT = new $DataView(result);\n var index = 0;\n while (first < fin) {\n viewT.setUint8(index++, viewS.getUint8(first++));\n } return result;\n }\n});\n\nrequire('./_set-species')(ARRAY_BUFFER);\n","var $export = require('./_export');\n$export($export.G + $export.W + $export.F * !require('./_typed').ABV, {\n DataView: require('./_typed-buffer').DataView\n});\n","require('./_typed-array')('Int8', 1, function (init) {\n return function Int8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint8', 1, function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint8', 1, function (init) {\n return function Uint8ClampedArray(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n}, true);\n","require('./_typed-array')('Int16', 2, function (init) {\n return function Int16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint16', 2, function (init) {\n return function Uint16Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Int32', 4, function (init) {\n return function Int32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Uint32', 4, function (init) {\n return function Uint32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Float32', 4, function (init) {\n return function Float32Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","require('./_typed-array')('Float64', 8, function (init) {\n return function Float64Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar anObject = require('./_an-object');\nvar rApply = (require('./_global').Reflect || {}).apply;\nvar fApply = Function.apply;\n// MS Edge argumentsList argument is optional\n$export($export.S + $export.F * !require('./_fails')(function () {\n rApply(function () { /* empty */ });\n}), 'Reflect', {\n apply: function apply(target, thisArgument, argumentsList) {\n var T = aFunction(target);\n var L = anObject(argumentsList);\n return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);\n }\n});\n","// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])\nvar $export = require('./_export');\nvar create = require('./_object-create');\nvar aFunction = require('./_a-function');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar bind = require('./_bind');\nvar rConstruct = (require('./_global').Reflect || {}).construct;\n\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n rConstruct(function () { /* empty */ });\n});\n\n$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)\nvar dP = require('./_object-dp');\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar toPrimitive = require('./_to-primitive');\n\n// MS Edge has broken Reflect.defineProperty - throwing instead of returning false\n$export($export.S + $export.F * require('./_fails')(function () {\n // eslint-disable-next-line no-undef\n Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });\n}), 'Reflect', {\n defineProperty: function defineProperty(target, propertyKey, attributes) {\n anObject(target);\n propertyKey = toPrimitive(propertyKey, true);\n anObject(attributes);\n try {\n dP.f(target, propertyKey, attributes);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.4 Reflect.deleteProperty(target, propertyKey)\nvar $export = require('./_export');\nvar gOPD = require('./_object-gopd').f;\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var desc = gOPD(anObject(target), propertyKey);\n return desc && !desc.configurable ? false : delete target[propertyKey];\n }\n});\n","'use strict';\n// 26.1.5 Reflect.enumerate(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar Enumerate = function (iterated) {\n this._t = anObject(iterated); // target\n this._i = 0; // next index\n var keys = this._k = []; // keys\n var key;\n for (key in iterated) keys.push(key);\n};\nrequire('./_iter-create')(Enumerate, 'Object', function () {\n var that = this;\n var keys = that._k;\n var key;\n do {\n if (that._i >= keys.length) return { value: undefined, done: true };\n } while (!((key = keys[that._i++]) in that._t));\n return { value: key, done: false };\n});\n\n$export($export.S, 'Reflect', {\n enumerate: function enumerate(target) {\n return new Enumerate(target);\n }\n});\n","// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\n\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var desc, proto;\n if (anObject(target) === receiver) return target[propertyKey];\n if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', { get: get });\n","// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)\nvar gOPD = require('./_object-gopd');\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {\n return gOPD.f(anObject(target), propertyKey);\n }\n});\n","// 26.1.8 Reflect.getPrototypeOf(target)\nvar $export = require('./_export');\nvar getProto = require('./_object-gpo');\nvar anObject = require('./_an-object');\n\n$export($export.S, 'Reflect', {\n getPrototypeOf: function getPrototypeOf(target) {\n return getProto(anObject(target));\n }\n});\n","// 26.1.9 Reflect.has(target, propertyKey)\nvar $export = require('./_export');\n\n$export($export.S, 'Reflect', {\n has: function has(target, propertyKey) {\n return propertyKey in target;\n }\n});\n","// 26.1.10 Reflect.isExtensible(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar $isExtensible = Object.isExtensible;\n\n$export($export.S, 'Reflect', {\n isExtensible: function isExtensible(target) {\n anObject(target);\n return $isExtensible ? $isExtensible(target) : true;\n }\n});\n","// 26.1.11 Reflect.ownKeys(target)\nvar $export = require('./_export');\n\n$export($export.S, 'Reflect', { ownKeys: require('./_own-keys') });\n","// 26.1.12 Reflect.preventExtensions(target)\nvar $export = require('./_export');\nvar anObject = require('./_an-object');\nvar $preventExtensions = Object.preventExtensions;\n\n$export($export.S, 'Reflect', {\n preventExtensions: function preventExtensions(target) {\n anObject(target);\n try {\n if ($preventExtensions) $preventExtensions(target);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])\nvar dP = require('./_object-dp');\nvar gOPD = require('./_object-gopd');\nvar getPrototypeOf = require('./_object-gpo');\nvar has = require('./_has');\nvar $export = require('./_export');\nvar createDesc = require('./_property-desc');\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\n\nfunction set(target, propertyKey, V /* , receiver */) {\n var receiver = arguments.length < 4 ? target : arguments[3];\n var ownDesc = gOPD.f(anObject(target), propertyKey);\n var existingDescriptor, proto;\n if (!ownDesc) {\n if (isObject(proto = getPrototypeOf(target))) {\n return set(proto, propertyKey, V, receiver);\n }\n ownDesc = createDesc(0);\n }\n if (has(ownDesc, 'value')) {\n if (ownDesc.writable === false || !isObject(receiver)) return false;\n if (existingDescriptor = gOPD.f(receiver, propertyKey)) {\n if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false;\n existingDescriptor.value = V;\n dP.f(receiver, propertyKey, existingDescriptor);\n } else dP.f(receiver, propertyKey, createDesc(0, V));\n return true;\n }\n return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);\n}\n\n$export($export.S, 'Reflect', { set: set });\n","// 26.1.14 Reflect.setPrototypeOf(target, proto)\nvar $export = require('./_export');\nvar setProto = require('./_set-proto');\n\nif (setProto) $export($export.S, 'Reflect', {\n setPrototypeOf: function setPrototypeOf(target, proto) {\n setProto.check(target, proto);\n try {\n setProto.set(target, proto);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar toMetaKey = metadata.key;\nvar ordinaryDefineOwnMetadata = metadata.set;\n\nmetadata.exp({ defineMetadata: function defineMetadata(metadataKey, metadataValue, target, targetKey) {\n ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetaKey(targetKey));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar toMetaKey = metadata.key;\nvar getOrCreateMetadataMap = metadata.map;\nvar store = metadata.store;\n\nmetadata.exp({ deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) {\n var targetKey = arguments.length < 3 ? undefined : toMetaKey(arguments[2]);\n var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);\n if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false;\n if (metadataMap.size) return true;\n var targetMetadata = store.get(target);\n targetMetadata['delete'](targetKey);\n return !!targetMetadata.size || store['delete'](target);\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar ordinaryHasOwnMetadata = metadata.has;\nvar ordinaryGetOwnMetadata = metadata.get;\nvar toMetaKey = metadata.key;\n\nvar ordinaryGetMetadata = function (MetadataKey, O, P) {\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P);\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;\n};\n\nmetadata.exp({ getMetadata: function getMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryGetMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var Set = require('./es6.set');\nvar from = require('./_array-from-iterable');\nvar metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar ordinaryOwnMetadataKeys = metadata.keys;\nvar toMetaKey = metadata.key;\n\nvar ordinaryMetadataKeys = function (O, P) {\n var oKeys = ordinaryOwnMetadataKeys(O, P);\n var parent = getPrototypeOf(O);\n if (parent === null) return oKeys;\n var pKeys = ordinaryMetadataKeys(parent, P);\n return pKeys.length ? oKeys.length ? from(new Set(oKeys.concat(pKeys))) : pKeys : oKeys;\n};\n\nmetadata.exp({ getMetadataKeys: function getMetadataKeys(target /* , targetKey */) {\n return ordinaryMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar ordinaryGetOwnMetadata = metadata.get;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryGetOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar ordinaryOwnMetadataKeys = metadata.keys;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) {\n return ordinaryOwnMetadataKeys(anObject(target), arguments.length < 2 ? undefined : toMetaKey(arguments[1]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar getPrototypeOf = require('./_object-gpo');\nvar ordinaryHasOwnMetadata = metadata.has;\nvar toMetaKey = metadata.key;\n\nvar ordinaryHasMetadata = function (MetadataKey, O, P) {\n var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);\n if (hasOwn) return true;\n var parent = getPrototypeOf(O);\n return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;\n};\n\nmetadata.exp({ hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryHasMetadata(metadataKey, anObject(target), arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar ordinaryHasOwnMetadata = metadata.has;\nvar toMetaKey = metadata.key;\n\nmetadata.exp({ hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) {\n return ordinaryHasOwnMetadata(metadataKey, anObject(target)\n , arguments.length < 3 ? undefined : toMetaKey(arguments[2]));\n} });\n","var $metadata = require('./_metadata');\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar toMetaKey = $metadata.key;\nvar ordinaryDefineOwnMetadata = $metadata.set;\n\n$metadata.exp({ metadata: function metadata(metadataKey, metadataValue) {\n return function decorator(target, targetKey) {\n ordinaryDefineOwnMetadata(\n metadataKey, metadataValue,\n (targetKey !== undefined ? anObject : aFunction)(target),\n toMetaKey(targetKey)\n );\n };\n} });\n","/* tslint:disable */\r\nimport 'core-js/es6';\r\nimport 'core-js/es7/reflect';\r\nrequire('zone.js/dist/zone');\r\n\r\nif (process.env.ENV === 'production') {\r\n // Production\r\n} else {\r\n // Development and test\r\n Error['stackTraceLimit'] = Infinity;\r\n require('zone.js/dist/long-stack-trace-zone');\r\n}\r\n\r\n// Other polyfills\r\nrequire('whatwg-fetch');\r\nrequire('webcrypto-shim');\r\n/* tslint:enable */\r\n","require('../modules/es6.symbol');\nrequire('../modules/es6.object.create');\nrequire('../modules/es6.object.define-property');\nrequire('../modules/es6.object.define-properties');\nrequire('../modules/es6.object.get-own-property-descriptor');\nrequire('../modules/es6.object.get-prototype-of');\nrequire('../modules/es6.object.keys');\nrequire('../modules/es6.object.get-own-property-names');\nrequire('../modules/es6.object.freeze');\nrequire('../modules/es6.object.seal');\nrequire('../modules/es6.object.prevent-extensions');\nrequire('../modules/es6.object.is-frozen');\nrequire('../modules/es6.object.is-sealed');\nrequire('../modules/es6.object.is-extensible');\nrequire('../modules/es6.object.assign');\nrequire('../modules/es6.object.is');\nrequire('../modules/es6.object.set-prototype-of');\nrequire('../modules/es6.object.to-string');\nrequire('../modules/es6.function.bind');\nrequire('../modules/es6.function.name');\nrequire('../modules/es6.function.has-instance');\nrequire('../modules/es6.parse-int');\nrequire('../modules/es6.parse-float');\nrequire('../modules/es6.number.constructor');\nrequire('../modules/es6.number.to-fixed');\nrequire('../modules/es6.number.to-precision');\nrequire('../modules/es6.number.epsilon');\nrequire('../modules/es6.number.is-finite');\nrequire('../modules/es6.number.is-integer');\nrequire('../modules/es6.number.is-nan');\nrequire('../modules/es6.number.is-safe-integer');\nrequire('../modules/es6.number.max-safe-integer');\nrequire('../modules/es6.number.min-safe-integer');\nrequire('../modules/es6.number.parse-float');\nrequire('../modules/es6.number.parse-int');\nrequire('../modules/es6.math.acosh');\nrequire('../modules/es6.math.asinh');\nrequire('../modules/es6.math.atanh');\nrequire('../modules/es6.math.cbrt');\nrequire('../modules/es6.math.clz32');\nrequire('../modules/es6.math.cosh');\nrequire('../modules/es6.math.expm1');\nrequire('../modules/es6.math.fround');\nrequire('../modules/es6.math.hypot');\nrequire('../modules/es6.math.imul');\nrequire('../modules/es6.math.log10');\nrequire('../modules/es6.math.log1p');\nrequire('../modules/es6.math.log2');\nrequire('../modules/es6.math.sign');\nrequire('../modules/es6.math.sinh');\nrequire('../modules/es6.math.tanh');\nrequire('../modules/es6.math.trunc');\nrequire('../modules/es6.string.from-code-point');\nrequire('../modules/es6.string.raw');\nrequire('../modules/es6.string.trim');\nrequire('../modules/es6.string.iterator');\nrequire('../modules/es6.string.code-point-at');\nrequire('../modules/es6.string.ends-with');\nrequire('../modules/es6.string.includes');\nrequire('../modules/es6.string.repeat');\nrequire('../modules/es6.string.starts-with');\nrequire('../modules/es6.string.anchor');\nrequire('../modules/es6.string.big');\nrequire('../modules/es6.string.blink');\nrequire('../modules/es6.string.bold');\nrequire('../modules/es6.string.fixed');\nrequire('../modules/es6.string.fontcolor');\nrequire('../modules/es6.string.fontsize');\nrequire('../modules/es6.string.italics');\nrequire('../modules/es6.string.link');\nrequire('../modules/es6.string.small');\nrequire('../modules/es6.string.strike');\nrequire('../modules/es6.string.sub');\nrequire('../modules/es6.string.sup');\nrequire('../modules/es6.date.now');\nrequire('../modules/es6.date.to-json');\nrequire('../modules/es6.date.to-iso-string');\nrequire('../modules/es6.date.to-string');\nrequire('../modules/es6.date.to-primitive');\nrequire('../modules/es6.array.is-array');\nrequire('../modules/es6.array.from');\nrequire('../modules/es6.array.of');\nrequire('../modules/es6.array.join');\nrequire('../modules/es6.array.slice');\nrequire('../modules/es6.array.sort');\nrequire('../modules/es6.array.for-each');\nrequire('../modules/es6.array.map');\nrequire('../modules/es6.array.filter');\nrequire('../modules/es6.array.some');\nrequire('../modules/es6.array.every');\nrequire('../modules/es6.array.reduce');\nrequire('../modules/es6.array.reduce-right');\nrequire('../modules/es6.array.index-of');\nrequire('../modules/es6.array.last-index-of');\nrequire('../modules/es6.array.copy-within');\nrequire('../modules/es6.array.fill');\nrequire('../modules/es6.array.find');\nrequire('../modules/es6.array.find-index');\nrequire('../modules/es6.array.species');\nrequire('../modules/es6.array.iterator');\nrequire('../modules/es6.regexp.constructor');\nrequire('../modules/es6.regexp.to-string');\nrequire('../modules/es6.regexp.flags');\nrequire('../modules/es6.regexp.match');\nrequire('../modules/es6.regexp.replace');\nrequire('../modules/es6.regexp.search');\nrequire('../modules/es6.regexp.split');\nrequire('../modules/es6.promise');\nrequire('../modules/es6.map');\nrequire('../modules/es6.set');\nrequire('../modules/es6.weak-map');\nrequire('../modules/es6.weak-set');\nrequire('../modules/es6.typed.array-buffer');\nrequire('../modules/es6.typed.data-view');\nrequire('../modules/es6.typed.int8-array');\nrequire('../modules/es6.typed.uint8-array');\nrequire('../modules/es6.typed.uint8-clamped-array');\nrequire('../modules/es6.typed.int16-array');\nrequire('../modules/es6.typed.uint16-array');\nrequire('../modules/es6.typed.int32-array');\nrequire('../modules/es6.typed.uint32-array');\nrequire('../modules/es6.typed.float32-array');\nrequire('../modules/es6.typed.float64-array');\nrequire('../modules/es6.reflect.apply');\nrequire('../modules/es6.reflect.construct');\nrequire('../modules/es6.reflect.define-property');\nrequire('../modules/es6.reflect.delete-property');\nrequire('../modules/es6.reflect.enumerate');\nrequire('../modules/es6.reflect.get');\nrequire('../modules/es6.reflect.get-own-property-descriptor');\nrequire('../modules/es6.reflect.get-prototype-of');\nrequire('../modules/es6.reflect.has');\nrequire('../modules/es6.reflect.is-extensible');\nrequire('../modules/es6.reflect.own-keys');\nrequire('../modules/es6.reflect.prevent-extensions');\nrequire('../modules/es6.reflect.set');\nrequire('../modules/es6.reflect.set-prototype-of');\nmodule.exports = require('../modules/_core');\n","require('../modules/es7.reflect.define-metadata');\nrequire('../modules/es7.reflect.delete-metadata');\nrequire('../modules/es7.reflect.get-metadata');\nrequire('../modules/es7.reflect.get-metadata-keys');\nrequire('../modules/es7.reflect.get-own-metadata');\nrequire('../modules/es7.reflect.get-own-metadata-keys');\nrequire('../modules/es7.reflect.has-metadata');\nrequire('../modules/es7.reflect.has-own-metadata');\nrequire('../modules/es7.reflect.metadata');\nmodule.exports = require('../modules/_core').Reflect;\n","/**\n* @license\n* Copyright Google Inc. All Rights Reserved.\n*\n* Use of this source code is governed by an MIT-style license that can be\n* found in the LICENSE file at https://angular.io/license\n*/\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(factory());\n}(this, (function () { 'use strict';\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nvar Zone$1 = (function (global) {\n var FUNCTION = 'function';\n var performance = global['performance'];\n function mark(name) {\n performance && performance['mark'] && performance['mark'](name);\n }\n function performanceMeasure(name, label) {\n performance && performance['measure'] && performance['measure'](name, label);\n }\n mark('Zone');\n if (global['Zone']) {\n throw new Error('Zone already loaded.');\n }\n var Zone = /** @class */ (function () {\n function Zone(parent, zoneSpec) {\n this._properties = null;\n this._parent = parent;\n this._name = zoneSpec ? zoneSpec.name || 'unnamed' : '';\n this._properties = zoneSpec && zoneSpec.properties || {};\n this._zoneDelegate =\n new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec);\n }\n Zone.assertZonePatched = function () {\n if (global['Promise'] !== patches['ZoneAwarePromise']) {\n throw new Error('Zone.js has detected that ZoneAwarePromise `(window|global).Promise` ' +\n 'has been overwritten.\\n' +\n 'Most likely cause is that a Promise polyfill has been loaded ' +\n 'after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. ' +\n 'If you must load one, do so before loading zone.js.)');\n }\n };\n Object.defineProperty(Zone, \"root\", {\n get: function () {\n var zone = Zone.current;\n while (zone.parent) {\n zone = zone.parent;\n }\n return zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone, \"current\", {\n get: function () {\n return _currentZoneFrame.zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone, \"currentTask\", {\n get: function () {\n return _currentTask;\n },\n enumerable: true,\n configurable: true\n });\n Zone.__load_patch = function (name, fn) {\n if (patches.hasOwnProperty(name)) {\n throw Error('Already loaded patch: ' + name);\n }\n else if (!global['__Zone_disable_' + name]) {\n var perfName = 'Zone:' + name;\n mark(perfName);\n patches[name] = fn(global, Zone, _api);\n performanceMeasure(perfName, perfName);\n }\n };\n Object.defineProperty(Zone.prototype, \"parent\", {\n get: function () {\n return this._parent;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Zone.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: true,\n configurable: true\n });\n Zone.prototype.get = function (key) {\n var zone = this.getZoneWith(key);\n if (zone)\n return zone._properties[key];\n };\n Zone.prototype.getZoneWith = function (key) {\n var current = this;\n while (current) {\n if (current._properties.hasOwnProperty(key)) {\n return current;\n }\n current = current._parent;\n }\n return null;\n };\n Zone.prototype.fork = function (zoneSpec) {\n if (!zoneSpec)\n throw new Error('ZoneSpec required!');\n return this._zoneDelegate.fork(this, zoneSpec);\n };\n Zone.prototype.wrap = function (callback, source) {\n if (typeof callback !== FUNCTION) {\n throw new Error('Expecting function got: ' + callback);\n }\n var _callback = this._zoneDelegate.intercept(this, callback, source);\n var zone = this;\n return function () {\n return zone.runGuarded(_callback, this, arguments, source);\n };\n };\n Zone.prototype.run = function (callback, applyThis, applyArgs, source) {\n if (applyThis === void 0) { applyThis = undefined; }\n if (applyArgs === void 0) { applyArgs = null; }\n if (source === void 0) { source = null; }\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n };\n Zone.prototype.runGuarded = function (callback, applyThis, applyArgs, source) {\n if (applyThis === void 0) { applyThis = null; }\n if (applyArgs === void 0) { applyArgs = null; }\n if (source === void 0) { source = null; }\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n try {\n return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n _currentZoneFrame = _currentZoneFrame.parent;\n }\n };\n Zone.prototype.runTask = function (task, applyThis, applyArgs) {\n if (task.zone != this) {\n throw new Error('A task can only be run in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n }\n // https://github.com/angular/zone.js/issues/778, sometimes eventTask\n // will run in notScheduled(canceled) state, we should not try to\n // run such kind of task but just return\n // we have to define an variable here, if not\n // typescript compiler will complain below\n var isNotScheduled = task.state === notScheduled;\n if (isNotScheduled && task.type === eventTask) {\n return;\n }\n var reEntryGuard = task.state != running;\n reEntryGuard && task._transitionTo(running, scheduled);\n task.runCount++;\n var previousTask = _currentTask;\n _currentTask = task;\n _currentZoneFrame = { parent: _currentZoneFrame, zone: this };\n try {\n if (task.type == macroTask && task.data && !task.data.isPeriodic) {\n task.cancelFn = null;\n }\n try {\n return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs);\n }\n catch (error) {\n if (this._zoneDelegate.handleError(this, error)) {\n throw error;\n }\n }\n }\n finally {\n // if the task's state is notScheduled or unknown, then it has already been cancelled\n // we should not reset the state to scheduled\n if (task.state !== notScheduled && task.state !== unknown) {\n if (task.type == eventTask || (task.data && task.data.isPeriodic)) {\n reEntryGuard && task._transitionTo(scheduled, running);\n }\n else {\n task.runCount = 0;\n this._updateTaskCount(task, -1);\n reEntryGuard &&\n task._transitionTo(notScheduled, running, notScheduled);\n }\n }\n _currentZoneFrame = _currentZoneFrame.parent;\n _currentTask = previousTask;\n }\n };\n Zone.prototype.scheduleTask = function (task) {\n if (task.zone && task.zone !== this) {\n // check if the task was rescheduled, the newZone\n // should not be the children of the original zone\n var newZone = this;\n while (newZone) {\n if (newZone === task.zone) {\n throw Error(\"can not reschedule task to \" + this\n .name + \" which is descendants of the original zone \" + task.zone.name);\n }\n newZone = newZone.parent;\n }\n }\n task._transitionTo(scheduling, notScheduled);\n var zoneDelegates = [];\n task._zoneDelegates = zoneDelegates;\n task._zone = this;\n try {\n task = this._zoneDelegate.scheduleTask(this, task);\n }\n catch (err) {\n // should set task's state to unknown when scheduleTask throw error\n // because the err may from reschedule, so the fromState maybe notScheduled\n task._transitionTo(unknown, scheduling, notScheduled);\n // TODO: @JiaLiPassion, should we check the result from handleError?\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n if (task._zoneDelegates === zoneDelegates) {\n // we have to check because internally the delegate can reschedule the task.\n this._updateTaskCount(task, 1);\n }\n if (task.state == scheduling) {\n task._transitionTo(scheduled, scheduling);\n }\n return task;\n };\n Zone.prototype.scheduleMicroTask = function (source, callback, data, customSchedule) {\n return this.scheduleTask(new ZoneTask(microTask, source, callback, data, customSchedule, null));\n };\n Zone.prototype.scheduleMacroTask = function (source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(macroTask, source, callback, data, customSchedule, customCancel));\n };\n Zone.prototype.scheduleEventTask = function (source, callback, data, customSchedule, customCancel) {\n return this.scheduleTask(new ZoneTask(eventTask, source, callback, data, customSchedule, customCancel));\n };\n Zone.prototype.cancelTask = function (task) {\n if (task.zone != this)\n throw new Error('A task can only be cancelled in the zone of creation! (Creation: ' +\n (task.zone || NO_ZONE).name + '; Execution: ' + this.name + ')');\n task._transitionTo(canceling, scheduled, running);\n try {\n this._zoneDelegate.cancelTask(this, task);\n }\n catch (err) {\n // if error occurs when cancelTask, transit the state to unknown\n task._transitionTo(unknown, canceling);\n this._zoneDelegate.handleError(this, err);\n throw err;\n }\n this._updateTaskCount(task, -1);\n task._transitionTo(notScheduled, canceling);\n task.runCount = 0;\n return task;\n };\n Zone.prototype._updateTaskCount = function (task, count) {\n var zoneDelegates = task._zoneDelegates;\n if (count == -1) {\n task._zoneDelegates = null;\n }\n for (var i = 0; i < zoneDelegates.length; i++) {\n zoneDelegates[i]._updateTaskCount(task.type, count);\n }\n };\n Zone.__symbol__ = __symbol__;\n return Zone;\n }());\n var DELEGATE_ZS = {\n name: '',\n onHasTask: function (delegate, _, target, hasTaskState) {\n return delegate.hasTask(target, hasTaskState);\n },\n onScheduleTask: function (delegate, _, target, task) {\n return delegate.scheduleTask(target, task);\n },\n onInvokeTask: function (delegate, _, target, task, applyThis, applyArgs) { return delegate.invokeTask(target, task, applyThis, applyArgs); },\n onCancelTask: function (delegate, _, target, task) {\n return delegate.cancelTask(target, task);\n }\n };\n var ZoneDelegate = /** @class */ (function () {\n function ZoneDelegate(zone, parentDelegate, zoneSpec) {\n this._taskCounts = { 'microTask': 0, 'macroTask': 0, 'eventTask': 0 };\n this.zone = zone;\n this._parentDelegate = parentDelegate;\n this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS);\n this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt);\n this._forkCurrZone = zoneSpec && (zoneSpec.onFork ? this.zone : parentDelegate.zone);\n this._interceptZS =\n zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS);\n this._interceptDlgt =\n zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt);\n this._interceptCurrZone =\n zoneSpec && (zoneSpec.onIntercept ? this.zone : parentDelegate.zone);\n this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS);\n this._invokeDlgt =\n zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt);\n this._invokeCurrZone = zoneSpec && (zoneSpec.onInvoke ? this.zone : parentDelegate.zone);\n this._handleErrorZS =\n zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS);\n this._handleErrorDlgt =\n zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt);\n this._handleErrorCurrZone =\n zoneSpec && (zoneSpec.onHandleError ? this.zone : parentDelegate.zone);\n this._scheduleTaskZS =\n zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS);\n this._scheduleTaskDlgt =\n zoneSpec && (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt);\n this._scheduleTaskCurrZone =\n zoneSpec && (zoneSpec.onScheduleTask ? this.zone : parentDelegate.zone);\n this._invokeTaskZS =\n zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS);\n this._invokeTaskDlgt =\n zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt);\n this._invokeTaskCurrZone =\n zoneSpec && (zoneSpec.onInvokeTask ? this.zone : parentDelegate.zone);\n this._cancelTaskZS =\n zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS);\n this._cancelTaskDlgt =\n zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt);\n this._cancelTaskCurrZone =\n zoneSpec && (zoneSpec.onCancelTask ? this.zone : parentDelegate.zone);\n this._hasTaskZS = null;\n this._hasTaskDlgt = null;\n this._hasTaskDlgtOwner = null;\n this._hasTaskCurrZone = null;\n var zoneSpecHasTask = zoneSpec && zoneSpec.onHasTask;\n var parentHasTask = parentDelegate && parentDelegate._hasTaskZS;\n if (zoneSpecHasTask || parentHasTask) {\n // If we need to report hasTask, than this ZS needs to do ref counting on tasks. In such\n // a case all task related interceptors must go through this ZD. We can't short circuit it.\n this._hasTaskZS = zoneSpecHasTask ? zoneSpec : DELEGATE_ZS;\n this._hasTaskDlgt = parentDelegate;\n this._hasTaskDlgtOwner = this;\n this._hasTaskCurrZone = zone;\n if (!zoneSpec.onScheduleTask) {\n this._scheduleTaskZS = DELEGATE_ZS;\n this._scheduleTaskDlgt = parentDelegate;\n this._scheduleTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onInvokeTask) {\n this._invokeTaskZS = DELEGATE_ZS;\n this._invokeTaskDlgt = parentDelegate;\n this._invokeTaskCurrZone = this.zone;\n }\n if (!zoneSpec.onCancelTask) {\n this._cancelTaskZS = DELEGATE_ZS;\n this._cancelTaskDlgt = parentDelegate;\n this._cancelTaskCurrZone = this.zone;\n }\n }\n }\n ZoneDelegate.prototype.fork = function (targetZone, zoneSpec) {\n return this._forkZS ? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec) :\n new Zone(targetZone, zoneSpec);\n };\n ZoneDelegate.prototype.intercept = function (targetZone, callback, source) {\n return this._interceptZS ?\n this._interceptZS.onIntercept(this._interceptDlgt, this._interceptCurrZone, targetZone, callback, source) :\n callback;\n };\n ZoneDelegate.prototype.invoke = function (targetZone, callback, applyThis, applyArgs, source) {\n return this._invokeZS ?\n this._invokeZS.onInvoke(this._invokeDlgt, this._invokeCurrZone, targetZone, callback, applyThis, applyArgs, source) :\n callback.apply(applyThis, applyArgs);\n };\n ZoneDelegate.prototype.handleError = function (targetZone, error) {\n return this._handleErrorZS ?\n this._handleErrorZS.onHandleError(this._handleErrorDlgt, this._handleErrorCurrZone, targetZone, error) :\n true;\n };\n ZoneDelegate.prototype.scheduleTask = function (targetZone, task) {\n var returnTask = task;\n if (this._scheduleTaskZS) {\n if (this._hasTaskZS) {\n returnTask._zoneDelegates.push(this._hasTaskDlgtOwner);\n }\n returnTask = this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this._scheduleTaskCurrZone, targetZone, task);\n if (!returnTask)\n returnTask = task;\n }\n else {\n if (task.scheduleFn) {\n task.scheduleFn(task);\n }\n else if (task.type == microTask) {\n scheduleMicroTask(task);\n }\n else {\n throw new Error('Task is missing scheduleFn.');\n }\n }\n return returnTask;\n };\n ZoneDelegate.prototype.invokeTask = function (targetZone, task, applyThis, applyArgs) {\n return this._invokeTaskZS ?\n this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this._invokeTaskCurrZone, targetZone, task, applyThis, applyArgs) :\n task.callback.apply(applyThis, applyArgs);\n };\n ZoneDelegate.prototype.cancelTask = function (targetZone, task) {\n var value;\n if (this._cancelTaskZS) {\n value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this._cancelTaskCurrZone, targetZone, task);\n }\n else {\n if (!task.cancelFn) {\n throw Error('Task is not cancelable');\n }\n value = task.cancelFn(task);\n }\n return value;\n };\n ZoneDelegate.prototype.hasTask = function (targetZone, isEmpty) {\n // hasTask should not throw error so other ZoneDelegate\n // can still trigger hasTask callback\n try {\n return this._hasTaskZS &&\n this._hasTaskZS.onHasTask(this._hasTaskDlgt, this._hasTaskCurrZone, targetZone, isEmpty);\n }\n catch (err) {\n this.handleError(targetZone, err);\n }\n };\n ZoneDelegate.prototype._updateTaskCount = function (type, count) {\n var counts = this._taskCounts;\n var prev = counts[type];\n var next = counts[type] = prev + count;\n if (next < 0) {\n throw new Error('More tasks executed then were scheduled.');\n }\n if (prev == 0 || next == 0) {\n var isEmpty = {\n microTask: counts['microTask'] > 0,\n macroTask: counts['macroTask'] > 0,\n eventTask: counts['eventTask'] > 0,\n change: type\n };\n this.hasTask(this.zone, isEmpty);\n }\n };\n return ZoneDelegate;\n }());\n var ZoneTask = /** @class */ (function () {\n function ZoneTask(type, source, callback, options, scheduleFn, cancelFn) {\n this._zone = null;\n this.runCount = 0;\n this._zoneDelegates = null;\n this._state = 'notScheduled';\n this.type = type;\n this.source = source;\n this.data = options;\n this.scheduleFn = scheduleFn;\n this.cancelFn = cancelFn;\n this.callback = callback;\n var self = this;\n // TODO: @JiaLiPassion options should have interface\n if (type === eventTask && options && options.useG) {\n this.invoke = ZoneTask.invokeTask;\n }\n else {\n this.invoke = function () {\n return ZoneTask.invokeTask.call(global, self, this, arguments);\n };\n }\n }\n ZoneTask.invokeTask = function (task, target, args) {\n if (!task) {\n task = this;\n }\n _numberOfNestedTaskFrames++;\n try {\n task.runCount++;\n return task.zone.runTask(task, target, args);\n }\n finally {\n if (_numberOfNestedTaskFrames == 1) {\n drainMicroTaskQueue();\n }\n _numberOfNestedTaskFrames--;\n }\n };\n Object.defineProperty(ZoneTask.prototype, \"zone\", {\n get: function () {\n return this._zone;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ZoneTask.prototype, \"state\", {\n get: function () {\n return this._state;\n },\n enumerable: true,\n configurable: true\n });\n ZoneTask.prototype.cancelScheduleRequest = function () {\n this._transitionTo(notScheduled, scheduling);\n };\n ZoneTask.prototype._transitionTo = function (toState, fromState1, fromState2) {\n if (this._state === fromState1 || this._state === fromState2) {\n this._state = toState;\n if (toState == notScheduled) {\n this._zoneDelegates = null;\n }\n }\n else {\n throw new Error(this.type + \" '\" + this.source + \"': can not transition to '\" + toState + \"', expecting state '\" + fromState1 + \"'\" + (fromState2 ?\n ' or \\'' + fromState2 + '\\'' :\n '') + \", was '\" + this._state + \"'.\");\n }\n };\n ZoneTask.prototype.toString = function () {\n if (this.data && typeof this.data.handleId !== 'undefined') {\n return this.data.handleId;\n }\n else {\n return Object.prototype.toString.call(this);\n }\n };\n // add toJSON method to prevent cyclic error when\n // call JSON.stringify(zoneTask)\n ZoneTask.prototype.toJSON = function () {\n return {\n type: this.type,\n state: this.state,\n source: this.source,\n zone: this.zone.name,\n runCount: this.runCount\n };\n };\n return ZoneTask;\n }());\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// MICROTASK QUEUE\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n var symbolSetTimeout = __symbol__('setTimeout');\n var symbolPromise = __symbol__('Promise');\n var symbolThen = __symbol__('then');\n var _microTaskQueue = [];\n var _isDrainingMicrotaskQueue = false;\n var nativeMicroTaskQueuePromise;\n function scheduleMicroTask(task) {\n // if we are not running in any task, and there has not been anything scheduled\n // we must bootstrap the initial task creation by manually scheduling the drain\n if (_numberOfNestedTaskFrames === 0 && _microTaskQueue.length === 0) {\n // We are not running in Task, so we need to kickstart the microtask queue.\n if (!nativeMicroTaskQueuePromise) {\n if (global[symbolPromise]) {\n nativeMicroTaskQueuePromise = global[symbolPromise].resolve(0);\n }\n }\n if (nativeMicroTaskQueuePromise) {\n nativeMicroTaskQueuePromise[symbolThen](drainMicroTaskQueue);\n }\n else {\n global[symbolSetTimeout](drainMicroTaskQueue, 0);\n }\n }\n task && _microTaskQueue.push(task);\n }\n function drainMicroTaskQueue() {\n if (!_isDrainingMicrotaskQueue) {\n _isDrainingMicrotaskQueue = true;\n while (_microTaskQueue.length) {\n var queue = _microTaskQueue;\n _microTaskQueue = [];\n for (var i = 0; i < queue.length; i++) {\n var task = queue[i];\n try {\n task.zone.runTask(task, null, null);\n }\n catch (error) {\n _api.onUnhandledError(error);\n }\n }\n }\n _api.microtaskDrainDone();\n _isDrainingMicrotaskQueue = false;\n }\n }\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n /// BOOTSTRAP\n //////////////////////////////////////////////////////\n //////////////////////////////////////////////////////\n var NO_ZONE = { name: 'NO ZONE' };\n var notScheduled = 'notScheduled', scheduling = 'scheduling', scheduled = 'scheduled', running = 'running', canceling = 'canceling', unknown = 'unknown';\n var microTask = 'microTask', macroTask = 'macroTask', eventTask = 'eventTask';\n var patches = {};\n var _api = {\n symbol: __symbol__,\n currentZoneFrame: function () { return _currentZoneFrame; },\n onUnhandledError: noop,\n microtaskDrainDone: noop,\n scheduleMicroTask: scheduleMicroTask,\n showUncaughtError: function () { return !Zone[__symbol__('ignoreConsoleErrorUncaughtError')]; },\n patchEventTarget: function () { return []; },\n patchOnProperties: noop,\n patchMethod: function () { return noop; },\n bindArguments: function () { return null; },\n setNativePromise: function (NativePromise) {\n // sometimes NativePromise.resolve static function\n // is not ready yet, (such as core-js/es6.promise)\n // so we need to check here.\n if (NativePromise && typeof NativePromise.resolve === FUNCTION) {\n nativeMicroTaskQueuePromise = NativePromise.resolve(0);\n }\n },\n };\n var _currentZoneFrame = { parent: null, zone: new Zone(null, null) };\n var _currentTask = null;\n var _numberOfNestedTaskFrames = 0;\n function noop() { }\n function __symbol__(name) {\n return '__zone_symbol__' + name;\n }\n performanceMeasure('Zone', 'Zone');\n return global['Zone'] = Zone;\n})(typeof window !== 'undefined' && window || typeof self !== 'undefined' && self || global);\n\nZone.__load_patch('ZoneAwarePromise', function (global, Zone, api) {\n var ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n var ObjectDefineProperty = Object.defineProperty;\n function readableObjectToString(obj) {\n if (obj && obj.toString === Object.prototype.toString) {\n var className = obj.constructor && obj.constructor.name;\n return (className ? className : '') + ': ' + JSON.stringify(obj);\n }\n return obj ? obj.toString() : Object.prototype.toString.call(obj);\n }\n var __symbol__ = api.symbol;\n var _uncaughtPromiseErrors = [];\n var symbolPromise = __symbol__('Promise');\n var symbolThen = __symbol__('then');\n var creationTrace = '__creationTrace__';\n api.onUnhandledError = function (e) {\n if (api.showUncaughtError()) {\n var rejection = e && e.rejection;\n if (rejection) {\n console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection, rejection instanceof Error ? rejection.stack : undefined);\n }\n else {\n console.error(e);\n }\n }\n };\n api.microtaskDrainDone = function () {\n while (_uncaughtPromiseErrors.length) {\n var _loop_1 = function () {\n var uncaughtPromiseError = _uncaughtPromiseErrors.shift();\n try {\n uncaughtPromiseError.zone.runGuarded(function () {\n throw uncaughtPromiseError;\n });\n }\n catch (error) {\n handleUnhandledRejection(error);\n }\n };\n while (_uncaughtPromiseErrors.length) {\n _loop_1();\n }\n }\n };\n var UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL = __symbol__('unhandledPromiseRejectionHandler');\n function handleUnhandledRejection(e) {\n api.onUnhandledError(e);\n try {\n var handler = Zone[UNHANDLED_PROMISE_REJECTION_HANDLER_SYMBOL];\n if (handler && typeof handler === 'function') {\n handler.call(this, e);\n }\n }\n catch (err) {\n }\n }\n function isThenable(value) {\n return value && value.then;\n }\n function forwardResolution(value) {\n return value;\n }\n function forwardRejection(rejection) {\n return ZoneAwarePromise.reject(rejection);\n }\n var symbolState = __symbol__('state');\n var symbolValue = __symbol__('value');\n var symbolFinally = __symbol__('finally');\n var symbolParentPromiseValue = __symbol__('parentPromiseValue');\n var symbolParentPromiseState = __symbol__('parentPromiseState');\n var source = 'Promise.then';\n var UNRESOLVED = null;\n var RESOLVED = true;\n var REJECTED = false;\n var REJECTED_NO_CATCH = 0;\n function makeResolver(promise, state) {\n return function (v) {\n try {\n resolvePromise(promise, state, v);\n }\n catch (err) {\n resolvePromise(promise, false, err);\n }\n // Do not return value or you will break the Promise spec.\n };\n }\n var once = function () {\n var wasCalled = false;\n return function wrapper(wrappedFunction) {\n return function () {\n if (wasCalled) {\n return;\n }\n wasCalled = true;\n wrappedFunction.apply(null, arguments);\n };\n };\n };\n var TYPE_ERROR = 'Promise resolved with itself';\n var CURRENT_TASK_TRACE_SYMBOL = __symbol__('currentTaskTrace');\n // Promise Resolution\n function resolvePromise(promise, state, value) {\n var onceWrapper = once();\n if (promise === value) {\n throw new TypeError(TYPE_ERROR);\n }\n if (promise[symbolState] === UNRESOLVED) {\n // should only get value.then once based on promise spec.\n var then = null;\n try {\n if (typeof value === 'object' || typeof value === 'function') {\n then = value && value.then;\n }\n }\n catch (err) {\n onceWrapper(function () {\n resolvePromise(promise, false, err);\n })();\n return promise;\n }\n // if (value instanceof ZoneAwarePromise) {\n if (state !== REJECTED && value instanceof ZoneAwarePromise &&\n value.hasOwnProperty(symbolState) && value.hasOwnProperty(symbolValue) &&\n value[symbolState] !== UNRESOLVED) {\n clearRejectedNoCatch(value);\n resolvePromise(promise, value[symbolState], value[symbolValue]);\n }\n else if (state !== REJECTED && typeof then === 'function') {\n try {\n then.call(value, onceWrapper(makeResolver(promise, state)), onceWrapper(makeResolver(promise, false)));\n }\n catch (err) {\n onceWrapper(function () {\n resolvePromise(promise, false, err);\n })();\n }\n }\n else {\n promise[symbolState] = state;\n var queue = promise[symbolValue];\n promise[symbolValue] = value;\n if (promise[symbolFinally] === symbolFinally) {\n // the promise is generated by Promise.prototype.finally \n if (state === RESOLVED) {\n // the state is resolved, should ignore the value\n // and use parent promise value\n promise[symbolState] = promise[symbolParentPromiseState];\n promise[symbolValue] = promise[symbolParentPromiseValue];\n }\n }\n // record task information in value when error occurs, so we can\n // do some additional work such as render longStackTrace\n if (state === REJECTED && value instanceof Error) {\n // check if longStackTraceZone is here\n var trace = Zone.currentTask && Zone.currentTask.data &&\n Zone.currentTask.data[creationTrace];\n if (trace) {\n // only keep the long stack trace into error when in longStackTraceZone\n ObjectDefineProperty(value, CURRENT_TASK_TRACE_SYMBOL, { configurable: true, enumerable: false, writable: true, value: trace });\n }\n }\n for (var i = 0; i < queue.length;) {\n scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]);\n }\n if (queue.length == 0 && state == REJECTED) {\n promise[symbolState] = REJECTED_NO_CATCH;\n try {\n // try to print more readable error log\n throw new Error('Uncaught (in promise): ' + readableObjectToString(value) +\n (value && value.stack ? '\\n' + value.stack : ''));\n }\n catch (err) {\n var error_1 = err;\n error_1.rejection = value;\n error_1.promise = promise;\n error_1.zone = Zone.current;\n error_1.task = Zone.currentTask;\n _uncaughtPromiseErrors.push(error_1);\n api.scheduleMicroTask(); // to make sure that it is running\n }\n }\n }\n }\n // Resolving an already resolved promise is a noop.\n return promise;\n }\n var REJECTION_HANDLED_HANDLER = __symbol__('rejectionHandledHandler');\n function clearRejectedNoCatch(promise) {\n if (promise[symbolState] === REJECTED_NO_CATCH) {\n // if the promise is rejected no catch status\n // and queue.length > 0, means there is a error handler\n // here to handle the rejected promise, we should trigger\n // windows.rejectionhandled eventHandler or nodejs rejectionHandled\n // eventHandler\n try {\n var handler = Zone[REJECTION_HANDLED_HANDLER];\n if (handler && typeof handler === 'function') {\n handler.call(this, { rejection: promise[symbolValue], promise: promise });\n }\n }\n catch (err) {\n }\n promise[symbolState] = REJECTED;\n for (var i = 0; i < _uncaughtPromiseErrors.length; i++) {\n if (promise === _uncaughtPromiseErrors[i].promise) {\n _uncaughtPromiseErrors.splice(i, 1);\n }\n }\n }\n }\n function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) {\n clearRejectedNoCatch(promise);\n var promiseState = promise[symbolState];\n var delegate = promiseState ?\n (typeof onFulfilled === 'function') ? onFulfilled : forwardResolution :\n (typeof onRejected === 'function') ? onRejected : forwardRejection;\n zone.scheduleMicroTask(source, function () {\n try {\n var parentPromiseValue = promise[symbolValue];\n var isFinallyPromise = chainPromise && symbolFinally === chainPromise[symbolFinally];\n if (isFinallyPromise) {\n // if the promise is generated from finally call, keep parent promise's state and value\n chainPromise[symbolParentPromiseValue] = parentPromiseValue;\n chainPromise[symbolParentPromiseState] = promiseState;\n }\n // should not pass value to finally callback\n var value = zone.run(delegate, undefined, isFinallyPromise && delegate !== forwardRejection && delegate !== forwardResolution ? [] : [parentPromiseValue]);\n resolvePromise(chainPromise, true, value);\n }\n catch (error) {\n // if error occurs, should always return this error\n resolvePromise(chainPromise, false, error);\n }\n }, chainPromise);\n }\n var ZONE_AWARE_PROMISE_TO_STRING = 'function ZoneAwarePromise() { [native code] }';\n var ZoneAwarePromise = /** @class */ (function () {\n function ZoneAwarePromise(executor) {\n var promise = this;\n if (!(promise instanceof ZoneAwarePromise)) {\n throw new Error('Must be an instanceof Promise.');\n }\n promise[symbolState] = UNRESOLVED;\n promise[symbolValue] = []; // queue;\n try {\n executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED));\n }\n catch (error) {\n resolvePromise(promise, false, error);\n }\n }\n ZoneAwarePromise.toString = function () {\n return ZONE_AWARE_PROMISE_TO_STRING;\n };\n ZoneAwarePromise.resolve = function (value) {\n return resolvePromise(new this(null), RESOLVED, value);\n };\n ZoneAwarePromise.reject = function (error) {\n return resolvePromise(new this(null), REJECTED, error);\n };\n ZoneAwarePromise.race = function (values) {\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n function onResolve(value) {\n promise && (promise = null || resolve(value));\n }\n function onReject(error) {\n promise && (promise = null || reject(error));\n }\n for (var _i = 0, values_1 = values; _i < values_1.length; _i++) {\n var value = values_1[_i];\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then(onResolve, onReject);\n }\n return promise;\n };\n ZoneAwarePromise.all = function (values) {\n var resolve;\n var reject;\n var promise = new this(function (res, rej) {\n resolve = res;\n reject = rej;\n });\n var count = 0;\n var resolvedValues = [];\n for (var _i = 0, values_2 = values; _i < values_2.length; _i++) {\n var value = values_2[_i];\n if (!isThenable(value)) {\n value = this.resolve(value);\n }\n value.then((function (index) { return function (value) {\n resolvedValues[index] = value;\n count--;\n if (!count) {\n resolve(resolvedValues);\n }\n }; })(count), reject);\n count++;\n }\n if (!count)\n resolve(resolvedValues);\n return promise;\n };\n ZoneAwarePromise.prototype.then = function (onFulfilled, onRejected) {\n var chainPromise = new this.constructor(null);\n var zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected);\n }\n return chainPromise;\n };\n ZoneAwarePromise.prototype.catch = function (onRejected) {\n return this.then(null, onRejected);\n };\n ZoneAwarePromise.prototype.finally = function (onFinally) {\n var chainPromise = new this.constructor(null);\n chainPromise[symbolFinally] = symbolFinally;\n var zone = Zone.current;\n if (this[symbolState] == UNRESOLVED) {\n this[symbolValue].push(zone, chainPromise, onFinally, onFinally);\n }\n else {\n scheduleResolveOrReject(this, zone, chainPromise, onFinally, onFinally);\n }\n return chainPromise;\n };\n return ZoneAwarePromise;\n }());\n // Protect against aggressive optimizers dropping seemingly unused properties.\n // E.g. Closure Compiler in advanced mode.\n ZoneAwarePromise['resolve'] = ZoneAwarePromise.resolve;\n ZoneAwarePromise['reject'] = ZoneAwarePromise.reject;\n ZoneAwarePromise['race'] = ZoneAwarePromise.race;\n ZoneAwarePromise['all'] = ZoneAwarePromise.all;\n var NativePromise = global[symbolPromise] = global['Promise'];\n var ZONE_AWARE_PROMISE = Zone.__symbol__('ZoneAwarePromise');\n var desc = ObjectGetOwnPropertyDescriptor(global, 'Promise');\n if (!desc || desc.configurable) {\n desc && delete desc.writable;\n desc && delete desc.value;\n if (!desc) {\n desc = { configurable: true, enumerable: true };\n }\n desc.get = function () {\n // if we already set ZoneAwarePromise, use patched one\n // otherwise return native one.\n return global[ZONE_AWARE_PROMISE] ? global[ZONE_AWARE_PROMISE] : global[symbolPromise];\n };\n desc.set = function (NewNativePromise) {\n if (NewNativePromise === ZoneAwarePromise) {\n // if the NewNativePromise is ZoneAwarePromise\n // save to global\n global[ZONE_AWARE_PROMISE] = NewNativePromise;\n }\n else {\n // if the NewNativePromise is not ZoneAwarePromise\n // for example: after load zone.js, some library just\n // set es6-promise to global, if we set it to global\n // directly, assertZonePatched will fail and angular\n // will not loaded, so we just set the NewNativePromise\n // to global[symbolPromise], so the result is just like\n // we load ES6 Promise before zone.js\n global[symbolPromise] = NewNativePromise;\n if (!NewNativePromise.prototype[symbolThen]) {\n patchThen(NewNativePromise);\n }\n api.setNativePromise(NewNativePromise);\n }\n };\n ObjectDefineProperty(global, 'Promise', desc);\n }\n global['Promise'] = ZoneAwarePromise;\n var symbolThenPatched = __symbol__('thenPatched');\n function patchThen(Ctor) {\n var proto = Ctor.prototype;\n var prop = ObjectGetOwnPropertyDescriptor(proto, 'then');\n if (prop && (prop.writable === false || !prop.configurable)) {\n // check Ctor.prototype.then propertyDescriptor is writable or not\n // in meteor env, writable is false, we should ignore such case\n return;\n }\n var originalThen = proto.then;\n // Keep a reference to the original method.\n proto[symbolThen] = originalThen;\n Ctor.prototype.then = function (onResolve, onReject) {\n var _this = this;\n var wrapped = new ZoneAwarePromise(function (resolve, reject) {\n originalThen.call(_this, resolve, reject);\n });\n return wrapped.then(onResolve, onReject);\n };\n Ctor[symbolThenPatched] = true;\n }\n function zoneify(fn) {\n return function () {\n var resultPromise = fn.apply(this, arguments);\n if (resultPromise instanceof ZoneAwarePromise) {\n return resultPromise;\n }\n var ctor = resultPromise.constructor;\n if (!ctor[symbolThenPatched]) {\n patchThen(ctor);\n }\n return resultPromise;\n };\n }\n if (NativePromise) {\n patchThen(NativePromise);\n var fetch_1 = global['fetch'];\n if (typeof fetch_1 == 'function') {\n global['fetch'] = zoneify(fetch_1);\n }\n }\n // This is not part of public API, but it is useful for tests, so we expose it.\n Promise[Zone.__symbol__('uncaughtPromiseErrors')] = _uncaughtPromiseErrors;\n return ZoneAwarePromise;\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Suppress closure compiler errors about unknown 'Zone' variable\n * @fileoverview\n * @suppress {undefinedVars,globalThis,missingRequire}\n */\n// issue #989, to reduce bundle size, use short name\n/** Object.getOwnPropertyDescriptor */\nvar ObjectGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n/** Object.defineProperty */\nvar ObjectDefineProperty = Object.defineProperty;\n/** Object.getPrototypeOf */\nvar ObjectGetPrototypeOf = Object.getPrototypeOf;\n/** Object.create */\nvar ObjectCreate = Object.create;\n/** Array.prototype.slice */\nvar ArraySlice = Array.prototype.slice;\n/** addEventListener string const */\nvar ADD_EVENT_LISTENER_STR = 'addEventListener';\n/** removeEventListener string const */\nvar REMOVE_EVENT_LISTENER_STR = 'removeEventListener';\n/** zoneSymbol addEventListener */\nvar ZONE_SYMBOL_ADD_EVENT_LISTENER = Zone.__symbol__(ADD_EVENT_LISTENER_STR);\n/** zoneSymbol removeEventListener */\nvar ZONE_SYMBOL_REMOVE_EVENT_LISTENER = Zone.__symbol__(REMOVE_EVENT_LISTENER_STR);\n/** true string const */\nvar TRUE_STR = 'true';\n/** false string const */\nvar FALSE_STR = 'false';\n/** __zone_symbol__ string const */\nvar ZONE_SYMBOL_PREFIX = '__zone_symbol__';\nfunction wrapWithCurrentZone(callback, source) {\n return Zone.current.wrap(callback, source);\n}\nfunction scheduleMacroTaskWithCurrentZone(source, callback, data, customSchedule, customCancel) {\n return Zone.current.scheduleMacroTask(source, callback, data, customSchedule, customCancel);\n}\nvar zoneSymbol = Zone.__symbol__;\nvar isWindowExists = typeof window !== 'undefined';\nvar internalWindow = isWindowExists ? window : undefined;\nvar _global = isWindowExists && internalWindow || typeof self === 'object' && self || global;\nvar REMOVE_ATTRIBUTE = 'removeAttribute';\nvar NULL_ON_PROP_VALUE = [null];\nfunction bindArguments(args, source) {\n for (var i = args.length - 1; i >= 0; i--) {\n if (typeof args[i] === 'function') {\n args[i] = wrapWithCurrentZone(args[i], source + '_' + i);\n }\n }\n return args;\n}\nfunction patchPrototype(prototype, fnNames) {\n var source = prototype.constructor['name'];\n var _loop_1 = function (i) {\n var name_1 = fnNames[i];\n var delegate = prototype[name_1];\n if (delegate) {\n var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, name_1);\n if (!isPropertyWritable(prototypeDesc)) {\n return \"continue\";\n }\n prototype[name_1] = (function (delegate) {\n var patched = function () {\n return delegate.apply(this, bindArguments(arguments, source + '.' + name_1));\n };\n attachOriginToPatched(patched, delegate);\n return patched;\n })(delegate);\n }\n };\n for (var i = 0; i < fnNames.length; i++) {\n _loop_1(i);\n }\n}\nfunction isPropertyWritable(propertyDesc) {\n if (!propertyDesc) {\n return true;\n }\n if (propertyDesc.writable === false) {\n return false;\n }\n return !(typeof propertyDesc.get === 'function' && typeof propertyDesc.set === 'undefined');\n}\nvar isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope);\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nvar isNode = (!('nw' in _global) && typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]');\nvar isBrowser = !isNode && !isWebWorker && !!(isWindowExists && internalWindow['HTMLElement']);\n// we are in electron of nw, so we are both browser and nodejs\n// Make sure to access `process` through `_global` so that WebPack does not accidentally browserify\n// this code.\nvar isMix = typeof _global.process !== 'undefined' &&\n {}.toString.call(_global.process) === '[object process]' && !isWebWorker &&\n !!(isWindowExists && internalWindow['HTMLElement']);\nvar zoneSymbolEventNames = {};\nvar wrapFn = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n var eventNameSymbol = zoneSymbolEventNames[event.type];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[event.type] = zoneSymbol('ON_PROPERTY' + event.type);\n }\n var target = this || event.target || _global;\n var listener = target[eventNameSymbol];\n var result = listener && listener.apply(this, arguments);\n if (result != undefined && !result) {\n event.preventDefault();\n }\n return result;\n};\nfunction patchProperty(obj, prop, prototype) {\n var desc = ObjectGetOwnPropertyDescriptor(obj, prop);\n if (!desc && prototype) {\n // when patch window object, use prototype to check prop exist or not\n var prototypeDesc = ObjectGetOwnPropertyDescriptor(prototype, prop);\n if (prototypeDesc) {\n desc = { enumerable: true, configurable: true };\n }\n }\n // if the descriptor not exists or is not configurable\n // just return\n if (!desc || !desc.configurable) {\n return;\n }\n // A property descriptor cannot have getter/setter and be writable\n // deleting the writable and value properties avoids this error:\n //\n // TypeError: property descriptors must not specify a value or be writable when a\n // getter or setter has been specified\n delete desc.writable;\n delete desc.value;\n var originalDescGet = desc.get;\n var originalDescSet = desc.set;\n // substr(2) cuz 'onclick' -> 'click', etc\n var eventName = prop.substr(2);\n var eventNameSymbol = zoneSymbolEventNames[eventName];\n if (!eventNameSymbol) {\n eventNameSymbol = zoneSymbolEventNames[eventName] = zoneSymbol('ON_PROPERTY' + eventName);\n }\n desc.set = function (newValue) {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n var target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return;\n }\n var previousValue = target[eventNameSymbol];\n if (previousValue) {\n target.removeEventListener(eventName, wrapFn);\n }\n // issue #978, when onload handler was added before loading zone.js\n // we should remove it with originalDescSet\n if (originalDescSet) {\n originalDescSet.apply(target, NULL_ON_PROP_VALUE);\n }\n if (typeof newValue === 'function') {\n target[eventNameSymbol] = newValue;\n target.addEventListener(eventName, wrapFn, false);\n }\n else {\n target[eventNameSymbol] = null;\n }\n };\n // The getter would return undefined for unassigned properties but the default value of an\n // unassigned property is null\n desc.get = function () {\n // in some of windows's onproperty callback, this is undefined\n // so we need to check it\n var target = this;\n if (!target && obj === _global) {\n target = _global;\n }\n if (!target) {\n return null;\n }\n var listener = target[eventNameSymbol];\n if (listener) {\n return listener;\n }\n else if (originalDescGet) {\n // result will be null when use inline event attribute,\n // such as \n // because the onclick function is internal raw uncompiled handler\n // the onclick will be evaluated when first time event was triggered or\n // the property is accessed, https://github.com/angular/zone.js/issues/525\n // so we should use original native get to retrieve the handler\n var value = originalDescGet && originalDescGet.call(this);\n if (value) {\n desc.set.call(this, value);\n if (typeof target[REMOVE_ATTRIBUTE] === 'function') {\n target.removeAttribute(prop);\n }\n return value;\n }\n }\n return null;\n };\n ObjectDefineProperty(obj, prop, desc);\n}\nfunction patchOnProperties(obj, properties, prototype) {\n if (properties) {\n for (var i = 0; i < properties.length; i++) {\n patchProperty(obj, 'on' + properties[i], prototype);\n }\n }\n else {\n var onProperties = [];\n for (var prop in obj) {\n if (prop.substr(0, 2) == 'on') {\n onProperties.push(prop);\n }\n }\n for (var j = 0; j < onProperties.length; j++) {\n patchProperty(obj, onProperties[j], prototype);\n }\n }\n}\nvar originalInstanceKey = zoneSymbol('originalInstance');\n// wrap some native API on `window`\nfunction patchClass(className) {\n var OriginalClass = _global[className];\n if (!OriginalClass)\n return;\n // keep original class in global\n _global[zoneSymbol(className)] = OriginalClass;\n _global[className] = function () {\n var a = bindArguments(arguments, className);\n switch (a.length) {\n case 0:\n this[originalInstanceKey] = new OriginalClass();\n break;\n case 1:\n this[originalInstanceKey] = new OriginalClass(a[0]);\n break;\n case 2:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1]);\n break;\n case 3:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2]);\n break;\n case 4:\n this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]);\n break;\n default:\n throw new Error('Arg list too long.');\n }\n };\n // attach original delegate to patched function\n attachOriginToPatched(_global[className], OriginalClass);\n var instance = new OriginalClass(function () { });\n var prop;\n for (prop in instance) {\n // https://bugs.webkit.org/show_bug.cgi?id=44721\n if (className === 'XMLHttpRequest' && prop === 'responseBlob')\n continue;\n (function (prop) {\n if (typeof instance[prop] === 'function') {\n _global[className].prototype[prop] = function () {\n return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);\n };\n }\n else {\n ObjectDefineProperty(_global[className].prototype, prop, {\n set: function (fn) {\n if (typeof fn === 'function') {\n this[originalInstanceKey][prop] = wrapWithCurrentZone(fn, className + '.' + prop);\n // keep callback in wrapped function so we can\n // use it in Function.prototype.toString to return\n // the native one.\n attachOriginToPatched(this[originalInstanceKey][prop], fn);\n }\n else {\n this[originalInstanceKey][prop] = fn;\n }\n },\n get: function () {\n return this[originalInstanceKey][prop];\n }\n });\n }\n }(prop));\n }\n for (prop in OriginalClass) {\n if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) {\n _global[className][prop] = OriginalClass[prop];\n }\n }\n}\nfunction patchMethod(target, name, patchFn) {\n var proto = target;\n while (proto && !proto.hasOwnProperty(name)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && target[name]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = target;\n }\n var delegateName = zoneSymbol(name);\n var delegate;\n if (proto && !(delegate = proto[delegateName])) {\n delegate = proto[delegateName] = proto[name];\n // check whether proto[name] is writable\n // some property is readonly in safari, such as HtmlCanvasElement.prototype.toBlob\n var desc = proto && ObjectGetOwnPropertyDescriptor(proto, name);\n if (isPropertyWritable(desc)) {\n var patchDelegate_1 = patchFn(delegate, delegateName, name);\n proto[name] = function () {\n return patchDelegate_1(this, arguments);\n };\n attachOriginToPatched(proto[name], delegate);\n }\n }\n return delegate;\n}\n// TODO: @JiaLiPassion, support cancel task later if necessary\nfunction patchMacroTask(obj, funcName, metaCreator) {\n var setNative = null;\n function scheduleTask(task) {\n var data = task.data;\n data.args[data.cbIdx] = function () {\n task.invoke.apply(this, arguments);\n };\n setNative.apply(data.target, data.args);\n return task;\n }\n setNative = patchMethod(obj, funcName, function (delegate) { return function (self, args) {\n var meta = metaCreator(self, args);\n if (meta.cbIdx >= 0 && typeof args[meta.cbIdx] === 'function') {\n return scheduleMacroTaskWithCurrentZone(meta.name, args[meta.cbIdx], meta, scheduleTask, null);\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(self, args);\n }\n }; });\n}\n\nfunction attachOriginToPatched(patched, original) {\n patched[zoneSymbol('OriginalDelegate')] = original;\n}\nvar isDetectedIEOrEdge = false;\nvar ieOrEdge = false;\nfunction isIEOrEdge() {\n if (isDetectedIEOrEdge) {\n return ieOrEdge;\n }\n isDetectedIEOrEdge = true;\n try {\n var ua = internalWindow.navigator.userAgent;\n if (ua.indexOf('MSIE ') !== -1 || ua.indexOf('Trident/') !== -1 || ua.indexOf('Edge/') !== -1) {\n ieOrEdge = true;\n }\n return ieOrEdge;\n }\n catch (error) {\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// override Function.prototype.toString to make zone.js patched function\n// look like native function\nZone.__load_patch('toString', function (global) {\n // patch Func.prototype.toString to let them look like native\n var originalFunctionToString = Function.prototype.toString;\n var ORIGINAL_DELEGATE_SYMBOL = zoneSymbol('OriginalDelegate');\n var PROMISE_SYMBOL = zoneSymbol('Promise');\n var ERROR_SYMBOL = zoneSymbol('Error');\n var newFunctionToString = function toString() {\n if (typeof this === 'function') {\n var originalDelegate = this[ORIGINAL_DELEGATE_SYMBOL];\n if (originalDelegate) {\n if (typeof originalDelegate === 'function') {\n return originalFunctionToString.apply(this[ORIGINAL_DELEGATE_SYMBOL], arguments);\n }\n else {\n return Object.prototype.toString.call(originalDelegate);\n }\n }\n if (this === Promise) {\n var nativePromise = global[PROMISE_SYMBOL];\n if (nativePromise) {\n return originalFunctionToString.apply(nativePromise, arguments);\n }\n }\n if (this === Error) {\n var nativeError = global[ERROR_SYMBOL];\n if (nativeError) {\n return originalFunctionToString.apply(nativeError, arguments);\n }\n }\n }\n return originalFunctionToString.apply(this, arguments);\n };\n newFunctionToString[ORIGINAL_DELEGATE_SYMBOL] = originalFunctionToString;\n Function.prototype.toString = newFunctionToString;\n // patch Object.prototype.toString to let them look like native\n var originalObjectToString = Object.prototype.toString;\n var PROMISE_OBJECT_TO_STRING = '[object Promise]';\n Object.prototype.toString = function () {\n if (this instanceof Promise) {\n return PROMISE_OBJECT_TO_STRING;\n }\n return originalObjectToString.apply(this, arguments);\n };\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\n// an identifier to tell ZoneTask do not create a new invoke closure\nvar OPTIMIZED_ZONE_EVENT_TASK_DATA = {\n useG: true\n};\nvar zoneSymbolEventNames$1 = {};\nvar globalSources = {};\nvar EVENT_NAME_SYMBOL_REGX = /^__zone_symbol__(\\w+)(true|false)$/;\nvar IMMEDIATE_PROPAGATION_SYMBOL = ('__zone_symbol__propagationStopped');\nfunction patchEventTarget(_global, apis, patchOptions) {\n var ADD_EVENT_LISTENER = (patchOptions && patchOptions.add) || ADD_EVENT_LISTENER_STR;\n var REMOVE_EVENT_LISTENER = (patchOptions && patchOptions.rm) || REMOVE_EVENT_LISTENER_STR;\n var LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.listeners) || 'eventListeners';\n var REMOVE_ALL_LISTENERS_EVENT_LISTENER = (patchOptions && patchOptions.rmAll) || 'removeAllListeners';\n var zoneSymbolAddEventListener = zoneSymbol(ADD_EVENT_LISTENER);\n var ADD_EVENT_LISTENER_SOURCE = '.' + ADD_EVENT_LISTENER + ':';\n var PREPEND_EVENT_LISTENER = 'prependListener';\n var PREPEND_EVENT_LISTENER_SOURCE = '.' + PREPEND_EVENT_LISTENER + ':';\n var invokeTask = function (task, target, event) {\n // for better performance, check isRemoved which is set\n // by removeEventListener\n if (task.isRemoved) {\n return;\n }\n var delegate = task.callback;\n if (typeof delegate === 'object' && delegate.handleEvent) {\n // create the bind version of handleEvent when invoke\n task.callback = function (event) { return delegate.handleEvent(event); };\n task.originalDelegate = delegate;\n }\n // invoke static task.invoke\n task.invoke(task, target, [event]);\n var options = task.options;\n if (options && typeof options === 'object' && options.once) {\n // if options.once is true, after invoke once remove listener here\n // only browser need to do this, nodejs eventEmitter will cal removeListener\n // inside EventEmitter.once\n var delegate_1 = task.originalDelegate ? task.originalDelegate : task.callback;\n target[REMOVE_EVENT_LISTENER].call(target, event.type, delegate_1, options);\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = false\n var globalZoneAwareCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n var target = this || event.target || _global;\n var tasks = target[zoneSymbolEventNames$1[event.type][FALSE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n var copyTasks = tasks.slice();\n for (var i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n // global shared zoneAwareCallback to handle all event callback with capture = true\n var globalZoneAwareCaptureCallback = function (event) {\n // https://github.com/angular/zone.js/issues/911, in IE, sometimes\n // event will be undefined, so we need to use window.event\n event = event || _global.event;\n if (!event) {\n return;\n }\n // event.target is needed for Samsung TV and SourceBuffer\n // || global is needed https://github.com/angular/zone.js/issues/190\n var target = this || event.target || _global;\n var tasks = target[zoneSymbolEventNames$1[event.type][TRUE_STR]];\n if (tasks) {\n // invoke all tasks which attached to current target with given event.type and capture = false\n // for performance concern, if task.length === 1, just invoke\n if (tasks.length === 1) {\n invokeTask(tasks[0], target, event);\n }\n else {\n // https://github.com/angular/zone.js/issues/836\n // copy the tasks array before invoke, to avoid\n // the callback will remove itself or other listener\n var copyTasks = tasks.slice();\n for (var i = 0; i < copyTasks.length; i++) {\n if (event && event[IMMEDIATE_PROPAGATION_SYMBOL] === true) {\n break;\n }\n invokeTask(copyTasks[i], target, event);\n }\n }\n }\n };\n function patchEventTargetMethods(obj, patchOptions) {\n if (!obj) {\n return false;\n }\n var useGlobalCallback = true;\n if (patchOptions && patchOptions.useG !== undefined) {\n useGlobalCallback = patchOptions.useG;\n }\n var validateHandler = patchOptions && patchOptions.vh;\n var checkDuplicate = true;\n if (patchOptions && patchOptions.chkDup !== undefined) {\n checkDuplicate = patchOptions.chkDup;\n }\n var returnTarget = false;\n if (patchOptions && patchOptions.rt !== undefined) {\n returnTarget = patchOptions.rt;\n }\n var proto = obj;\n while (proto && !proto.hasOwnProperty(ADD_EVENT_LISTENER)) {\n proto = ObjectGetPrototypeOf(proto);\n }\n if (!proto && obj[ADD_EVENT_LISTENER]) {\n // somehow we did not find it, but we can see it. This happens on IE for Window properties.\n proto = obj;\n }\n if (!proto) {\n return false;\n }\n if (proto[zoneSymbolAddEventListener]) {\n return false;\n }\n // a shared global taskData to pass data for scheduleEventTask\n // so we do not need to create a new object just for pass some data\n var taskData = {};\n var nativeAddEventListener = proto[zoneSymbolAddEventListener] = proto[ADD_EVENT_LISTENER];\n var nativeRemoveEventListener = proto[zoneSymbol(REMOVE_EVENT_LISTENER)] =\n proto[REMOVE_EVENT_LISTENER];\n var nativeListeners = proto[zoneSymbol(LISTENERS_EVENT_LISTENER)] =\n proto[LISTENERS_EVENT_LISTENER];\n var nativeRemoveAllListeners = proto[zoneSymbol(REMOVE_ALL_LISTENERS_EVENT_LISTENER)] =\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER];\n var nativePrependEventListener;\n if (patchOptions && patchOptions.prepend) {\n nativePrependEventListener = proto[zoneSymbol(patchOptions.prepend)] =\n proto[patchOptions.prepend];\n }\n var customScheduleGlobal = function () {\n // if there is already a task for the eventName + capture,\n // just return, because we use the shared globalZoneAwareCallback here.\n if (taskData.isExisting) {\n return;\n }\n return nativeAddEventListener.call(taskData.target, taskData.eventName, taskData.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, taskData.options);\n };\n var customCancelGlobal = function (task) {\n // if task is not marked as isRemoved, this call is directly\n // from Zone.prototype.cancelTask, we should remove the task\n // from tasksList of target first\n if (!task.isRemoved) {\n var symbolEventNames = zoneSymbolEventNames$1[task.eventName];\n var symbolEventName = void 0;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[task.capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = symbolEventName && task.target[symbolEventName];\n if (existingTasks) {\n for (var i = 0; i < existingTasks.length; i++) {\n var existingTask = existingTasks[i];\n if (existingTask === task) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n task.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n task.allRemoved = true;\n task.target[symbolEventName] = null;\n }\n break;\n }\n }\n }\n }\n // if all tasks for the eventName + capture have gone,\n // we will really remove the global event callback,\n // if not, return\n if (!task.allRemoved) {\n return;\n }\n return nativeRemoveEventListener.call(task.target, task.eventName, task.capture ? globalZoneAwareCaptureCallback : globalZoneAwareCallback, task.options);\n };\n var customScheduleNonGlobal = function (task) {\n return nativeAddEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n var customSchedulePrepend = function (task) {\n return nativePrependEventListener.call(taskData.target, taskData.eventName, task.invoke, taskData.options);\n };\n var customCancelNonGlobal = function (task) {\n return nativeRemoveEventListener.call(task.target, task.eventName, task.invoke, task.options);\n };\n var customSchedule = useGlobalCallback ? customScheduleGlobal : customScheduleNonGlobal;\n var customCancel = useGlobalCallback ? customCancelGlobal : customCancelNonGlobal;\n var compareTaskCallbackVsDelegate = function (task, delegate) {\n var typeOfDelegate = typeof delegate;\n return (typeOfDelegate === 'function' && task.callback === delegate) ||\n (typeOfDelegate === 'object' && task.originalDelegate === delegate);\n };\n var compare = (patchOptions && patchOptions.diff) ? patchOptions.diff : compareTaskCallbackVsDelegate;\n var blackListedEvents = Zone[Zone.__symbol__('BLACK_LISTED_EVENTS')];\n var makeAddListener = function (nativeListener, addSource, customScheduleFn, customCancelFn, returnTarget, prepend) {\n if (returnTarget === void 0) { returnTarget = false; }\n if (prepend === void 0) { prepend = false; }\n return function () {\n var target = this || _global;\n var delegate = arguments[1];\n if (!delegate) {\n return nativeListener.apply(this, arguments);\n }\n // don't create the bind delegate function for handleEvent\n // case here to improve addEventListener performance\n // we will create the bind delegate when invoke\n var isHandleEvent = false;\n if (typeof delegate !== 'function') {\n if (!delegate.handleEvent) {\n return nativeListener.apply(this, arguments);\n }\n isHandleEvent = true;\n }\n if (validateHandler && !validateHandler(nativeListener, delegate, target, arguments)) {\n return;\n }\n var eventName = arguments[0];\n var options = arguments[2];\n if (blackListedEvents) {\n // check black list\n for (var i = 0; i < blackListedEvents.length; i++) {\n if (eventName === blackListedEvents[i]) {\n return nativeListener.apply(this, arguments);\n }\n }\n }\n var capture;\n var once = false;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n once = options ? !!options.once : false;\n }\n var zone = Zone.current;\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n var symbolEventName;\n if (!symbolEventNames) {\n // the code is duplicate, but I just want to get some better performance\n var falseEventName = eventName + FALSE_STR;\n var trueEventName = eventName + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames$1[eventName] = {};\n zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture;\n symbolEventName = capture ? symbolCapture : symbol;\n }\n else {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = target[symbolEventName];\n var isExisting = false;\n if (existingTasks) {\n // already have task registered\n isExisting = true;\n if (checkDuplicate) {\n for (var i = 0; i < existingTasks.length; i++) {\n if (compare(existingTasks[i], delegate)) {\n // same callback, same capture, same event name, just return\n return;\n }\n }\n }\n }\n else {\n existingTasks = target[symbolEventName] = [];\n }\n var source;\n var constructorName = target.constructor['name'];\n var targetSource = globalSources[constructorName];\n if (targetSource) {\n source = targetSource[eventName];\n }\n if (!source) {\n source = constructorName + addSource + eventName;\n }\n // do not create a new object as task.data to pass those things\n // just use the global shared one\n taskData.options = options;\n if (once) {\n // if addEventListener with once options, we don't pass it to\n // native addEventListener, instead we keep the once setting\n // and handle ourselves.\n taskData.options.once = false;\n }\n taskData.target = target;\n taskData.capture = capture;\n taskData.eventName = eventName;\n taskData.isExisting = isExisting;\n var data = useGlobalCallback ? OPTIMIZED_ZONE_EVENT_TASK_DATA : null;\n // keep taskData into data to allow onScheduleEventTask to access the task information\n if (data) {\n data.taskData = taskData;\n }\n var task = zone.scheduleEventTask(source, delegate, data, customScheduleFn, customCancelFn);\n // should clear taskData.target to avoid memory leak\n // issue, https://github.com/angular/angular/issues/20442\n taskData.target = null;\n // need to clear up taskData because it is a global object\n if (data) {\n data.taskData = null;\n }\n // have to save those information to task in case\n // application may call task.zone.cancelTask() directly\n if (once) {\n options.once = true;\n }\n task.options = options;\n task.target = target;\n task.capture = capture;\n task.eventName = eventName;\n if (isHandleEvent) {\n // save original delegate for compare to check duplicate\n task.originalDelegate = delegate;\n }\n if (!prepend) {\n existingTasks.push(task);\n }\n else {\n existingTasks.unshift(task);\n }\n if (returnTarget) {\n return target;\n }\n };\n };\n proto[ADD_EVENT_LISTENER] = makeAddListener(nativeAddEventListener, ADD_EVENT_LISTENER_SOURCE, customSchedule, customCancel, returnTarget);\n if (nativePrependEventListener) {\n proto[PREPEND_EVENT_LISTENER] = makeAddListener(nativePrependEventListener, PREPEND_EVENT_LISTENER_SOURCE, customSchedulePrepend, customCancel, returnTarget, true);\n }\n proto[REMOVE_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n var options = arguments[2];\n var capture;\n if (options === undefined) {\n capture = false;\n }\n else if (options === true) {\n capture = true;\n }\n else if (options === false) {\n capture = false;\n }\n else {\n capture = options ? !!options.capture : false;\n }\n var delegate = arguments[1];\n if (!delegate) {\n return nativeRemoveEventListener.apply(this, arguments);\n }\n if (validateHandler &&\n !validateHandler(nativeRemoveEventListener, delegate, target, arguments)) {\n return;\n }\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n var symbolEventName;\n if (symbolEventNames) {\n symbolEventName = symbolEventNames[capture ? TRUE_STR : FALSE_STR];\n }\n var existingTasks = symbolEventName && target[symbolEventName];\n if (existingTasks) {\n for (var i = 0; i < existingTasks.length; i++) {\n var existingTask = existingTasks[i];\n if (compare(existingTask, delegate)) {\n existingTasks.splice(i, 1);\n // set isRemoved to data for faster invokeTask check\n existingTask.isRemoved = true;\n if (existingTasks.length === 0) {\n // all tasks for the eventName + capture have gone,\n // remove globalZoneAwareCallback and remove the task cache from target\n existingTask.allRemoved = true;\n target[symbolEventName] = null;\n }\n existingTask.zone.cancelTask(existingTask);\n if (returnTarget) {\n return target;\n }\n return;\n }\n }\n }\n // issue 930, didn't find the event name or callback\n // from zone kept existingTasks, the callback maybe\n // added outside of zone, we need to call native removeEventListener\n // to try to remove it.\n return nativeRemoveEventListener.apply(this, arguments);\n };\n proto[LISTENERS_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n var listeners = [];\n var tasks = findEventTasks(target, eventName);\n for (var i = 0; i < tasks.length; i++) {\n var task = tasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n listeners.push(delegate);\n }\n return listeners;\n };\n proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER] = function () {\n var target = this || _global;\n var eventName = arguments[0];\n if (!eventName) {\n var keys = Object.keys(target);\n for (var i = 0; i < keys.length; i++) {\n var prop = keys[i];\n var match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n var evtName = match && match[1];\n // in nodejs EventEmitter, removeListener event is\n // used for monitoring the removeListener call,\n // so just keep removeListener eventListener until\n // all other eventListeners are removed\n if (evtName && evtName !== 'removeListener') {\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, evtName);\n }\n }\n // remove removeListener listener finally\n this[REMOVE_ALL_LISTENERS_EVENT_LISTENER].call(this, 'removeListener');\n }\n else {\n var symbolEventNames = zoneSymbolEventNames$1[eventName];\n if (symbolEventNames) {\n var symbolEventName = symbolEventNames[FALSE_STR];\n var symbolCaptureEventName = symbolEventNames[TRUE_STR];\n var tasks = target[symbolEventName];\n var captureTasks = target[symbolCaptureEventName];\n if (tasks) {\n var removeTasks = tasks.slice();\n for (var i = 0; i < removeTasks.length; i++) {\n var task = removeTasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n if (captureTasks) {\n var removeTasks = captureTasks.slice();\n for (var i = 0; i < removeTasks.length; i++) {\n var task = removeTasks[i];\n var delegate = task.originalDelegate ? task.originalDelegate : task.callback;\n this[REMOVE_EVENT_LISTENER].call(this, eventName, delegate, task.options);\n }\n }\n }\n }\n if (returnTarget) {\n return this;\n }\n };\n // for native toString patch\n attachOriginToPatched(proto[ADD_EVENT_LISTENER], nativeAddEventListener);\n attachOriginToPatched(proto[REMOVE_EVENT_LISTENER], nativeRemoveEventListener);\n if (nativeRemoveAllListeners) {\n attachOriginToPatched(proto[REMOVE_ALL_LISTENERS_EVENT_LISTENER], nativeRemoveAllListeners);\n }\n if (nativeListeners) {\n attachOriginToPatched(proto[LISTENERS_EVENT_LISTENER], nativeListeners);\n }\n return true;\n }\n var results = [];\n for (var i = 0; i < apis.length; i++) {\n results[i] = patchEventTargetMethods(apis[i], patchOptions);\n }\n return results;\n}\nfunction findEventTasks(target, eventName) {\n var foundTasks = [];\n for (var prop in target) {\n var match = EVENT_NAME_SYMBOL_REGX.exec(prop);\n var evtName = match && match[1];\n if (evtName && (!eventName || evtName === eventName)) {\n var tasks = target[prop];\n if (tasks) {\n for (var i = 0; i < tasks.length; i++) {\n foundTasks.push(tasks[i]);\n }\n }\n }\n }\n return foundTasks;\n}\nfunction patchEventPrototype(global, api) {\n var Event = global['Event'];\n if (Event && Event.prototype) {\n api.patchMethod(Event.prototype, 'stopImmediatePropagation', function (delegate) { return function (self, args) {\n self[IMMEDIATE_PROPAGATION_SYMBOL] = true;\n // we need to call the native stopImmediatePropagation\n // in case in some hybrid application, some part of\n // application will be controlled by zone, some are not\n delegate && delegate.apply(self, args);\n }; });\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nvar taskSymbol = zoneSymbol('zoneTask');\nfunction patchTimer(window, setName, cancelName, nameSuffix) {\n var setNative = null;\n var clearNative = null;\n setName += nameSuffix;\n cancelName += nameSuffix;\n var tasksByHandleId = {};\n function scheduleTask(task) {\n var data = task.data;\n function timer() {\n try {\n task.invoke.apply(this, arguments);\n }\n finally {\n // issue-934, task will be cancelled\n // even it is a periodic task such as\n // setInterval\n if (!(task.data && task.data.isPeriodic)) {\n if (typeof data.handleId === 'number') {\n // in non-nodejs env, we remove timerId\n // from local cache\n delete tasksByHandleId[data.handleId];\n }\n else if (data.handleId) {\n // Node returns complex objects as handleIds\n // we remove task reference from timer object\n data.handleId[taskSymbol] = null;\n }\n }\n }\n }\n data.args[0] = timer;\n data.handleId = setNative.apply(window, data.args);\n return task;\n }\n function clearTask(task) {\n return clearNative(task.data.handleId);\n }\n setNative =\n patchMethod(window, setName, function (delegate) { return function (self, args) {\n if (typeof args[0] === 'function') {\n var options = {\n handleId: null,\n isPeriodic: nameSuffix === 'Interval',\n delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 : null,\n args: args\n };\n var task = scheduleMacroTaskWithCurrentZone(setName, args[0], options, scheduleTask, clearTask);\n if (!task) {\n return task;\n }\n // Node.js must additionally support the ref and unref functions.\n var handle = task.data.handleId;\n if (typeof handle === 'number') {\n // for non nodejs env, we save handleId: task\n // mapping in local cache for clearTimeout\n tasksByHandleId[handle] = task;\n }\n else if (handle) {\n // for nodejs env, we save task\n // reference in timerId Object for clearTimeout\n handle[taskSymbol] = task;\n }\n // check whether handle is null, because some polyfill or browser\n // may return undefined from setTimeout/setInterval/setImmediate/requestAnimationFrame\n if (handle && handle.ref && handle.unref && typeof handle.ref === 'function' &&\n typeof handle.unref === 'function') {\n task.ref = handle.ref.bind(handle);\n task.unref = handle.unref.bind(handle);\n }\n if (typeof handle === 'number' || handle) {\n return handle;\n }\n return task;\n }\n else {\n // cause an error by calling it directly.\n return delegate.apply(window, args);\n }\n }; });\n clearNative =\n patchMethod(window, cancelName, function (delegate) { return function (self, args) {\n var id = args[0];\n var task;\n if (typeof id === 'number') {\n // non nodejs env.\n task = tasksByHandleId[id];\n }\n else {\n // nodejs env.\n task = id && id[taskSymbol];\n // other environments.\n if (!task) {\n task = id;\n }\n }\n if (task && typeof task.type === 'string') {\n if (task.state !== 'notScheduled' &&\n (task.cancelFn && task.data.isPeriodic || task.runCount === 0)) {\n if (typeof id === 'number') {\n delete tasksByHandleId[id];\n }\n else if (id) {\n id[taskSymbol] = null;\n }\n // Do not cancel already canceled functions\n task.zone.cancelTask(task);\n }\n }\n else {\n // cause an error by calling it directly.\n delegate.apply(window, args);\n }\n }; });\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/*\n * This is necessary for Chrome and Chrome mobile, to enable\n * things like redefining `createdCallback` on an element.\n */\nvar _defineProperty = Object[zoneSymbol('defineProperty')] = Object.defineProperty;\nvar _getOwnPropertyDescriptor = Object[zoneSymbol('getOwnPropertyDescriptor')] =\n Object.getOwnPropertyDescriptor;\nvar _create = Object.create;\nvar unconfigurablesKey = zoneSymbol('unconfigurables');\nfunction propertyPatch() {\n Object.defineProperty = function (obj, prop, desc) {\n if (isUnconfigurable(obj, prop)) {\n throw new TypeError('Cannot assign to read only property \\'' + prop + '\\' of ' + obj);\n }\n var originalConfigurableFlag = desc.configurable;\n if (prop !== 'prototype') {\n desc = rewriteDescriptor(obj, prop, desc);\n }\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n };\n Object.defineProperties = function (obj, props) {\n Object.keys(props).forEach(function (prop) {\n Object.defineProperty(obj, prop, props[prop]);\n });\n return obj;\n };\n Object.create = function (obj, proto) {\n if (typeof proto === 'object' && !Object.isFrozen(proto)) {\n Object.keys(proto).forEach(function (prop) {\n proto[prop] = rewriteDescriptor(obj, prop, proto[prop]);\n });\n }\n return _create(obj, proto);\n };\n Object.getOwnPropertyDescriptor = function (obj, prop) {\n var desc = _getOwnPropertyDescriptor(obj, prop);\n if (isUnconfigurable(obj, prop)) {\n desc.configurable = false;\n }\n return desc;\n };\n}\nfunction _redefineProperty(obj, prop, desc) {\n var originalConfigurableFlag = desc.configurable;\n desc = rewriteDescriptor(obj, prop, desc);\n return _tryDefineProperty(obj, prop, desc, originalConfigurableFlag);\n}\nfunction isUnconfigurable(obj, prop) {\n return obj && obj[unconfigurablesKey] && obj[unconfigurablesKey][prop];\n}\nfunction rewriteDescriptor(obj, prop, desc) {\n // issue-927, if the desc is frozen, don't try to change the desc\n if (!Object.isFrozen(desc)) {\n desc.configurable = true;\n }\n if (!desc.configurable) {\n // issue-927, if the obj is frozen, don't try to set the desc to obj\n if (!obj[unconfigurablesKey] && !Object.isFrozen(obj)) {\n _defineProperty(obj, unconfigurablesKey, { writable: true, value: {} });\n }\n if (obj[unconfigurablesKey]) {\n obj[unconfigurablesKey][prop] = true;\n }\n }\n return desc;\n}\nfunction _tryDefineProperty(obj, prop, desc, originalConfigurableFlag) {\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n if (desc.configurable) {\n // In case of errors, when the configurable flag was likely set by rewriteDescriptor(), let's\n // retry with the original flag value\n if (typeof originalConfigurableFlag == 'undefined') {\n delete desc.configurable;\n }\n else {\n desc.configurable = originalConfigurableFlag;\n }\n try {\n return _defineProperty(obj, prop, desc);\n }\n catch (error) {\n var descJson = null;\n try {\n descJson = JSON.stringify(desc);\n }\n catch (error) {\n descJson = desc.toString();\n }\n console.log(\"Attempting to configure '\" + prop + \"' with descriptor '\" + descJson + \"' on object '\" + obj + \"' and got error, giving up: \" + error);\n }\n }\n else {\n throw error;\n }\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// we have to patch the instance since the proto is non-configurable\nfunction apply(api, _global) {\n var WS = _global.WebSocket;\n // On Safari window.EventTarget doesn't exist so need to patch WS add/removeEventListener\n // On older Chrome, no need since EventTarget was already patched\n if (!_global.EventTarget) {\n patchEventTarget(_global, [WS.prototype]);\n }\n _global.WebSocket = function (x, y) {\n var socket = arguments.length > 1 ? new WS(x, y) : new WS(x);\n var proxySocket;\n var proxySocketProto;\n // Safari 7.0 has non-configurable own 'onmessage' and friends properties on the socket instance\n var onmessageDesc = ObjectGetOwnPropertyDescriptor(socket, 'onmessage');\n if (onmessageDesc && onmessageDesc.configurable === false) {\n proxySocket = ObjectCreate(socket);\n // socket have own property descriptor 'onopen', 'onmessage', 'onclose', 'onerror'\n // but proxySocket not, so we will keep socket as prototype and pass it to\n // patchOnProperties method\n proxySocketProto = socket;\n [ADD_EVENT_LISTENER_STR, REMOVE_EVENT_LISTENER_STR, 'send', 'close'].forEach(function (propName) {\n proxySocket[propName] = function () {\n var args = ArraySlice.call(arguments);\n if (propName === ADD_EVENT_LISTENER_STR || propName === REMOVE_EVENT_LISTENER_STR) {\n var eventName = args.length > 0 ? args[0] : undefined;\n if (eventName) {\n var propertySymbol = Zone.__symbol__('ON_PROPERTY' + eventName);\n socket[propertySymbol] = proxySocket[propertySymbol];\n }\n }\n return socket[propName].apply(socket, args);\n };\n });\n }\n else {\n // we can patch the real socket\n proxySocket = socket;\n }\n patchOnProperties(proxySocket, ['close', 'error', 'message', 'open'], proxySocketProto);\n return proxySocket;\n };\n var globalWebSocket = _global['WebSocket'];\n for (var prop in WS) {\n globalWebSocket[prop] = WS[prop];\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {globalThis}\n */\nvar globalEventHandlersEventNames = [\n 'abort',\n 'animationcancel',\n 'animationend',\n 'animationiteration',\n 'auxclick',\n 'beforeinput',\n 'blur',\n 'cancel',\n 'canplay',\n 'canplaythrough',\n 'change',\n 'compositionstart',\n 'compositionupdate',\n 'compositionend',\n 'cuechange',\n 'click',\n 'close',\n 'contextmenu',\n 'curechange',\n 'dblclick',\n 'drag',\n 'dragend',\n 'dragenter',\n 'dragexit',\n 'dragleave',\n 'dragover',\n 'drop',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'focus',\n 'focusin',\n 'focusout',\n 'gotpointercapture',\n 'input',\n 'invalid',\n 'keydown',\n 'keypress',\n 'keyup',\n 'load',\n 'loadstart',\n 'loadeddata',\n 'loadedmetadata',\n 'lostpointercapture',\n 'mousedown',\n 'mouseenter',\n 'mouseleave',\n 'mousemove',\n 'mouseout',\n 'mouseover',\n 'mouseup',\n 'mousewheel',\n 'orientationchange',\n 'pause',\n 'play',\n 'playing',\n 'pointercancel',\n 'pointerdown',\n 'pointerenter',\n 'pointerleave',\n 'pointerlockchange',\n 'mozpointerlockchange',\n 'webkitpointerlockerchange',\n 'pointerlockerror',\n 'mozpointerlockerror',\n 'webkitpointerlockerror',\n 'pointermove',\n 'pointout',\n 'pointerover',\n 'pointerup',\n 'progress',\n 'ratechange',\n 'reset',\n 'resize',\n 'scroll',\n 'seeked',\n 'seeking',\n 'select',\n 'selectionchange',\n 'selectstart',\n 'show',\n 'sort',\n 'stalled',\n 'submit',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'touchcancel',\n 'touchmove',\n 'touchstart',\n 'touchend',\n 'transitioncancel',\n 'transitionend',\n 'waiting',\n 'wheel'\n];\nvar documentEventNames = [\n 'afterscriptexecute', 'beforescriptexecute', 'DOMContentLoaded', 'fullscreenchange',\n 'mozfullscreenchange', 'webkitfullscreenchange', 'msfullscreenchange', 'fullscreenerror',\n 'mozfullscreenerror', 'webkitfullscreenerror', 'msfullscreenerror', 'readystatechange',\n 'visibilitychange'\n];\nvar windowEventNames = [\n 'absolutedeviceorientation',\n 'afterinput',\n 'afterprint',\n 'appinstalled',\n 'beforeinstallprompt',\n 'beforeprint',\n 'beforeunload',\n 'devicelight',\n 'devicemotion',\n 'deviceorientation',\n 'deviceorientationabsolute',\n 'deviceproximity',\n 'hashchange',\n 'languagechange',\n 'message',\n 'mozbeforepaint',\n 'offline',\n 'online',\n 'paint',\n 'pageshow',\n 'pagehide',\n 'popstate',\n 'rejectionhandled',\n 'storage',\n 'unhandledrejection',\n 'unload',\n 'userproximity',\n 'vrdisplyconnected',\n 'vrdisplaydisconnected',\n 'vrdisplaypresentchange'\n];\nvar htmlElementEventNames = [\n 'beforecopy', 'beforecut', 'beforepaste', 'copy', 'cut', 'paste', 'dragstart', 'loadend',\n 'animationstart', 'search', 'transitionrun', 'transitionstart', 'webkitanimationend',\n 'webkitanimationiteration', 'webkitanimationstart', 'webkittransitionend'\n];\nvar mediaElementEventNames = ['encrypted', 'waitingforkey', 'msneedkey', 'mozinterruptbegin', 'mozinterruptend'];\nvar ieElementEventNames = [\n 'activate',\n 'afterupdate',\n 'ariarequest',\n 'beforeactivate',\n 'beforedeactivate',\n 'beforeeditfocus',\n 'beforeupdate',\n 'cellchange',\n 'controlselect',\n 'dataavailable',\n 'datasetchanged',\n 'datasetcomplete',\n 'errorupdate',\n 'filterchange',\n 'layoutcomplete',\n 'losecapture',\n 'move',\n 'moveend',\n 'movestart',\n 'propertychange',\n 'resizeend',\n 'resizestart',\n 'rowenter',\n 'rowexit',\n 'rowsdelete',\n 'rowsinserted',\n 'command',\n 'compassneedscalibration',\n 'deactivate',\n 'help',\n 'mscontentzoom',\n 'msmanipulationstatechanged',\n 'msgesturechange',\n 'msgesturedoubletap',\n 'msgestureend',\n 'msgesturehold',\n 'msgesturestart',\n 'msgesturetap',\n 'msgotpointercapture',\n 'msinertiastart',\n 'mslostpointercapture',\n 'mspointercancel',\n 'mspointerdown',\n 'mspointerenter',\n 'mspointerhover',\n 'mspointerleave',\n 'mspointermove',\n 'mspointerout',\n 'mspointerover',\n 'mspointerup',\n 'pointerout',\n 'mssitemodejumplistitemremoved',\n 'msthumbnailclick',\n 'stop',\n 'storagecommit'\n];\nvar webglEventNames = ['webglcontextrestored', 'webglcontextlost', 'webglcontextcreationerror'];\nvar formEventNames = ['autocomplete', 'autocompleteerror'];\nvar detailEventNames = ['toggle'];\nvar frameEventNames = ['load'];\nvar frameSetEventNames = ['blur', 'error', 'focus', 'load', 'resize', 'scroll', 'messageerror'];\nvar marqueeEventNames = ['bounce', 'finish', 'start'];\nvar XMLHttpRequestEventNames = [\n 'loadstart', 'progress', 'abort', 'error', 'load', 'progress', 'timeout', 'loadend',\n 'readystatechange'\n];\nvar IDBIndexEventNames = ['upgradeneeded', 'complete', 'abort', 'success', 'error', 'blocked', 'versionchange', 'close'];\nvar websocketEventNames = ['close', 'error', 'open', 'message'];\nvar workerEventNames = ['error', 'message'];\nvar eventNames = globalEventHandlersEventNames.concat(webglEventNames, formEventNames, detailEventNames, documentEventNames, windowEventNames, htmlElementEventNames, ieElementEventNames);\nfunction filterProperties(target, onProperties, ignoreProperties) {\n if (!ignoreProperties) {\n return onProperties;\n }\n var tip = ignoreProperties.filter(function (ip) { return ip.target === target; });\n if (!tip || tip.length === 0) {\n return onProperties;\n }\n var targetIgnoreProperties = tip[0].ignoreProperties;\n return onProperties.filter(function (op) { return targetIgnoreProperties.indexOf(op) === -1; });\n}\nfunction patchFilteredProperties(target, onProperties, ignoreProperties, prototype) {\n // check whether target is available, sometimes target will be undefined\n // because different browser or some 3rd party plugin.\n if (!target) {\n return;\n }\n var filteredProperties = filterProperties(target, onProperties, ignoreProperties);\n patchOnProperties(target, filteredProperties, prototype);\n}\nfunction propertyDescriptorPatch(api, _global) {\n if (isNode && !isMix) {\n return;\n }\n var supportsWebSocket = typeof WebSocket !== 'undefined';\n if (canPatchViaPropertyDescriptor()) {\n var ignoreProperties = _global.__Zone_ignore_on_properties;\n // for browsers that we can patch the descriptor: Chrome & Firefox\n if (isBrowser) {\n var internalWindow = window;\n // in IE/Edge, onProp not exist in window object, but in WindowPrototype\n // so we need to pass WindowPrototype to check onProp exist or not\n patchFilteredProperties(internalWindow, eventNames.concat(['messageerror']), ignoreProperties, ObjectGetPrototypeOf(internalWindow));\n patchFilteredProperties(Document.prototype, eventNames, ignoreProperties);\n if (typeof internalWindow['SVGElement'] !== 'undefined') {\n patchFilteredProperties(internalWindow['SVGElement'].prototype, eventNames, ignoreProperties);\n }\n patchFilteredProperties(Element.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLElement.prototype, eventNames, ignoreProperties);\n patchFilteredProperties(HTMLMediaElement.prototype, mediaElementEventNames, ignoreProperties);\n patchFilteredProperties(HTMLFrameSetElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLBodyElement.prototype, windowEventNames.concat(frameSetEventNames), ignoreProperties);\n patchFilteredProperties(HTMLFrameElement.prototype, frameEventNames, ignoreProperties);\n patchFilteredProperties(HTMLIFrameElement.prototype, frameEventNames, ignoreProperties);\n var HTMLMarqueeElement_1 = internalWindow['HTMLMarqueeElement'];\n if (HTMLMarqueeElement_1) {\n patchFilteredProperties(HTMLMarqueeElement_1.prototype, marqueeEventNames, ignoreProperties);\n }\n var Worker_1 = internalWindow['Worker'];\n if (Worker_1) {\n patchFilteredProperties(Worker_1.prototype, workerEventNames, ignoreProperties);\n }\n }\n patchFilteredProperties(XMLHttpRequest.prototype, XMLHttpRequestEventNames, ignoreProperties);\n var XMLHttpRequestEventTarget = _global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n patchFilteredProperties(XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype, XMLHttpRequestEventNames, ignoreProperties);\n }\n if (typeof IDBIndex !== 'undefined') {\n patchFilteredProperties(IDBIndex.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBOpenDBRequest.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBDatabase.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBTransaction.prototype, IDBIndexEventNames, ignoreProperties);\n patchFilteredProperties(IDBCursor.prototype, IDBIndexEventNames, ignoreProperties);\n }\n if (supportsWebSocket) {\n patchFilteredProperties(WebSocket.prototype, websocketEventNames, ignoreProperties);\n }\n }\n else {\n // Safari, Android browsers (Jelly Bean)\n patchViaCapturingAllTheEvents();\n patchClass('XMLHttpRequest');\n if (supportsWebSocket) {\n apply(api, _global);\n }\n }\n}\nfunction canPatchViaPropertyDescriptor() {\n if ((isBrowser || isMix) && !ObjectGetOwnPropertyDescriptor(HTMLElement.prototype, 'onclick') &&\n typeof Element !== 'undefined') {\n // WebKit https://bugs.webkit.org/show_bug.cgi?id=134364\n // IDL interface attributes are not configurable\n var desc = ObjectGetOwnPropertyDescriptor(Element.prototype, 'onclick');\n if (desc && !desc.configurable)\n return false;\n }\n var ON_READY_STATE_CHANGE = 'onreadystatechange';\n var XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n var xhrDesc = ObjectGetOwnPropertyDescriptor(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE);\n // add enumerable and configurable here because in opera\n // by default XMLHttpRequest.prototype.onreadystatechange is undefined\n // without adding enumerable and configurable will cause onreadystatechange\n // non-configurable\n // and if XMLHttpRequest.prototype.onreadystatechange is undefined,\n // we should set a real desc instead a fake one\n if (xhrDesc) {\n ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, {\n enumerable: true,\n configurable: true,\n get: function () {\n return true;\n }\n });\n var req = new XMLHttpRequest();\n var result = !!req.onreadystatechange;\n // restore original desc\n ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, xhrDesc || {});\n return result;\n }\n else {\n var SYMBOL_FAKE_ONREADYSTATECHANGE_1 = zoneSymbol('fake');\n ObjectDefineProperty(XMLHttpRequestPrototype, ON_READY_STATE_CHANGE, {\n enumerable: true,\n configurable: true,\n get: function () {\n return this[SYMBOL_FAKE_ONREADYSTATECHANGE_1];\n },\n set: function (value) {\n this[SYMBOL_FAKE_ONREADYSTATECHANGE_1] = value;\n }\n });\n var req = new XMLHttpRequest();\n var detectFunc = function () { };\n req.onreadystatechange = detectFunc;\n var result = req[SYMBOL_FAKE_ONREADYSTATECHANGE_1] === detectFunc;\n req.onreadystatechange = null;\n return result;\n }\n}\nvar unboundKey = zoneSymbol('unbound');\n// Whenever any eventListener fires, we check the eventListener target and all parents\n// for `onwhatever` properties and replace them with zone-bound functions\n// - Chrome (for now)\nfunction patchViaCapturingAllTheEvents() {\n var _loop_1 = function (i) {\n var property = eventNames[i];\n var onproperty = 'on' + property;\n self.addEventListener(property, function (event) {\n var elt = event.target, bound, source;\n if (elt) {\n source = elt.constructor['name'] + '.' + onproperty;\n }\n else {\n source = 'unknown.' + onproperty;\n }\n while (elt) {\n if (elt[onproperty] && !elt[onproperty][unboundKey]) {\n bound = wrapWithCurrentZone(elt[onproperty], source);\n bound[unboundKey] = elt[onproperty];\n elt[onproperty] = bound;\n }\n elt = elt.parentElement;\n }\n }, true);\n };\n for (var i = 0; i < eventNames.length; i++) {\n _loop_1(i);\n }\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction eventTargetPatch(_global, api) {\n var WTF_ISSUE_555 = 'Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video';\n var NO_EVENT_TARGET = 'ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket'\n .split(',');\n var EVENT_TARGET = 'EventTarget';\n var apis = [];\n var isWtf = _global['wtf'];\n var WTF_ISSUE_555_ARRAY = WTF_ISSUE_555.split(',');\n if (isWtf) {\n // Workaround for: https://github.com/google/tracing-framework/issues/555\n apis = WTF_ISSUE_555_ARRAY.map(function (v) { return 'HTML' + v + 'Element'; }).concat(NO_EVENT_TARGET);\n }\n else if (_global[EVENT_TARGET]) {\n apis.push(EVENT_TARGET);\n }\n else {\n // Note: EventTarget is not available in all browsers,\n // if it's not available, we instead patch the APIs in the IDL that inherit from EventTarget\n apis = NO_EVENT_TARGET;\n }\n var isDisableIECheck = _global['__Zone_disable_IE_check'] || false;\n var isEnableCrossContextCheck = _global['__Zone_enable_cross_context_check'] || false;\n var ieOrEdge = isIEOrEdge();\n var ADD_EVENT_LISTENER_SOURCE = '.addEventListener:';\n var FUNCTION_WRAPPER = '[object FunctionWrapper]';\n var BROWSER_TOOLS = 'function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }';\n // predefine all __zone_symbol__ + eventName + true/false string\n for (var i = 0; i < eventNames.length; i++) {\n var eventName = eventNames[i];\n var falseEventName = eventName + FALSE_STR;\n var trueEventName = eventName + TRUE_STR;\n var symbol = ZONE_SYMBOL_PREFIX + falseEventName;\n var symbolCapture = ZONE_SYMBOL_PREFIX + trueEventName;\n zoneSymbolEventNames$1[eventName] = {};\n zoneSymbolEventNames$1[eventName][FALSE_STR] = symbol;\n zoneSymbolEventNames$1[eventName][TRUE_STR] = symbolCapture;\n }\n // predefine all task.source string\n for (var i = 0; i < WTF_ISSUE_555.length; i++) {\n var target = WTF_ISSUE_555_ARRAY[i];\n var targets = globalSources[target] = {};\n for (var j = 0; j < eventNames.length; j++) {\n var eventName = eventNames[j];\n targets[eventName] = target + ADD_EVENT_LISTENER_SOURCE + eventName;\n }\n }\n var checkIEAndCrossContext = function (nativeDelegate, delegate, target, args) {\n if (!isDisableIECheck && ieOrEdge) {\n if (isEnableCrossContextCheck) {\n try {\n var testString = delegate.toString();\n if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n catch (error) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n else {\n var testString = delegate.toString();\n if ((testString === FUNCTION_WRAPPER || testString == BROWSER_TOOLS)) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n }\n else if (isEnableCrossContextCheck) {\n try {\n delegate.toString();\n }\n catch (error) {\n nativeDelegate.apply(target, args);\n return false;\n }\n }\n return true;\n };\n var apiTypes = [];\n for (var i = 0; i < apis.length; i++) {\n var type = _global[apis[i]];\n apiTypes.push(type && type.prototype);\n }\n // vh is validateHandler to check event handler\n // is valid or not(for security check)\n patchEventTarget(_global, apiTypes, { vh: checkIEAndCrossContext });\n api.patchEventTarget = patchEventTarget;\n return true;\n}\nfunction patchEvent(global, api) {\n patchEventPrototype(global, api);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nfunction registerElementPatch(_global) {\n if ((!isBrowser && !isMix) || !('registerElement' in _global.document)) {\n return;\n }\n var _registerElement = document.registerElement;\n var callbacks = ['createdCallback', 'attachedCallback', 'detachedCallback', 'attributeChangedCallback'];\n document.registerElement = function (name, opts) {\n if (opts && opts.prototype) {\n callbacks.forEach(function (callback) {\n var source = 'Document.registerElement::' + callback;\n var prototype = opts.prototype;\n if (prototype.hasOwnProperty(callback)) {\n var descriptor = ObjectGetOwnPropertyDescriptor(prototype, callback);\n if (descriptor && descriptor.value) {\n descriptor.value = wrapWithCurrentZone(descriptor.value, source);\n _redefineProperty(opts.prototype, callback, descriptor);\n }\n else {\n prototype[callback] = wrapWithCurrentZone(prototype[callback], source);\n }\n }\n else if (prototype[callback]) {\n prototype[callback] = wrapWithCurrentZone(prototype[callback], source);\n }\n });\n }\n return _registerElement.call(document, name, opts);\n };\n attachOriginToPatched(document.registerElement, _registerElement);\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @fileoverview\n * @suppress {missingRequire}\n */\nZone.__load_patch('util', function (global, Zone, api) {\n api.patchOnProperties = patchOnProperties;\n api.patchMethod = patchMethod;\n api.bindArguments = bindArguments;\n});\nZone.__load_patch('timers', function (global) {\n var set = 'set';\n var clear = 'clear';\n patchTimer(global, set, clear, 'Timeout');\n patchTimer(global, set, clear, 'Interval');\n patchTimer(global, set, clear, 'Immediate');\n});\nZone.__load_patch('requestAnimationFrame', function (global) {\n patchTimer(global, 'request', 'cancel', 'AnimationFrame');\n patchTimer(global, 'mozRequest', 'mozCancel', 'AnimationFrame');\n patchTimer(global, 'webkitRequest', 'webkitCancel', 'AnimationFrame');\n});\nZone.__load_patch('blocking', function (global, Zone) {\n var blockingMethods = ['alert', 'prompt', 'confirm'];\n for (var i = 0; i < blockingMethods.length; i++) {\n var name_1 = blockingMethods[i];\n patchMethod(global, name_1, function (delegate, symbol, name) {\n return function (s, args) {\n return Zone.current.run(delegate, global, args, name);\n };\n });\n }\n});\nZone.__load_patch('EventTarget', function (global, Zone, api) {\n // load blackListEvents from global\n var SYMBOL_BLACK_LISTED_EVENTS = Zone.__symbol__('BLACK_LISTED_EVENTS');\n if (global[SYMBOL_BLACK_LISTED_EVENTS]) {\n Zone[SYMBOL_BLACK_LISTED_EVENTS] = global[SYMBOL_BLACK_LISTED_EVENTS];\n }\n patchEvent(global, api);\n eventTargetPatch(global, api);\n // patch XMLHttpRequestEventTarget's addEventListener/removeEventListener\n var XMLHttpRequestEventTarget = global['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget && XMLHttpRequestEventTarget.prototype) {\n api.patchEventTarget(global, [XMLHttpRequestEventTarget.prototype]);\n }\n patchClass('MutationObserver');\n patchClass('WebKitMutationObserver');\n patchClass('IntersectionObserver');\n patchClass('FileReader');\n});\nZone.__load_patch('on_property', function (global, Zone, api) {\n propertyDescriptorPatch(api, global);\n propertyPatch();\n registerElementPatch(global);\n});\nZone.__load_patch('canvas', function (global) {\n var HTMLCanvasElement = global['HTMLCanvasElement'];\n if (typeof HTMLCanvasElement !== 'undefined' && HTMLCanvasElement.prototype &&\n HTMLCanvasElement.prototype.toBlob) {\n patchMacroTask(HTMLCanvasElement.prototype, 'toBlob', function (self, args) {\n return { name: 'HTMLCanvasElement.toBlob', target: self, cbIdx: 0, args: args };\n });\n }\n});\nZone.__load_patch('XHR', function (global, Zone) {\n // Treat XMLHttpRequest as a macrotask.\n patchXHR(global);\n var XHR_TASK = zoneSymbol('xhrTask');\n var XHR_SYNC = zoneSymbol('xhrSync');\n var XHR_LISTENER = zoneSymbol('xhrListener');\n var XHR_SCHEDULED = zoneSymbol('xhrScheduled');\n var XHR_URL = zoneSymbol('xhrURL');\n function patchXHR(window) {\n var XMLHttpRequestPrototype = XMLHttpRequest.prototype;\n function findPendingTask(target) {\n return target[XHR_TASK];\n }\n var oriAddListener = XMLHttpRequestPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n var oriRemoveListener = XMLHttpRequestPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n if (!oriAddListener) {\n var XMLHttpRequestEventTarget = window['XMLHttpRequestEventTarget'];\n if (XMLHttpRequestEventTarget) {\n var XMLHttpRequestEventTargetPrototype = XMLHttpRequestEventTarget.prototype;\n oriAddListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = XMLHttpRequestEventTargetPrototype[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n }\n var READY_STATE_CHANGE = 'readystatechange';\n var SCHEDULED = 'scheduled';\n function scheduleTask(task) {\n XMLHttpRequest[XHR_SCHEDULED] = false;\n var data = task.data;\n var target = data.target;\n // remove existing event listener\n var listener = target[XHR_LISTENER];\n if (!oriAddListener) {\n oriAddListener = target[ZONE_SYMBOL_ADD_EVENT_LISTENER];\n oriRemoveListener = target[ZONE_SYMBOL_REMOVE_EVENT_LISTENER];\n }\n if (listener) {\n oriRemoveListener.call(target, READY_STATE_CHANGE, listener);\n }\n var newListener = target[XHR_LISTENER] = function () {\n if (target.readyState === target.DONE) {\n // sometimes on some browsers XMLHttpRequest will fire onreadystatechange with\n // readyState=4 multiple times, so we need to check task state here\n if (!data.aborted && XMLHttpRequest[XHR_SCHEDULED] && task.state === SCHEDULED) {\n task.invoke();\n }\n }\n };\n oriAddListener.call(target, READY_STATE_CHANGE, newListener);\n var storedTask = target[XHR_TASK];\n if (!storedTask) {\n target[XHR_TASK] = task;\n }\n sendNative.apply(target, data.args);\n XMLHttpRequest[XHR_SCHEDULED] = true;\n return task;\n }\n function placeholderCallback() { }\n function clearTask(task) {\n var data = task.data;\n // Note - ideally, we would call data.target.removeEventListener here, but it's too late\n // to prevent it from firing. So instead, we store info for the event listener.\n data.aborted = true;\n return abortNative.apply(data.target, data.args);\n }\n var openNative = patchMethod(XMLHttpRequestPrototype, 'open', function () { return function (self, args) {\n self[XHR_SYNC] = args[2] == false;\n self[XHR_URL] = args[1];\n return openNative.apply(self, args);\n }; });\n var XMLHTTPREQUEST_SOURCE = 'XMLHttpRequest.send';\n var sendNative = patchMethod(XMLHttpRequestPrototype, 'send', function () { return function (self, args) {\n if (self[XHR_SYNC]) {\n // if the XHR is sync there is no task to schedule, just execute the code.\n return sendNative.apply(self, args);\n }\n else {\n var options = {\n target: self,\n url: self[XHR_URL],\n isPeriodic: false,\n delay: null,\n args: args,\n aborted: false\n };\n return scheduleMacroTaskWithCurrentZone(XMLHTTPREQUEST_SOURCE, placeholderCallback, options, scheduleTask, clearTask);\n }\n }; });\n var abortNative = patchMethod(XMLHttpRequestPrototype, 'abort', function () { return function (self) {\n var task = findPendingTask(self);\n if (task && typeof task.type == 'string') {\n // If the XHR has already completed, do nothing.\n // If the XHR has already been aborted, do nothing.\n // Fix #569, call abort multiple times before done will cause\n // macroTask task count be negative number\n if (task.cancelFn == null || (task.data && task.data.aborted)) {\n return;\n }\n task.zone.cancelTask(task);\n }\n // Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no\n // task\n // to cancel. Do nothing.\n }; });\n }\n});\nZone.__load_patch('geolocation', function (global) {\n /// GEO_LOCATION\n if (global['navigator'] && global['navigator'].geolocation) {\n patchPrototype(global['navigator'].geolocation, ['getCurrentPosition', 'watchPosition']);\n }\n});\nZone.__load_patch('PromiseRejectionEvent', function (global, Zone) {\n // handle unhandled promise rejection\n function findPromiseRejectionHandler(evtName) {\n return function (e) {\n var eventTasks = findEventTasks(global, evtName);\n eventTasks.forEach(function (eventTask) {\n // windows has added unhandledrejection event listener\n // trigger the event listener\n var PromiseRejectionEvent = global['PromiseRejectionEvent'];\n if (PromiseRejectionEvent) {\n var evt = new PromiseRejectionEvent(evtName, { promise: e.promise, reason: e.rejection });\n eventTask.invoke(evt);\n }\n });\n };\n }\n if (global['PromiseRejectionEvent']) {\n Zone[zoneSymbol('unhandledPromiseRejectionHandler')] =\n findPromiseRejectionHandler('unhandledrejection');\n Zone[zoneSymbol('rejectionHandledHandler')] =\n findPromiseRejectionHandler('rejectionhandled');\n }\n});\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n})));\n","var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob()\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n}\n\nfunction isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n}\n\nif (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ]\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n }\n}\n\nfunction normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name)\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n}\n\nfunction normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value)\n }\n return value\n}\n\n// Build a destructive iterator for the value list\nfunction iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift()\n return {done: value === undefined, value: value}\n }\n }\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n }\n }\n\n return iterator\n}\n\nexport function Headers(headers) {\n this.map = {}\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value)\n }, this)\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1])\n }, this)\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name])\n }, this)\n }\n}\n\nHeaders.prototype.append = function(name, value) {\n name = normalizeName(name)\n value = normalizeValue(value)\n var oldValue = this.map[name]\n this.map[name] = oldValue ? oldValue + ', ' + value : value\n}\n\nHeaders.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)]\n}\n\nHeaders.prototype.get = function(name) {\n name = normalizeName(name)\n return this.has(name) ? this.map[name] : null\n}\n\nHeaders.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n}\n\nHeaders.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value)\n}\n\nHeaders.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this)\n }\n }\n}\n\nHeaders.prototype.keys = function() {\n var items = []\n this.forEach(function(value, name) {\n items.push(name)\n })\n return iteratorFor(items)\n}\n\nHeaders.prototype.values = function() {\n var items = []\n this.forEach(function(value) {\n items.push(value)\n })\n return iteratorFor(items)\n}\n\nHeaders.prototype.entries = function() {\n var items = []\n this.forEach(function(value, name) {\n items.push([name, value])\n })\n return iteratorFor(items)\n}\n\nif (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries\n}\n\nfunction consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true\n}\n\nfunction fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result)\n }\n reader.onerror = function() {\n reject(reader.error)\n }\n })\n}\n\nfunction readBlobAsArrayBuffer(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n}\n\nfunction readBlobAsText(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n}\n\nfunction readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf)\n var chars = new Array(view.length)\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i])\n }\n return chars.join('')\n}\n\nfunction bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength)\n view.set(new Uint8Array(buf))\n return view.buffer\n }\n}\n\nfunction Body() {\n this.bodyUsed = false\n\n this._initBody = function(body) {\n this._bodyInit = body\n if (!body) {\n this._bodyText = ''\n } else if (typeof body === 'string') {\n this._bodyText = body\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString()\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer)\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer])\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body)\n } else {\n this._bodyText = body = Object.prototype.toString.call(body)\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8')\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type)\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')\n }\n }\n }\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n }\n }\n\n this.text = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n }\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n }\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n }\n\n return this\n}\n\n// HTTP methods whose capitalization should be normalized\nvar methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']\n\nfunction normalizeMethod(method) {\n var upcased = method.toUpperCase()\n return methods.indexOf(upcased) > -1 ? upcased : method\n}\n\nexport function Request(input, options) {\n options = options || {}\n var body = options.body\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url\n this.credentials = input.credentials\n if (!options.headers) {\n this.headers = new Headers(input.headers)\n }\n this.method = input.method\n this.mode = input.mode\n this.signal = input.signal\n if (!body && input._bodyInit != null) {\n body = input._bodyInit\n input.bodyUsed = true\n }\n } else {\n this.url = String(input)\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin'\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers)\n }\n this.method = normalizeMethod(options.method || this.method || 'GET')\n this.mode = options.mode || this.mode || null\n this.signal = options.signal || this.signal\n this.referrer = null\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body)\n}\n\nRequest.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n}\n\nfunction decode(body) {\n var form = new FormData()\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=')\n var name = split.shift().replace(/\\+/g, ' ')\n var value = split.join('=').replace(/\\+/g, ' ')\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n}\n\nfunction parseHeaders(rawHeaders) {\n var headers = new Headers()\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ')\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':')\n var key = parts.shift().trim()\n if (key) {\n var value = parts.join(':').trim()\n headers.append(key, value)\n }\n })\n return headers\n}\n\nBody.call(Request.prototype)\n\nexport function Response(bodyInit, options) {\n if (!options) {\n options = {}\n }\n\n this.type = 'default'\n this.status = options.status === undefined ? 200 : options.status\n this.ok = this.status >= 200 && this.status < 300\n this.statusText = 'statusText' in options ? options.statusText : 'OK'\n this.headers = new Headers(options.headers)\n this.url = options.url || ''\n this._initBody(bodyInit)\n}\n\nBody.call(Response.prototype)\n\nResponse.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n}\n\nResponse.error = function() {\n var response = new Response(null, {status: 0, statusText: ''})\n response.type = 'error'\n return response\n}\n\nvar redirectStatuses = [301, 302, 303, 307, 308]\n\nResponse.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n}\n\nexport var DOMException = self.DOMException\ntry {\n new DOMException()\n} catch (err) {\n DOMException = function(message, name) {\n this.message = message\n this.name = name\n var error = Error(message)\n this.stack = error.stack\n }\n DOMException.prototype = Object.create(Error.prototype)\n DOMException.prototype.constructor = DOMException\n}\n\nexport function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init)\n\n if (request.signal && request.signal.aborted) {\n return reject(new DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest()\n\n function abortXhr() {\n xhr.abort()\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL')\n var body = 'response' in xhr ? xhr.response : xhr.responseText\n resolve(new Response(body, options))\n }\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.onabort = function() {\n reject(new DOMException('Aborted', 'AbortError'))\n }\n\n xhr.open(request.method, request.url, true)\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob'\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value)\n })\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr)\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr)\n }\n }\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)\n })\n}\n\nfetch.polyfill = true\n\nif (!self.fetch) {\n self.fetch = fetch\n self.Headers = Headers\n self.Request = Request\n self.Response = Response\n}\n","/**\n * @file Web Cryptography API shim\n * @author Artem S Vybornov \n * @license MIT\n */\n(function (global, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], function () {\n return factory(global);\n });\n } else if (typeof module === 'object' && module.exports) {\n // CommonJS-like environments that support module.exports\n module.exports = factory(global);\n } else {\n factory(global);\n }\n}(typeof self !== 'undefined' ? self : this, function (global) {\n 'use strict';\n\n if ( typeof Promise !== 'function' )\n throw \"Promise support required\";\n\n var _crypto = global.crypto || global.msCrypto;\n if ( !_crypto ) return;\n\n var _subtle = _crypto.subtle || _crypto.webkitSubtle;\n if ( !_subtle ) return;\n\n var _Crypto = global.Crypto || _crypto.constructor || Object,\n _SubtleCrypto = global.SubtleCrypto || _subtle.constructor || Object,\n _CryptoKey = global.CryptoKey || global.Key || Object;\n\n var isEdge = global.navigator.userAgent.indexOf('Edge/') > -1;\n var isIE = !!global.msCrypto && !isEdge;\n var isWebkit = !_crypto.subtle && !!_crypto.webkitSubtle;\n if ( !isIE && !isWebkit ) return;\n\n function s2a ( s ) {\n return btoa(s).replace(/\\=+$/, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n }\n\n function a2s ( s ) {\n s += '===', s = s.slice( 0, -s.length % 4 );\n return atob( s.replace(/-/g, '+').replace(/_/g, '/') );\n }\n\n function s2b ( s ) {\n var b = new Uint8Array(s.length);\n for ( var i = 0; i < s.length; i++ ) b[i] = s.charCodeAt(i);\n return b;\n }\n\n function b2s ( b ) {\n if ( b instanceof ArrayBuffer ) b = new Uint8Array(b);\n return String.fromCharCode.apply( String, b );\n }\n\n function alg ( a ) {\n var r = { 'name': (a.name || a || '').toUpperCase().replace('V','v') };\n switch ( r.name ) {\n case 'SHA-1':\n case 'SHA-256':\n case 'SHA-384':\n case 'SHA-512':\n break;\n case 'AES-CBC':\n case 'AES-GCM':\n case 'AES-KW':\n if ( a.length ) r['length'] = a.length;\n break;\n case 'HMAC':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.length ) r['length'] = a.length;\n break;\n case 'RSAES-PKCS1-v1_5':\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n case 'RSASSA-PKCS1-v1_5':\n case 'RSA-OAEP':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n default:\n throw new SyntaxError(\"Bad algorithm name\");\n }\n return r;\n };\n\n function jwkAlg ( a ) {\n return {\n 'HMAC': {\n 'SHA-1': 'HS1',\n 'SHA-256': 'HS256',\n 'SHA-384': 'HS384',\n 'SHA-512': 'HS512',\n },\n 'RSASSA-PKCS1-v1_5': {\n 'SHA-1': 'RS1',\n 'SHA-256': 'RS256',\n 'SHA-384': 'RS384',\n 'SHA-512': 'RS512',\n },\n 'RSAES-PKCS1-v1_5': {\n '': 'RSA1_5',\n },\n 'RSA-OAEP': {\n 'SHA-1': 'RSA-OAEP',\n 'SHA-256': 'RSA-OAEP-256',\n },\n 'AES-KW': {\n '128': 'A128KW',\n '192': 'A192KW',\n '256': 'A256KW',\n },\n 'AES-GCM': {\n '128': 'A128GCM',\n '192': 'A192GCM',\n '256': 'A256GCM',\n },\n 'AES-CBC': {\n '128': 'A128CBC',\n '192': 'A192CBC',\n '256': 'A256CBC',\n },\n }[a.name][ ( a.hash || {} ).name || a.length || '' ];\n }\n\n function b2jwk ( k ) {\n if ( k instanceof ArrayBuffer || k instanceof Uint8Array ) k = JSON.parse( decodeURIComponent( escape( b2s(k) ) ) );\n var jwk = { 'kty': k.kty, 'alg': k.alg, 'ext': k.ext || k.extractable };\n switch ( jwk.kty ) {\n case 'oct':\n jwk.k = k.k;\n case 'RSA':\n [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi', 'oth' ].forEach( function ( x ) { if ( x in k ) jwk[x] = k[x] } );\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2b ( k ) {\n var jwk = b2jwk(k);\n if ( isIE ) jwk['extractable'] = jwk.ext, delete jwk.ext;\n return s2b( unescape( encodeURIComponent( JSON.stringify(jwk) ) ) ).buffer;\n }\n\n function pkcs2jwk ( k ) {\n var info = b2der(k), prv = false;\n if ( info.length > 2 ) prv = true, info.shift(); // remove version from PKCS#8 PrivateKeyInfo structure\n var jwk = { 'ext': true };\n switch ( info[0][0] ) {\n case '1.2.840.113549.1.1.1':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = b2der( info[1] );\n if ( prv ) rsaKey.shift(); // remove version from PKCS#1 RSAPrivateKey structure\n for ( var i = 0; i < rsaKey.length; i++ ) {\n if ( !rsaKey[i][0] ) rsaKey[i] = rsaKey[i].subarray(1);\n jwk[ rsaComp[i] ] = s2a( b2s( rsaKey[i] ) );\n }\n jwk['kty'] = 'RSA';\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2pkcs ( k ) {\n var key, info = [ [ '', null ] ], prv = false;\n switch ( k.kty ) {\n case 'RSA':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = [];\n for ( var i = 0; i < rsaComp.length; i++ ) {\n if ( !( rsaComp[i] in k ) ) break;\n var b = rsaKey[i] = s2b( a2s( k[ rsaComp[i] ] ) );\n if ( b[0] & 0x80 ) rsaKey[i] = new Uint8Array(b.length + 1), rsaKey[i].set( b, 1 );\n }\n if ( rsaKey.length > 2 ) prv = true, rsaKey.unshift( new Uint8Array([0]) ); // add version to PKCS#1 RSAPrivateKey structure\n info[0][0] = '1.2.840.113549.1.1.1';\n key = rsaKey;\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n info.push( new Uint8Array( der2b(key) ).buffer );\n if ( !prv ) info[1] = { 'tag': 0x03, 'value': info[1] };\n else info.unshift( new Uint8Array([0]) ); // add version to PKCS#8 PrivateKeyInfo structure\n return new Uint8Array( der2b(info) ).buffer;\n }\n\n var oid2str = { 'KoZIhvcNAQEB': '1.2.840.113549.1.1.1' },\n str2oid = { '1.2.840.113549.1.1.1': 'KoZIhvcNAQEB' };\n\n function b2der ( buf, ctx ) {\n if ( buf instanceof ArrayBuffer ) buf = new Uint8Array(buf);\n if ( !ctx ) ctx = { pos: 0, end: buf.length };\n\n if ( ctx.end - ctx.pos < 2 || ctx.end > buf.length ) throw new RangeError(\"Malformed DER\");\n\n var tag = buf[ctx.pos++],\n len = buf[ctx.pos++];\n\n if ( len >= 0x80 ) {\n len &= 0x7f;\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n for ( var xlen = 0; len--; ) xlen <<= 8, xlen |= buf[ctx.pos++];\n len = xlen;\n }\n\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n\n var rv;\n\n switch ( tag ) {\n case 0x02: // Universal Primitive INTEGER\n rv = buf.subarray( ctx.pos, ctx.pos += len );\n break;\n case 0x03: // Universal Primitive BIT STRING\n if ( buf[ctx.pos++] ) throw new Error( \"Unsupported bit string\" );\n len--;\n case 0x04: // Universal Primitive OCTET STRING\n rv = new Uint8Array( buf.subarray( ctx.pos, ctx.pos += len ) ).buffer;\n break;\n case 0x05: // Universal Primitive NULL\n rv = null;\n break;\n case 0x06: // Universal Primitive OBJECT IDENTIFIER\n var oid = btoa( b2s( buf.subarray( ctx.pos, ctx.pos += len ) ) );\n if ( !( oid in oid2str ) ) throw new Error( \"Unsupported OBJECT ID \" + oid );\n rv = oid2str[oid];\n break;\n case 0x30: // Universal Constructed SEQUENCE\n rv = [];\n for ( var end = ctx.pos + len; ctx.pos < end; ) rv.push( b2der( buf, ctx ) );\n break;\n default:\n throw new Error( \"Unsupported DER tag 0x\" + tag.toString(16) );\n }\n\n return rv;\n }\n\n function der2b ( val, buf ) {\n if ( !buf ) buf = [];\n\n var tag = 0, len = 0,\n pos = buf.length + 2;\n\n buf.push( 0, 0 ); // placeholder\n\n if ( val instanceof Uint8Array ) { // Universal Primitive INTEGER\n tag = 0x02, len = val.length;\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val instanceof ArrayBuffer ) { // Universal Primitive OCTET STRING\n tag = 0x04, len = val.byteLength, val = new Uint8Array(val);\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val === null ) { // Universal Primitive NULL\n tag = 0x05, len = 0;\n }\n else if ( typeof val === 'string' && val in str2oid ) { // Universal Primitive OBJECT IDENTIFIER\n var oid = s2b( atob( str2oid[val] ) );\n tag = 0x06, len = oid.length;\n for ( var i = 0; i < len; i++ ) buf.push( oid[i] );\n }\n else if ( val instanceof Array ) { // Universal Constructed SEQUENCE\n for ( var i = 0; i < val.length; i++ ) der2b( val[i], buf );\n tag = 0x30, len = buf.length - pos;\n }\n else if ( typeof val === 'object' && val.tag === 0x03 && val.value instanceof ArrayBuffer ) { // Tag hint\n val = new Uint8Array(val.value), tag = 0x03, len = val.byteLength;\n buf.push(0); for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n len++;\n }\n else {\n throw new Error( \"Unsupported DER value \" + val );\n }\n\n if ( len >= 0x80 ) {\n var xlen = len, len = 4;\n buf.splice( pos, 0, (xlen >> 24) & 0xff, (xlen >> 16) & 0xff, (xlen >> 8) & 0xff, xlen & 0xff );\n while ( len > 1 && !(xlen >> 24) ) xlen <<= 8, len--;\n if ( len < 4 ) buf.splice( pos, 4 - len );\n len |= 0x80;\n }\n\n buf.splice( pos - 2, 2, tag, len );\n\n return buf;\n }\n\n function CryptoKey ( key, alg, ext, use ) {\n Object.defineProperties( this, {\n _key: {\n value: key\n },\n type: {\n value: key.type,\n enumerable: true,\n },\n extractable: {\n value: (ext === undefined) ? key.extractable : ext,\n enumerable: true,\n },\n algorithm: {\n value: (alg === undefined) ? key.algorithm : alg,\n enumerable: true,\n },\n usages: {\n value: (use === undefined) ? key.usages : use,\n enumerable: true,\n },\n });\n }\n\n function isPubKeyUse ( u ) {\n return u === 'verify' || u === 'encrypt' || u === 'wrapKey';\n }\n\n function isPrvKeyUse ( u ) {\n return u === 'sign' || u === 'decrypt' || u === 'unwrapKey';\n }\n\n [ 'generateKey', 'importKey', 'unwrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments),\n ka, kx, ku;\n\n switch ( m ) {\n case 'generateKey':\n ka = alg(a), kx = b, ku = c;\n break;\n case 'importKey':\n ka = alg(c), kx = args[3], ku = args[4];\n if ( a === 'jwk' ) {\n b = b2jwk(b);\n if ( !b.alg ) b.alg = jwkAlg(ka);\n if ( !b.key_ops ) b.key_ops = ( b.kty !== 'oct' ) ? ( 'd' in b ) ? ku.filter(isPrvKeyUse) : ku.filter(isPubKeyUse) : ku.slice();\n args[1] = jwk2b(b);\n }\n break;\n case 'unwrapKey':\n ka = args[4], kx = args[5], ku = args[6];\n args[2] = c._key;\n break;\n }\n\n if ( m === 'generateKey' && ka.name === 'HMAC' && ka.hash ) {\n ka.length = ka.length || { 'SHA-1': 512, 'SHA-256': 512, 'SHA-384': 1024, 'SHA-512': 1024 }[ka.hash.name];\n return _subtle.importKey( 'raw', _crypto.getRandomValues( new Uint8Array( (ka.length+7)>>3 ) ), ka, kx, ku );\n }\n\n if ( isWebkit && m === 'generateKey' && ka.name === 'RSASSA-PKCS1-v1_5' && ( !ka.modulusLength || ka.modulusLength >= 2048 ) ) {\n a = alg(a), a.name = 'RSAES-PKCS1-v1_5', delete a.hash;\n return _subtle.generateKey( a, true, [ 'encrypt', 'decrypt' ] )\n .then( function ( k ) {\n return Promise.all([\n _subtle.exportKey( 'jwk', k.publicKey ),\n _subtle.exportKey( 'jwk', k.privateKey ),\n ]);\n })\n .then( function ( keys ) {\n keys[0].alg = keys[1].alg = jwkAlg(ka);\n keys[0].key_ops = ku.filter(isPubKeyUse), keys[1].key_ops = ku.filter(isPrvKeyUse);\n return Promise.all([\n _subtle.importKey( 'jwk', keys[0], ka, true, keys[0].key_ops ),\n _subtle.importKey( 'jwk', keys[1], ka, kx, keys[1].key_ops ),\n ]);\n })\n .then( function ( keys ) {\n return {\n publicKey: keys[0],\n privateKey: keys[1],\n };\n });\n }\n\n if ( ( isWebkit || ( isIE && ( ka.hash || {} ).name === 'SHA-1' ) )\n && m === 'importKey' && a === 'jwk' && ka.name === 'HMAC' && b.kty === 'oct' ) {\n return _subtle.importKey( 'raw', s2b( a2s(b.k) ), c, args[3], args[4] );\n }\n\n if ( isWebkit && m === 'importKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n return _subtle.importKey( 'jwk', pkcs2jwk(b), c, args[3], args[4] );\n }\n\n if ( isIE && m === 'unwrapKey' ) {\n return _subtle.decrypt( args[3], c, b )\n .then( function ( k ) {\n return _subtle.importKey( a, k, args[4], args[5], args[6] );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n op = op.then( function ( k ) {\n if ( ka.name === 'HMAC' ) {\n if ( !ka.length ) ka.length = 8 * k.algorithm.length;\n }\n if ( ka.name.search('RSA') == 0 ) {\n if ( !ka.modulusLength ) ka.modulusLength = (k.publicKey || k).algorithm.modulusLength;\n if ( !ka.publicExponent ) ka.publicExponent = (k.publicKey || k).algorithm.publicExponent;\n }\n if ( k.publicKey && k.privateKey ) {\n k = {\n publicKey: new CryptoKey( k.publicKey, ka, kx, ku.filter(isPubKeyUse) ),\n privateKey: new CryptoKey( k.privateKey, ka, kx, ku.filter(isPrvKeyUse) ),\n };\n }\n else {\n k = new CryptoKey( k, ka, kx, ku );\n }\n return k;\n });\n\n return op;\n }\n });\n\n [ 'exportKey', 'wrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments);\n\n switch ( m ) {\n case 'exportKey':\n args[1] = b._key;\n break;\n case 'wrapKey':\n args[1] = b._key, args[2] = c._key;\n break;\n }\n\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && m === 'exportKey' && a === 'jwk' && b.algorithm.name === 'HMAC' ) {\n args[0] = 'raw';\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n args[0] = 'jwk';\n }\n\n if ( isIE && m === 'wrapKey' ) {\n return _subtle.exportKey( a, b )\n .then( function ( k ) {\n if ( a === 'jwk' ) k = s2b( unescape( encodeURIComponent( JSON.stringify( b2jwk(k) ) ) ) );\n return _subtle.encrypt( args[3], c, k );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n if ( m === 'exportKey' && a === 'jwk' ) {\n op = op.then( function ( k ) {\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && b.algorithm.name === 'HMAC') {\n return { 'kty': 'oct', 'alg': jwkAlg(b.algorithm), 'key_ops': b.usages.slice(), 'ext': true, 'k': s2a( b2s(k) ) };\n }\n k = b2jwk(k);\n if ( !k.alg ) k['alg'] = jwkAlg(b.algorithm);\n if ( !k.key_ops ) k['key_ops'] = ( b.type === 'public' ) ? b.usages.filter(isPubKeyUse) : ( b.type === 'private' ) ? b.usages.filter(isPrvKeyUse) : b.usages.slice();\n return k;\n });\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n op = op.then( function ( k ) {\n k = jwk2pkcs( b2jwk(k) );\n return k;\n });\n }\n\n return op;\n }\n });\n\n [ 'encrypt', 'decrypt', 'sign', 'verify' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c, d ) {\n if ( isIE && ( !c.byteLength || ( d && !d.byteLength ) ) )\n throw new Error(\"Empy input is not allowed\");\n\n var args = [].slice.call(arguments),\n ka = alg(a);\n\n if ( isIE && m === 'decrypt' && ka.name === 'AES-GCM' ) {\n var tl = a.tagLength >> 3;\n args[2] = (c.buffer || c).slice( 0, c.byteLength - tl ),\n a.tag = (c.buffer || c).slice( c.byteLength - tl );\n }\n\n args[1] = b._key;\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) {\n rej(e);\n };\n\n op.oncomplete = function ( r ) {\n var r = r.target.result;\n\n if ( m === 'encrypt' && r instanceof AesGcmEncryptResult ) {\n var c = r.ciphertext, t = r.tag;\n r = new Uint8Array( c.byteLength + t.byteLength );\n r.set( new Uint8Array(c), 0 );\n r.set( new Uint8Array(t), c.byteLength );\n r = r.buffer;\n }\n\n res(r);\n };\n });\n }\n\n return op;\n }\n });\n\n if ( isIE ) {\n var _digest = _subtle.digest;\n\n _subtle['digest'] = function ( a, b ) {\n if ( !b.byteLength )\n throw new Error(\"Empy input is not allowed\");\n\n var op;\n try {\n op = _digest.call( _subtle, a, b );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n\n return op;\n };\n\n global.crypto = Object.create( _crypto, {\n getRandomValues: { value: function ( a ) { return _crypto.getRandomValues(a) } },\n subtle: { value: _subtle },\n });\n\n global.CryptoKey = CryptoKey;\n }\n\n if ( isWebkit ) {\n _crypto.subtle = _subtle;\n\n global.Crypto = _Crypto;\n global.SubtleCrypto = _SubtleCrypto;\n global.CryptoKey = CryptoKey;\n }\n}));\n"],"sourceRoot":""} \ No newline at end of file diff --git a/app/vendor.bda9be8e4a8b7262835e.js b/app/vendor.7c2e53863584b575d629.js similarity index 99% rename from app/vendor.bda9be8e4a8b7262835e.js rename to app/vendor.7c2e53863584b575d629.js index ed948f0c..37c0261f 100644 --- a/app/vendor.bda9be8e4a8b7262835e.js +++ b/app/vendor.7c2e53863584b575d629.js @@ -1388,7 +1388,7 @@ var r=n(758),a=n(759),i=n(527);function o(){return l.TYPED_ARRAY_SUPPORT?2147483 * * Date: 2016-08-08 */ -function(e){var t,n,r,a,i,o,s,l,u,c,d,h,p,f,m,g,y,b,v,k="sizzle"+1*new Date,w=e.document,_=0,j=0,E=oe(),x=oe(),C=oe(),S=function(e,t){return e===t&&(d=!0),0},T={}.hasOwnProperty,z=[],A=z.pop,I=z.push,D=z.push,O=z.slice,N=function(e,t){for(var n=0,r=e.length;n+~]|"+P+")"+P+"*"),H=new RegExp("="+P+"*([^\\]'\"]*?)"+P+"*\\]","g"),K=new RegExp(B),W=new RegExp("^"+q+"$"),G={ID:new RegExp("^#("+q+")"),CLASS:new RegExp("^\\.("+q+")"),TAG:new RegExp("^("+q+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},Q=/^(?:input|select|textarea|button)$/i,$=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,X=/[+~]/,J=new RegExp("\\\\([\\da-f]{1,6}"+P+"?|("+P+")|.)","ig"),ee=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},te=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ne=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},re=function(){h()},ae=be(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{D.apply(z=O.call(w.childNodes),w.childNodes),z[w.childNodes.length].nodeType}catch(e){D={apply:z.length?function(e,t){I.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function ie(e,t,r,a){var i,s,u,c,d,f,y,b=t&&t.ownerDocument,_=t?t.nodeType:9;if(r=r||[],"string"!=typeof e||!e||1!==_&&9!==_&&11!==_)return r;if(!a&&((t?t.ownerDocument||t:w)!==p&&h(t),t=t||p,m)){if(11!==_&&(d=Z.exec(e)))if(i=d[1]){if(9===_){if(!(u=t.getElementById(i)))return r;if(u.id===i)return r.push(u),r}else if(b&&(u=b.getElementById(i))&&v(t,u)&&u.id===i)return r.push(u),r}else{if(d[2])return D.apply(r,t.getElementsByTagName(e)),r;if((i=d[3])&&n.getElementsByClassName&&t.getElementsByClassName)return D.apply(r,t.getElementsByClassName(i)),r}if(n.qsa&&!C[e+" "]&&(!g||!g.test(e))){if(1!==_)b=t,y=e;else if("object"!==t.nodeName.toLowerCase()){for((c=t.getAttribute("id"))?c=c.replace(te,ne):t.setAttribute("id",c=k),s=(f=o(e)).length;s--;)f[s]="#"+c+" "+ye(f[s]);y=f.join(","),b=X.test(e)&&me(t.parentNode)||t}if(y)try{return D.apply(r,b.querySelectorAll(y)),r}catch(e){}finally{c===k&&t.removeAttribute("id")}}}return l(e.replace(F,"$1"),t,r,a)}function oe(){var e=[];return function t(n,a){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=a}}function se(e){return e[k]=!0,e}function le(e){var t=p.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ue(e,t){for(var n=e.split("|"),a=n.length;a--;)r.attrHandle[n[a]]=t}function ce(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function pe(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function fe(e){return se(function(t){return t=+t,se(function(n,r){for(var a,i=e([],n.length,t),o=i.length;o--;)n[a=i[o]]&&(n[a]=!(r[a]=n[a]))})})}function me(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=ie.support={},i=ie.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},h=ie.setDocument=function(e){var t,a,o=e?e.ownerDocument||e:w;return o!==p&&9===o.nodeType&&o.documentElement?(f=(p=o).documentElement,m=!i(p),w!==p&&(a=p.defaultView)&&a.top!==a&&(a.addEventListener?a.addEventListener("unload",re,!1):a.attachEvent&&a.attachEvent("onunload",re)),n.attributes=le(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=le(function(e){return e.appendChild(p.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=Y.test(p.getElementsByClassName),n.getById=le(function(e){return f.appendChild(e).id=k,!p.getElementsByName||!p.getElementsByName(k).length}),n.getById?(r.filter.ID=function(e){var t=e.replace(J,ee);return function(e){return e.getAttribute("id")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&m){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(J,ee);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&m){var n,r,a,i=t.getElementById(e);if(i){if((n=i.getAttributeNode("id"))&&n.value===e)return[i];for(a=t.getElementsByName(e),r=0;i=a[r++];)if((n=i.getAttributeNode("id"))&&n.value===e)return[i]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],a=0,i=t.getElementsByTagName(e);if("*"===e){for(;n=i[a++];)1===n.nodeType&&r.push(n);return r}return i},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&m)return t.getElementsByClassName(e)},y=[],g=[],(n.qsa=Y.test(p.querySelectorAll))&&(le(function(e){f.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||g.push("~="),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||g.push(".#.+[+~]")}),le(function(e){e.innerHTML="";var t=p.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+P+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),f.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(n.matchesSelector=Y.test(b=f.matches||f.webkitMatchesSelector||f.mozMatchesSelector||f.oMatchesSelector||f.msMatchesSelector))&&le(function(e){n.disconnectedMatch=b.call(e,"*"),b.call(e,"[s!='']:x"),y.push("!=",B)}),g=g.length&&new RegExp(g.join("|")),y=y.length&&new RegExp(y.join("|")),t=Y.test(f.compareDocumentPosition),v=t||Y.test(f.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},S=t?function(e,t){if(e===t)return d=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e===p||e.ownerDocument===w&&v(w,e)?-1:t===p||t.ownerDocument===w&&v(w,t)?1:c?N(c,e)-N(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return d=!0,0;var n,r=0,a=e.parentNode,i=t.parentNode,o=[e],s=[t];if(!a||!i)return e===p?-1:t===p?1:a?-1:i?1:c?N(c,e)-N(c,t):0;if(a===i)return ce(e,t);for(n=e;n=n.parentNode;)o.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;o[r]===s[r];)r++;return r?ce(o[r],s[r]):o[r]===w?-1:s[r]===w?1:0},p):p},ie.matches=function(e,t){return ie(e,null,null,t)},ie.matchesSelector=function(e,t){if((e.ownerDocument||e)!==p&&h(e),t=t.replace(H,"='$1']"),n.matchesSelector&&m&&!C[t+" "]&&(!y||!y.test(t))&&(!g||!g.test(t)))try{var r=b.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return ie(t,p,null,[e]).length>0},ie.contains=function(e,t){return(e.ownerDocument||e)!==p&&h(e),v(e,t)},ie.attr=function(e,t){(e.ownerDocument||e)!==p&&h(e);var a=r.attrHandle[t.toLowerCase()],i=a&&T.call(r.attrHandle,t.toLowerCase())?a(e,t,!m):void 0;return void 0!==i?i:n.attributes||!m?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null},ie.escape=function(e){return(e+"").replace(te,ne)},ie.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},ie.uniqueSort=function(e){var t,r=[],a=0,i=0;if(d=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(S),d){for(;t=e[i++];)t===e[i]&&(a=r.push(i));for(;a--;)e.splice(r[a],1)}return c=null,e},a=ie.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=a(t);return n},(r=ie.selectors={cacheLength:50,createPseudo:se,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(J,ee),e[3]=(e[3]||e[4]||e[5]||"").replace(J,ee),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||ie.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&ie.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&K.test(n)&&(t=o(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(J,ee).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+" "];return t||(t=new RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&E(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var a=ie.attr(r,e);return null==a?"!="===t:!t||(a+="","="===t?a===n:"!="===t?a!==n:"^="===t?n&&0===a.indexOf(n):"*="===t?n&&a.indexOf(n)>-1:"$="===t?n&&a.slice(-n.length)===n:"~="===t?(" "+a.replace(L," ")+" ").indexOf(n)>-1:"|="===t&&(a===n||a.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,a){var i="nth"!==e.slice(0,3),o="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===a?function(e){return!!e.parentNode}:function(t,n,l){var u,c,d,h,p,f,m=i!==o?"nextSibling":"previousSibling",g=t.parentNode,y=s&&t.nodeName.toLowerCase(),b=!l&&!s,v=!1;if(g){if(i){for(;m;){for(h=t;h=h[m];)if(s?h.nodeName.toLowerCase()===y:1===h.nodeType)return!1;f=m="only"===e&&!f&&"nextSibling"}return!0}if(f=[o?g.firstChild:g.lastChild],o&&b){for(v=(p=(u=(c=(d=(h=g)[k]||(h[k]={}))[h.uniqueID]||(d[h.uniqueID]={}))[e]||[])[0]===_&&u[1])&&u[2],h=p&&g.childNodes[p];h=++p&&h&&h[m]||(v=p=0)||f.pop();)if(1===h.nodeType&&++v&&h===t){c[e]=[_,p,v];break}}else if(b&&(v=p=(u=(c=(d=(h=t)[k]||(h[k]={}))[h.uniqueID]||(d[h.uniqueID]={}))[e]||[])[0]===_&&u[1]),!1===v)for(;(h=++p&&h&&h[m]||(v=p=0)||f.pop())&&((s?h.nodeName.toLowerCase()!==y:1!==h.nodeType)||!++v||(b&&((c=(d=h[k]||(h[k]={}))[h.uniqueID]||(d[h.uniqueID]={}))[e]=[_,v]),h!==t)););return(v-=a)===r||v%r==0&&v/r>=0}}},PSEUDO:function(e,t){var n,a=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ie.error("unsupported pseudo: "+e);return a[k]?a(t):a.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,n){for(var r,i=a(e,t),o=i.length;o--;)e[r=N(e,i[o])]=!(n[r]=i[o])}):function(e){return a(e,0,n)}):a}},pseudos:{not:se(function(e){var t=[],n=[],r=s(e.replace(F,"$1"));return r[k]?se(function(e,t,n,a){for(var i,o=r(e,null,a,[]),s=e.length;s--;)(i=o[s])&&(e[s]=!(t[s]=i))}):function(e,a,i){return t[0]=e,r(t,null,i,n),t[0]=null,!n.pop()}}),has:se(function(e){return function(t){return ie(e,t).length>0}}),contains:se(function(e){return e=e.replace(J,ee),function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:se(function(e){return W.test(e||"")||ie.error("unsupported lang: "+e),e=e.replace(J,ee).toLowerCase(),function(t){var n;do{if(n=m?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===f},focus:function(e){return e===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:pe(!1),disabled:pe(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return $.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:fe(function(){return[0]}),last:fe(function(e,t){return[t-1]}),eq:fe(function(e,t,n){return[n<0?n+t:n]}),even:fe(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:fe(function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){for(var a=e.length;a--;)if(!e[a](t,n,r))return!1;return!0}:e[0]}function ke(e,t,n,r,a){for(var i,o=[],s=0,l=e.length,u=null!=t;s-1&&(i[u]=!(o[u]=d))}}else y=ke(y===o?y.splice(f,y.length):y),a?a(null,o,y,l):D.apply(o,y)})}function _e(e){for(var t,n,a,i=e.length,o=r.relative[e[0].type],s=o||r.relative[" "],l=o?1:0,c=be(function(e){return e===t},s,!0),d=be(function(e){return N(t,e)>-1},s,!0),h=[function(e,n,r){var a=!o&&(r||n!==u)||((t=n).nodeType?c(e,n,r):d(e,n,r));return t=null,a}];l1&&ve(h),l>1&&ye(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(F,"$1"),n,l0,a=e.length>0,i=function(i,o,s,l,c){var d,f,g,y=0,b="0",v=i&&[],k=[],w=u,j=i||a&&r.find.TAG("*",c),E=_+=null==w?1:Math.random()||.1,x=j.length;for(c&&(u=o===p||o||c);b!==x&&null!=(d=j[b]);b++){if(a&&d){for(f=0,o||d.ownerDocument===p||(h(d),s=!m);g=e[f++];)if(g(d,o||p,s)){l.push(d);break}c&&(_=E)}n&&((d=!g&&d)&&y--,i&&v.push(d))}if(y+=b,n&&b!==y){for(f=0;g=t[f++];)g(v,k,o,s);if(i){if(y>0)for(;b--;)v[b]||k[b]||(k[b]=A.call(l));k=ke(k)}D.apply(l,k),c&&!i&&k.length>0&&y+t.length>1&&ie.uniqueSort(l)}return c&&(_=E,u=w),v};return n?se(i):i}(i,a))).selector=e}return s},l=ie.select=function(e,t,n,a){var i,l,u,c,d,h="function"==typeof e&&e,p=!a&&o(e=h.selector||e);if(n=n||[],1===p.length){if((l=p[0]=p[0].slice(0)).length>2&&"ID"===(u=l[0]).type&&9===t.nodeType&&m&&r.relative[l[1].type]){if(!(t=(r.find.ID(u.matches[0].replace(J,ee),t)||[])[0]))return n;h&&(t=t.parentNode),e=e.slice(l.shift().value.length)}for(i=G.needsContext.test(e)?0:l.length;i--&&(u=l[i],!r.relative[c=u.type]);)if((d=r.find[c])&&(a=d(u.matches[0].replace(J,ee),X.test(l[0].type)&&me(t.parentNode)||t))){if(l.splice(i,1),!(e=a.length&&ye(l)))return D.apply(n,a),n;break}}return(h||s(e,p))(a,t,!m,n,!t||X.test(e)&&me(t.parentNode)||t),n},n.sortStable=k.split("").sort(S).join("")===k,n.detectDuplicates=!!d,h(),n.sortDetached=le(function(e){return 1&e.compareDocumentPosition(p.createElement("fieldset"))}),le(function(e){return e.innerHTML="","#"===e.firstChild.getAttribute("href")})||ue("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),n.attributes&&le(function(e){return e.innerHTML="",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||ue("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),le(function(e){return null==e.getAttribute("disabled")})||ue(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),ie}(n);j.find=C,j.expr=C.selectors,j.expr[":"]=j.expr.pseudos,j.uniqueSort=j.unique=C.uniqueSort,j.text=C.getText,j.isXMLDoc=C.isXML,j.contains=C.contains,j.escapeSelector=C.escape;var S=function(e,t,n){for(var r=[],a=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(a&&j(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},z=j.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var I=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,t,n){return b(t)?j.grep(e,function(e,r){return!!t.call(e,r,e)!==n}):t.nodeType?j.grep(e,function(e){return e===t!==n}):"string"!=typeof t?j.grep(e,function(e){return d.call(t,e)>-1!==n}):j.filter(t,e,n)}j.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?j.find.matchesSelector(r,e)?[r]:[]:j.find.matches(e,j.grep(t,function(e){return 1===e.nodeType}))},j.fn.extend({find:function(e){var t,n,r=this.length,a=this;if("string"!=typeof e)return this.pushStack(j(e).filter(function(){for(t=0;t1?j.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,"string"==typeof e&&z.test(e)?j(e):e||[],!1).length}});var O,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(j.fn.init=function(e,t,n){var r,a;if(!e)return this;if(n=n||O,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:N.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof j?t[0]:t,j.merge(this,j.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:o,!0)),I.test(r[1])&&j.isPlainObject(t))for(r in t)b(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(a=o.getElementById(r[2]))&&(this[0]=a,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):b(e)?void 0!==n.ready?n.ready(e):e(j):j.makeArray(e,this)}).prototype=j.fn,O=j(o);var R=/^(?:parents|prev(?:Until|All))/,P={children:!0,contents:!0,next:!0,prev:!0};function q(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}j.fn.extend({has:function(e){var t=j(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&j.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?j.uniqueSort(i):i)},index:function(e){return e?"string"==typeof e?d.call(j(e),this[0]):d.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(j.uniqueSort(j.merge(this.get(),j(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),j.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return S(e,"parentNode")},parentsUntil:function(e,t,n){return S(e,"parentNode",n)},next:function(e){return q(e,"nextSibling")},prev:function(e){return q(e,"previousSibling")},nextAll:function(e){return S(e,"nextSibling")},prevAll:function(e){return S(e,"previousSibling")},nextUntil:function(e,t,n){return S(e,"nextSibling",n)},prevUntil:function(e,t,n){return S(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return A(e,"iframe")?e.contentDocument:(A(e,"template")&&(e=e.content||e),j.merge([],e.childNodes))}},function(e,t){j.fn[e]=function(n,r){var a=j.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(a=j.filter(r,a)),this.length>1&&(P[e]||j.uniqueSort(a),R.test(e)&&a.reverse()),this.pushStack(a)}});var M=/[^\x20\t\r\n\f]+/g;function B(e){return e}function L(e){throw e}function F(e,t,n,r){var a;try{e&&b(a=e.promise)?a.call(e).done(t).fail(n):e&&b(a=e.then)?a.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}j.Callbacks=function(e){e="string"==typeof e?function(e){var t={};return j.each(e.match(M)||[],function(e,n){t[n]=!0}),t}(e):j.extend({},e);var t,n,r,a,i=[],o=[],s=-1,l=function(){for(a=a||e.once,r=t=!0;o.length;s=-1)for(n=o.shift();++s-1;)i.splice(n,1),n<=s&&s--}),this},has:function(e){return e?j.inArray(e,i)>-1:i.length>0},empty:function(){return i&&(i=[]),this},disable:function(){return a=o=[],i=n="",this},disabled:function(){return!i},lock:function(){return a=o=[],n||t||(i=n=""),this},locked:function(){return!!a},fireWith:function(e,n){return a||(n=[e,(n=n||[]).slice?n.slice():n],o.push(n),t||l()),this},fire:function(){return u.fireWith(this,arguments),this},fired:function(){return!!r}};return u},j.extend({Deferred:function(e){var t=[["notify","progress",j.Callbacks("memory"),j.Callbacks("memory"),2],["resolve","done",j.Callbacks("once memory"),j.Callbacks("once memory"),0,"resolved"],["reject","fail",j.Callbacks("once memory"),j.Callbacks("once memory"),1,"rejected"]],r="pending",a={state:function(){return r},always:function(){return i.done(arguments).fail(arguments),this},catch:function(e){return a.then(null,e)},pipe:function(){var e=arguments;return j.Deferred(function(n){j.each(t,function(t,r){var a=b(e[r[4]])&&e[r[4]];i[r[1]](function(){var e=a&&a.apply(this,arguments);e&&b(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,a?[e]:arguments)})}),e=null}).promise()},then:function(e,r,a){var i=0;function o(e,t,r,a){return function(){var s=this,l=arguments,u=function(){var n,u;if(!(e=i&&(r!==L&&(s=void 0,l=[n]),t.rejectWith(s,l))}};e?c():(j.Deferred.getStackHook&&(c.stackTrace=j.Deferred.getStackHook()),n.setTimeout(c))}}return j.Deferred(function(n){t[0][3].add(o(0,n,b(a)?a:B,n.notifyWith)),t[1][3].add(o(0,n,b(e)?e:B)),t[2][3].add(o(0,n,b(r)?r:L))}).promise()},promise:function(e){return null!=e?j.extend(e,a):a}},i={};return j.each(t,function(e,n){var o=n[2],s=n[5];a[n[1]]=o.add,s&&o.add(function(){r=s},t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),o.add(n[3].fire),i[n[0]]=function(){return i[n[0]+"With"](this===i?void 0:this,arguments),this},i[n[0]+"With"]=o.fireWith}),a.promise(i),e&&e.call(i,i),i},when:function(e){var t=arguments.length,n=t,r=Array(n),a=l.call(arguments),i=j.Deferred(),o=function(e){return function(n){r[e]=this,a[e]=arguments.length>1?l.call(arguments):n,--t||i.resolveWith(r,a)}};if(t<=1&&(F(e,i.done(o(n)).resolve,i.reject,!t),"pending"===i.state()||b(a[n]&&a[n].then)))return i.then();for(;n--;)F(a[n],o(n),i.reject);return i.promise()}});var U=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;j.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&U.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},j.readyException=function(e){n.setTimeout(function(){throw e})};var V=j.Deferred();function H(){o.removeEventListener("DOMContentLoaded",H),n.removeEventListener("load",H),j.ready()}j.fn.ready=function(e){return V.then(e).catch(function(e){j.readyException(e)}),this},j.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--j.readyWait:j.isReady)||(j.isReady=!0,!0!==e&&--j.readyWait>0||V.resolveWith(o,[j]))}}),j.ready.then=V.then,"complete"===o.readyState||"loading"!==o.readyState&&!o.documentElement.doScroll?n.setTimeout(j.ready):(o.addEventListener("DOMContentLoaded",H),n.addEventListener("load",H));var K=function(e,t,n,r,a,i,o){var s=0,l=e.length,u=null==n;if("object"===_(n))for(s in a=!0,n)K(e,t,s,n[s],!0,i,o);else if(void 0!==r&&(a=!0,b(r)||(o=!0),u&&(o?(t.call(e,r),t=null):(u=t,t=function(e,t,n){return u.call(j(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),j.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=X.get(e,t),n&&(!r||Array.isArray(n)?r=X.access(e,t,j.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=j.queue(e,t),r=n.length,a=n.shift(),i=j._queueHooks(e,t);"inprogress"===a&&(a=n.shift(),r--),a&&("fx"===t&&n.unshift("inprogress"),delete i.stop,a.call(e,function(){j.dequeue(e,t)},i)),!r&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return X.get(e,n)||X.access(e,n,{empty:j.Callbacks("once memory").add(function(){X.remove(e,[t+"queue",n])})})}}),j.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]+)/i,fe=/^$|^module$|\/(?:java|ecma)script/i,me={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ge(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?j.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n-1)a&&a.push(i);else if(u=j.contains(i.ownerDocument,i),o=ge(d.appendChild(i),"script"),u&&ye(o),n)for(c=0;i=o[c++];)fe.test(i.type||"")&&n.push(i);return d}!function(){var e=o.createDocumentFragment().appendChild(o.createElement("div")),t=o.createElement("input");t.setAttribute("type","radio"),t.setAttribute("checked","checked"),t.setAttribute("name","t"),e.appendChild(t),y.checkClone=e.cloneNode(!0).cloneNode(!0).lastChild.checked,e.innerHTML="",y.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var ke=o.documentElement,we=/^key/,_e=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,je=/^([^.]*)(?:\.(.+)|)/;function Ee(){return!0}function xe(){return!1}function Ce(){try{return o.activeElement}catch(e){}}function Se(e,t,n,r,a,i){var o,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Se(e,s,n,r,t[s],i);return e}if(null==r&&null==a?(a=n,r=n=void 0):null==a&&("string"==typeof n?(a=r,r=void 0):(a=r,r=n,n=void 0)),!1===a)a=xe;else if(!a)return e;return 1===i&&(o=a,(a=function(e){return j().off(e),o.apply(this,arguments)}).guid=o.guid||(o.guid=j.guid++)),e.each(function(){j.event.add(this,t,a,r,n)})}j.event={global:{},add:function(e,t,n,r,a){var i,o,s,l,u,c,d,h,p,f,m,g=X.get(e);if(g)for(n.handler&&(n=(i=n).handler,a=i.selector),a&&j.find.matchesSelector(ke,a),n.guid||(n.guid=j.guid++),(l=g.events)||(l=g.events={}),(o=g.handle)||(o=g.handle=function(t){return void 0!==j&&j.event.triggered!==t.type?j.event.dispatch.apply(e,arguments):void 0}),u=(t=(t||"").match(M)||[""]).length;u--;)p=m=(s=je.exec(t[u])||[])[1],f=(s[2]||"").split(".").sort(),p&&(d=j.event.special[p]||{},p=(a?d.delegateType:d.bindType)||p,d=j.event.special[p]||{},c=j.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:a,needsContext:a&&j.expr.match.needsContext.test(a),namespace:f.join(".")},i),(h=l[p])||((h=l[p]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(e,r,f,o)||e.addEventListener&&e.addEventListener(p,o)),d.add&&(d.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),a?h.splice(h.delegateCount++,0,c):h.push(c),j.event.global[p]=!0)},remove:function(e,t,n,r,a){var i,o,s,l,u,c,d,h,p,f,m,g=X.hasData(e)&&X.get(e);if(g&&(l=g.events)){for(u=(t=(t||"").match(M)||[""]).length;u--;)if(p=m=(s=je.exec(t[u])||[])[1],f=(s[2]||"").split(".").sort(),p){for(d=j.event.special[p]||{},h=l[p=(r?d.delegateType:d.bindType)||p]||[],s=s[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=i=h.length;i--;)c=h[i],!a&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(h.splice(i,1),c.selector&&h.delegateCount--,d.remove&&d.remove.call(e,c));o&&!h.length&&(d.teardown&&!1!==d.teardown.call(e,f,g.handle)||j.removeEvent(e,p,g.handle),delete l[p])}else for(p in l)j.event.remove(e,p+t[u],n,r,!0);j.isEmptyObject(l)&&X.remove(e,"handle events")}},dispatch:function(e){var t,n,r,a,i,o,s=j.event.fix(e),l=new Array(arguments.length),u=(X.get(this,"events")||{})[s.type]||[],c=j.event.special[s.type]||{};for(l[0]=s,t=1;t=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==e.type||!0!==u.disabled)){for(i=[],o={},n=0;n-1:j.find(a,this,null,[u]).length),o[a]&&i.push(r);i.length&&s.push({elem:u,handlers:i})}return u=this,l\x20\t\r\n\f]*)[^>]*)\/>/gi,ze=/\s*$/g;function De(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&j(e).children("tbody")[0]||e}function Oe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Ne(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Re(e,t){var n,r,a,i,o,s,l,u;if(1===t.nodeType){if(X.hasData(e)&&(i=X.access(e),o=X.set(t,i),u=i.events))for(a in delete o.handle,o.events={},u)for(n=0,r=u[a].length;n1&&"string"==typeof f&&!y.checkClone&&Ae.test(f))return e.each(function(a){var i=e.eq(a);m&&(t[0]=f.call(this,a,i.html())),qe(i,t,n,r)});if(h&&(i=(a=ve(t,e[0].ownerDocument,!1,e,r)).firstChild,1===a.childNodes.length&&(a=i),i||r)){for(s=(o=j.map(ge(a,"script"),Oe)).length;d")},clone:function(e,t,n){var r,a,i,o,s=e.cloneNode(!0),l=j.contains(e.ownerDocument,e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||j.isXMLDoc(e)))for(o=ge(s),r=0,a=(i=ge(e)).length;r0&&ye(o,!l&&ge(e,"script")),s},cleanData:function(e){for(var t,n,r,a=j.event.special,i=0;void 0!==(n=e[i]);i++)if(Y(n)){if(t=n[X.expando]){if(t.events)for(r in t.events)a[r]?j.event.remove(n,r):j.removeEvent(n,r,t.handle);n[X.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),j.fn.extend({detach:function(e){return Me(this,e,!0)},remove:function(e){return Me(this,e)},text:function(e){return K(this,function(e){return void 0===e?j.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return qe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||De(this,e).appendChild(e)})},prepend:function(){return qe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=De(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return qe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return qe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(j.cleanData(ge(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return j.clone(this,e,t)})},html:function(e){return K(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ze.test(e)&&!me[(pe.exec(e)||["",""])[1].toLowerCase()]){e=j.htmlPrefilter(e);try{for(;n=0&&(l+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-i-l-s-.5))),l}function Je(e,t,n){var r=Le(e),a=Ue(e,t,r),i="border-box"===j.css(e,"boxSizing",!1,r),o=i;if(Be.test(a)){if(!n)return a;a="auto"}return o=o&&(y.boxSizingReliable()||a===e.style[t]),("auto"===a||!parseFloat(a)&&"inline"===j.css(e,"display",!1,r))&&(a=e["offset"+t[0].toUpperCase()+t.slice(1)],o=!0),(a=parseFloat(a)||0)+Xe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function et(e,t,n,r,a){return new et.prototype.init(e,t,n,r,a)}j.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Ue(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var a,i,o,s=$(t),l=Ke.test(t),u=e.style;if(l||(t=Ye(s)),o=j.cssHooks[t]||j.cssHooks[s],void 0===n)return o&&"get"in o&&void 0!==(a=o.get(e,!1,r))?a:u[t];"string"===(i=typeof n)&&(a=ae.exec(n))&&a[1]&&(n=le(e,t,a),i="number"),null!=n&&n==n&&("number"===i&&(n+=a&&a[3]||(j.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),o&&"set"in o&&void 0===(n=o.set(e,n,r))||(l?u.setProperty(t,n):u[t]=n))}},css:function(e,t,n,r){var a,i,o,s=$(t);return Ke.test(t)||(t=Ye(s)),(o=j.cssHooks[t]||j.cssHooks[s])&&"get"in o&&(a=o.get(e,!0,n)),void 0===a&&(a=Ue(e,t,r)),"normal"===a&&t in Ge&&(a=Ge[t]),""===n||n?(i=parseFloat(a),!0===n||isFinite(i)?i||0:a):a}}),j.each(["height","width"],function(e,t){j.cssHooks[t]={get:function(e,n,r){if(n)return!He.test(j.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,t,r):se(e,We,function(){return Je(e,t,r)})},set:function(e,n,r){var a,i=Le(e),o="border-box"===j.css(e,"boxSizing",!1,i),s=r&&Xe(e,t,r,o,i);return o&&y.scrollboxSize()===i.position&&(s-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(i[t])-Xe(e,t,"border",!1,i)-.5)),s&&(a=ae.exec(n))&&"px"!==(a[3]||"px")&&(e.style[t]=n,n=j.css(e,t)),Ze(0,n,s)}}}),j.cssHooks.marginLeft=Ve(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Ue(e,"marginLeft"))||e.getBoundingClientRect().left-se(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),j.each({margin:"",padding:"",border:"Width"},function(e,t){j.cssHooks[e+t]={expand:function(n){for(var r=0,a={},i="string"==typeof n?n.split(" "):[n];r<4;r++)a[e+ie[r]+t]=i[r]||i[r-2]||i[0];return a}},"margin"!==e&&(j.cssHooks[e+t].set=Ze)}),j.fn.extend({css:function(e,t){return K(this,function(e,t,n){var r,a,i={},o=0;if(Array.isArray(t)){for(r=Le(e),a=t.length;o1)}}),j.Tween=et,et.prototype={constructor:et,init:function(e,t,n,r,a,i){this.elem=e,this.prop=n,this.easing=a||j.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=i||(j.cssNumber[n]?"":"px")},cur:function(){var e=et.propHooks[this.prop];return e&&e.get?e.get(this):et.propHooks._default.get(this)},run:function(e){var t,n=et.propHooks[this.prop];return this.options.duration?this.pos=t=j.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):et.propHooks._default.set(this),this}},et.prototype.init.prototype=et.prototype,et.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=j.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){j.fx.step[e.prop]?j.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[j.cssProps[e.prop]]&&!j.cssHooks[e.prop]?e.elem[e.prop]=e.now:j.style(e.elem,e.prop,e.now+e.unit)}}},et.propHooks.scrollTop=et.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},j.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},j.fx=et.prototype.init,j.fx.step={};var tt,nt,rt=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function it(){nt&&(!1===o.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(it):n.setTimeout(it,j.fx.interval),j.fx.tick())}function ot(){return n.setTimeout(function(){tt=void 0}),tt=Date.now()}function st(e,t){var n,r=0,a={height:e};for(t=t?1:0;r<4;r+=2-t)a["margin"+(n=ie[r])]=a["padding"+n]=e;return t&&(a.opacity=a.width=e),a}function lt(e,t,n){for(var r,a=(ut.tweeners[t]||[]).concat(ut.tweeners["*"]),i=0,o=a.length;i1)},removeAttr:function(e){return this.each(function(){j.removeAttr(this,e)})}}),j.extend({attr:function(e,t,n){var r,a,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return void 0===e.getAttribute?j.prop(e,t,n):(1===i&&j.isXMLDoc(e)||(a=j.attrHooks[t.toLowerCase()]||(j.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void j.removeAttr(e,t):a&&"set"in a&&void 0!==(r=a.set(e,n,t))?r:(e.setAttribute(t,n+""),n):a&&"get"in a&&null!==(r=a.get(e,t))?r:null==(r=j.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,a=t&&t.match(M);if(a&&1===e.nodeType)for(;n=a[r++];)e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?j.removeAttr(e,n):e.setAttribute(n,n),n}},j.each(j.expr.match.bool.source.match(/\w+/g),function(e,t){var n=dt[t]||j.find.attr;dt[t]=function(e,t,r){var a,i,o=t.toLowerCase();return r||(i=dt[o],dt[o]=a,a=null!=n(e,t,r)?o:null,dt[o]=i),a}});var ht=/^(?:input|select|textarea|button)$/i,pt=/^(?:a|area)$/i;function ft(e){return(e.match(M)||[]).join(" ")}function mt(e){return e.getAttribute&&e.getAttribute("class")||""}function gt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(M)||[]}j.fn.extend({prop:function(e,t){return K(this,j.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[j.propFix[e]||e]})}}),j.extend({prop:function(e,t,n){var r,a,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&j.isXMLDoc(e)||(t=j.propFix[t]||t,a=j.propHooks[t]),void 0!==n?a&&"set"in a&&void 0!==(r=a.set(e,n,t))?r:e[t]=n:a&&"get"in a&&null!==(r=a.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=j.find.attr(e,"tabindex");return t?parseInt(t,10):ht.test(e.nodeName)||pt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),y.optSelected||(j.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),j.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){j.propFix[this.toLowerCase()]=this}),j.fn.extend({addClass:function(e){var t,n,r,a,i,o,s,l=0;if(b(e))return this.each(function(t){j(this).addClass(e.call(this,t,mt(this)))});if((t=gt(e)).length)for(;n=this[l++];)if(a=mt(n),r=1===n.nodeType&&" "+ft(a)+" "){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");a!==(s=ft(r))&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,a,i,o,s,l=0;if(b(e))return this.each(function(t){j(this).removeClass(e.call(this,t,mt(this)))});if(!arguments.length)return this.attr("class","");if((t=gt(e)).length)for(;n=this[l++];)if(a=mt(n),r=1===n.nodeType&&" "+ft(a)+" "){for(o=0;i=t[o++];)for(;r.indexOf(" "+i+" ")>-1;)r=r.replace(" "+i+" "," ");a!==(s=ft(r))&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"==typeof t&&r?t?this.addClass(e):this.removeClass(e):b(e)?this.each(function(n){j(this).toggleClass(e.call(this,n,mt(this),t),t)}):this.each(function(){var t,a,i,o;if(r)for(a=0,i=j(this),o=gt(e);t=o[a++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||((t=mt(this))&&X.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":X.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+ft(mt(n))+" ").indexOf(t)>-1)return!0;return!1}});var yt=/\r/g;j.fn.extend({val:function(e){var t,n,r,a=this[0];return arguments.length?(r=b(e),this.each(function(n){var a;1===this.nodeType&&(null==(a=r?e.call(this,n,j(this).val()):e)?a="":"number"==typeof a?a+="":Array.isArray(a)&&(a=j.map(a,function(e){return null==e?"":e+""})),(t=j.valHooks[this.type]||j.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,a,"value")||(this.value=a))})):a?(t=j.valHooks[a.type]||j.valHooks[a.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(a,"value"))?n:"string"==typeof(n=a.value)?n.replace(yt,""):null==n?"":n:void 0}}),j.extend({valHooks:{option:{get:function(e){var t=j.find.attr(e,"value");return null!=t?t:ft(j.text(e))}},select:{get:function(e){var t,n,r,a=e.options,i=e.selectedIndex,o="select-one"===e.type,s=o?null:[],l=o?i+1:a.length;for(r=i<0?l:o?i:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),j.each(["radio","checkbox"],function(){j.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=j.inArray(j(e).val(),t)>-1}},y.checkOn||(j.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in n;var bt=/^(?:focusinfocus|focusoutblur)$/,vt=function(e){e.stopPropagation()};j.extend(j.event,{trigger:function(e,t,r,a){var i,s,l,u,c,d,h,p,m=[r||o],g=f.call(e,"type")?e.type:e,y=f.call(e,"namespace")?e.namespace.split("."):[];if(s=p=l=r=r||o,3!==r.nodeType&&8!==r.nodeType&&!bt.test(g+j.event.triggered)&&(g.indexOf(".")>-1&&(g=(y=g.split(".")).shift(),y.sort()),c=g.indexOf(":")<0&&"on"+g,(e=e[j.expando]?e:new j.Event(g,"object"==typeof e&&e)).isTrigger=a?2:3,e.namespace=y.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:j.makeArray(t,[e]),h=j.event.special[g]||{},a||!h.trigger||!1!==h.trigger.apply(r,t))){if(!a&&!h.noBubble&&!v(r)){for(u=h.delegateType||g,bt.test(u+g)||(s=s.parentNode);s;s=s.parentNode)m.push(s),l=s;l===(r.ownerDocument||o)&&m.push(l.defaultView||l.parentWindow||n)}for(i=0;(s=m[i++])&&!e.isPropagationStopped();)p=s,e.type=i>1?u:h.bindType||g,(d=(X.get(s,"events")||{})[e.type]&&X.get(s,"handle"))&&d.apply(s,t),(d=c&&s[c])&&d.apply&&Y(s)&&(e.result=d.apply(s,t),!1===e.result&&e.preventDefault());return e.type=g,a||e.isDefaultPrevented()||h._default&&!1!==h._default.apply(m.pop(),t)||!Y(r)||c&&b(r[g])&&!v(r)&&((l=r[c])&&(r[c]=null),j.event.triggered=g,e.isPropagationStopped()&&p.addEventListener(g,vt),r[g](),e.isPropagationStopped()&&p.removeEventListener(g,vt),j.event.triggered=void 0,l&&(r[c]=l)),e.result}},simulate:function(e,t,n){var r=j.extend(new j.Event,n,{type:e,isSimulated:!0});j.event.trigger(r,null,t)}}),j.fn.extend({trigger:function(e,t){return this.each(function(){j.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return j.event.trigger(e,t,n,!0)}}),y.focusin||j.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){j.event.simulate(t,e.target,j.event.fix(e))};j.event.special[t]={setup:function(){var r=this.ownerDocument||this,a=X.access(r,t);a||r.addEventListener(e,n,!0),X.access(r,t,(a||0)+1)},teardown:function(){var r=this.ownerDocument||this,a=X.access(r,t)-1;a?X.access(r,t,a):(r.removeEventListener(e,n,!0),X.remove(r,t))}}});var kt=n.location,wt=Date.now(),_t=/\?/;j.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||j.error("Invalid XML: "+e),t};var jt=/\[\]$/,Et=/\r?\n/g,xt=/^(?:submit|button|image|reset|file)$/i,Ct=/^(?:input|select|textarea|keygen)/i;function St(e,t,n,r){var a;if(Array.isArray(t))j.each(t,function(t,a){n||jt.test(e)?r(e,a):St(e+"["+("object"==typeof a&&null!=a?t:"")+"]",a,n,r)});else if(n||"object"!==_(t))r(e,t);else for(a in t)St(e+"["+a+"]",t[a],n,r)}j.param=function(e,t){var n,r=[],a=function(e,t){var n=b(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!j.isPlainObject(e))j.each(e,function(){a(this.name,this.value)});else for(n in e)St(n,e[n],t,a);return r.join("&")},j.fn.extend({serialize:function(){return j.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=j.prop(this,"elements");return e?j.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!j(this).is(":disabled")&&Ct.test(this.nodeName)&&!xt.test(e)&&(this.checked||!he.test(e))}).map(function(e,t){var n=j(this).val();return null==n?null:Array.isArray(n)?j.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Tt=/%20/g,zt=/#.*$/,At=/([?&])_=[^&]*/,It=/^(.*?):[ \t]*([^\r\n]*)$/gm,Dt=/^(?:GET|HEAD)$/,Ot=/^\/\//,Nt={},Rt={},Pt="*/".concat("*"),qt=o.createElement("a");function Mt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,a=0,i=t.toLowerCase().match(M)||[];if(b(n))for(;r=i[a++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Bt(e,t,n,r){var a={},i=e===Rt;function o(s){var l;return a[s]=!0,j.each(e[s]||[],function(e,s){var u=s(t,n,r);return"string"!=typeof u||i||a[u]?i?!(l=u):void 0:(t.dataTypes.unshift(u),o(u),!1)}),l}return o(t.dataTypes[0])||!a["*"]&&o("*")}function Lt(e,t){var n,r,a=j.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((a[n]?e:r||(r={}))[n]=t[n]);return r&&j.extend(!0,e,r),e}qt.href=kt.href,j.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:kt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(kt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Pt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":j.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Lt(Lt(e,j.ajaxSettings),t):Lt(j.ajaxSettings,e)},ajaxPrefilter:Mt(Nt),ajaxTransport:Mt(Rt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,a,i,s,l,u,c,d,h,p,f=j.ajaxSetup({},t),m=f.context||f,g=f.context&&(m.nodeType||m.jquery)?j(m):j.event,y=j.Deferred(),b=j.Callbacks("once memory"),v=f.statusCode||{},k={},w={},_="canceled",E={readyState:0,getResponseHeader:function(e){var t;if(c){if(!s)for(s={};t=It.exec(i);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return c?i:null},setRequestHeader:function(e,t){return null==c&&(e=w[e.toLowerCase()]=w[e.toLowerCase()]||e,k[e]=t),this},overrideMimeType:function(e){return null==c&&(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(c)E.always(e[E.status]);else for(t in e)v[t]=[v[t],e[t]];return this},abort:function(e){var t=e||_;return r&&r.abort(t),x(0,t),this}};if(y.promise(E),f.url=((e||f.url||kt.href)+"").replace(Ot,kt.protocol+"//"),f.type=t.method||t.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(M)||[""],null==f.crossDomain){u=o.createElement("a");try{u.href=f.url,u.href=u.href,f.crossDomain=qt.protocol+"//"+qt.host!=u.protocol+"//"+u.host}catch(e){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!=typeof f.data&&(f.data=j.param(f.data,f.traditional)),Bt(Nt,f,t,E),c)return E;for(h in(d=j.event&&f.global)&&0==j.active++&&j.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Dt.test(f.type),a=f.url.replace(zt,""),f.hasContent?f.data&&f.processData&&0===(f.contentType||"").indexOf("application/x-www-form-urlencoded")&&(f.data=f.data.replace(Tt,"+")):(p=f.url.slice(a.length),f.data&&(f.processData||"string"==typeof f.data)&&(a+=(_t.test(a)?"&":"?")+f.data,delete f.data),!1===f.cache&&(a=a.replace(At,"$1"),p=(_t.test(a)?"&":"?")+"_="+wt+++p),f.url=a+p),f.ifModified&&(j.lastModified[a]&&E.setRequestHeader("If-Modified-Since",j.lastModified[a]),j.etag[a]&&E.setRequestHeader("If-None-Match",j.etag[a])),(f.data&&f.hasContent&&!1!==f.contentType||t.contentType)&&E.setRequestHeader("Content-Type",f.contentType),E.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+Pt+"; q=0.01":""):f.accepts["*"]),f.headers)E.setRequestHeader(h,f.headers[h]);if(f.beforeSend&&(!1===f.beforeSend.call(m,E,f)||c))return E.abort();if(_="abort",b.add(f.complete),E.done(f.success),E.fail(f.error),r=Bt(Rt,f,t,E)){if(E.readyState=1,d&&g.trigger("ajaxSend",[E,f]),c)return E;f.async&&f.timeout>0&&(l=n.setTimeout(function(){E.abort("timeout")},f.timeout));try{c=!1,r.send(k,x)}catch(e){if(c)throw e;x(-1,e)}}else x(-1,"No Transport");function x(e,t,o,s){var u,h,p,k,w,_=t;c||(c=!0,l&&n.clearTimeout(l),r=void 0,i=s||"",E.readyState=e>0?4:0,u=e>=200&&e<300||304===e,o&&(k=function(e,t,n){for(var r,a,i,o,s=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(a in s)if(s[a]&&s[a].test(r)){l.unshift(a);break}if(l[0]in n)i=l[0];else{for(a in n){if(!l[0]||e.converters[a+" "+l[0]]){i=a;break}o||(o=a)}i=i||o}if(i)return i!==l[0]&&l.unshift(i),n[i]}(f,E,o)),k=function(e,t,n,r){var a,i,o,s,l,u={},c=e.dataTypes.slice();if(c[1])for(o in e.converters)u[o.toLowerCase()]=e.converters[o];for(i=c.shift();i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=i,i=c.shift())if("*"===i)i=l;else if("*"!==l&&l!==i){if(!(o=u[l+" "+i]||u["* "+i]))for(a in u)if((s=a.split(" "))[1]===i&&(o=u[l+" "+s[0]]||u["* "+s[0]])){!0===o?o=u[a]:!0!==u[a]&&(i=s[0],c.unshift(s[1]));break}if(!0!==o)if(o&&e.throws)t=o(t);else try{t=o(t)}catch(e){return{state:"parsererror",error:o?e:"No conversion from "+l+" to "+i}}}return{state:"success",data:t}}(f,k,E,u),u?(f.ifModified&&((w=E.getResponseHeader("Last-Modified"))&&(j.lastModified[a]=w),(w=E.getResponseHeader("etag"))&&(j.etag[a]=w)),204===e||"HEAD"===f.type?_="nocontent":304===e?_="notmodified":(_=k.state,h=k.data,u=!(p=k.error))):(p=_,!e&&_||(_="error",e<0&&(e=0))),E.status=e,E.statusText=(t||_)+"",u?y.resolveWith(m,[h,_,E]):y.rejectWith(m,[E,_,p]),E.statusCode(v),v=void 0,d&&g.trigger(u?"ajaxSuccess":"ajaxError",[E,f,u?h:p]),b.fireWith(m,[E,_]),d&&(g.trigger("ajaxComplete",[E,f]),--j.active||j.event.trigger("ajaxStop")))}return E},getJSON:function(e,t,n){return j.get(e,t,n,"json")},getScript:function(e,t){return j.get(e,void 0,t,"script")}}),j.each(["get","post"],function(e,t){j[t]=function(e,n,r,a){return b(n)&&(a=a||r,r=n,n=void 0),j.ajax(j.extend({url:e,type:t,dataType:a,data:n,success:r},j.isPlainObject(e)&&e))}}),j._evalUrl=function(e){return j.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},j.fn.extend({wrapAll:function(e){var t;return this[0]&&(b(e)&&(e=e.call(this[0])),t=j(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return b(e)?this.each(function(t){j(this).wrapInner(e.call(this,t))}):this.each(function(){var t=j(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=b(e);return this.each(function(n){j(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){j(this).replaceWith(this.childNodes)}),this}}),j.expr.pseudos.hidden=function(e){return!j.expr.pseudos.visible(e)},j.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},j.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Ft={0:200,1223:204},Ut=j.ajaxSettings.xhr();y.cors=!!Ut&&"withCredentials"in Ut,y.ajax=Ut=!!Ut,j.ajaxTransport(function(e){var t,r;if(y.cors||Ut&&!e.crossDomain)return{send:function(a,i){var o,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(o in e.xhrFields)s[o]=e.xhrFields[o];for(o in e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||a["X-Requested-With"]||(a["X-Requested-With"]="XMLHttpRequest"),a)s.setRequestHeader(o,a[o]);t=function(e){return function(){t&&(t=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?i(0,"error"):i(s.status,s.statusText):i(Ft[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),r=s.onerror=s.ontimeout=t("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout(function(){t&&r()})},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}}),j.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),j.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return j.globalEval(e),e}}}),j.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),j.ajaxTransport("script",function(e){var t,n;if(e.crossDomain)return{send:function(r,a){t=j(" + diff --git a/index.html b/index.html index bd70e689..3c36c623 100644 --- a/index.html +++ b/index.html @@ -13,7 +13,7 @@ - + @@ -26,6 +26,6 @@ - + diff --git a/locales/cs/messages.json b/locales/cs/messages.json index aebc232e..bf4a3cf0 100644 --- a/locales/cs/messages.json +++ b/locales/cs/messages.json @@ -781,7 +781,7 @@ "message": "Exportovat přihlašovací údaje" }, "fileFormat": { - "message": "File Format" + "message": "Formát souboru" }, "exportSuccess": { "message": "Data trezoru byla exportována" @@ -1330,7 +1330,7 @@ "message": "No websites were found in your vault with a missing two-factor authentication configuration." }, "instructions": { - "message": "Instructions" + "message": "Instrukce" }, "exposedPasswordsReport": { "message": "Exposed Passwords Report" @@ -1489,7 +1489,7 @@ "message": "Povyšte svůj účet na prémiové členství a odemkněte další skvělé funkce." }, "premiumSignUpStorage": { - "message": "1 GB šifrovaného uložiště." + "message": "1 GB šifrovaného uložiště pro přílohy." }, "premiumSignUpTwoStep": { "message": "Další možnosti dvoufázového přihlášení, jako je například YubiKey, FIDO U2F a Duo." diff --git a/locales/de/messages.json b/locales/de/messages.json index 3ff63efa..0a0d0e7e 100644 --- a/locales/de/messages.json +++ b/locales/de/messages.json @@ -833,7 +833,7 @@ "message": "Code" }, "changeEmailDesc": { - "message": "Wir haben Ihnen einen Bestätigungscode an $EMAIL$ gesendet. Bitte prüfen Sie Ihre E-Mails und geben Sie den Code zur Bestätigung der E-Mail-Änderung unten ein.", + "message": "Wir haben dir einen Bestätigungscode an $EMAIL$ gesendet. Bitte prüfe deine E-Mails und gebe den Code zur Bestätigung der E-Mail-Änderung unten ein.", "placeholders": { "email": { "content": "$1", diff --git a/locales/ko/messages.json b/locales/ko/messages.json index d38a9040..801e10e5 100644 --- a/locales/ko/messages.json +++ b/locales/ko/messages.json @@ -10,7 +10,7 @@ } }, "whatTypeOfItem": { - "message": "What type of item is this?" + "message": "항목의 유형이 무엇입니까?" }, "name": { "message": "이름" @@ -38,7 +38,7 @@ "message": "비밀번호" }, "passphrase": { - "message": "Passphrase" + "message": "패스프레이즈" }, "notes": { "message": "메모" @@ -164,7 +164,7 @@ "message": "제거" }, "unassigned": { - "message": "Unassigned" + "message": "지정되지 않음" }, "noneFolder": { "message": "폴더 없음", @@ -491,7 +491,7 @@ "message": "정말 로그아웃하시겠습니까?" }, "logOut": { - "message": "Log Out" + "message": "로그아웃" }, "ok": { "message": "확인" @@ -515,10 +515,10 @@ "message": "보내기" }, "emailAddressDesc": { - "message": "You'll use your email address to log in." + "message": "로그인에 이메일 주소를 사용하게 될 것입니다." }, "yourName": { - "message": "Your Name" + "message": "이름" }, "yourNameDesc": { "message": "What should we call you?" @@ -596,25 +596,25 @@ "message": "항목이 없습니다." }, "noCollectionsInList": { - "message": "There are no collections to list." + "message": "콜렉션이 없습니다." }, "noGroupsInList": { "message": "그룹이 없습니다." }, "noUsersInList": { - "message": "There are no users to list." + "message": "유저가 없습니다." }, "noEventsInList": { - "message": "There are no events to list." + "message": "이벤트가 없습니다." }, "newOrganization": { "message": "새 조직" }, "noOrganizationsList": { - "message": "You do not belong to any organizations. Organizations allow you to securely share items with other users." + "message": "당신은 어떤 조직에도 속해있지 않습니다. 조직은 다른 사용자들과 안전하게 항목을 공유할 수 있게 해줍니다." }, "versionNumber": { - "message": "Version $VERSION_NUMBER$", + "message": "버전 $VERSION_NUMBER$", "placeholders": { "version_number": { "content": "$1", @@ -719,16 +719,16 @@ "message": "조직" }, "shareDesc": { - "message": "Choose an organization that you wish to share this item with. Sharing transfers ownership of the item to the organization. You will no longer be the direct owner of this item once it has been shared." + "message": "이 항목을 공유할 조직을 선택하십시오. 항목이 공유되면 소유권이 조직으로 이전됩니다. 일단 공유가 되면, 더는 항목의 직접적인 소유자가 아니게 됩니다." }, "shareManyDesc": { - "message": "Choose an organization that you wish to share these items with. Sharing transfers ownership of the items to the organization. You will no longer be the direct owner of these items once they have been shared." + "message": "이 항목들을 공유할 조직을 선택하십시오. 항목들이 공유되면 소유권이 조직으로 이전됩니다. 일단 공유가 되면, 더는 항목들의 직접적인 소유자가 아니게 됩니다." }, "collectionsDesc": { - "message": "Edit the collections that this item is being shared with. Only organization users with access to these collections will be able to see this item." + "message": "이 항목이 공유될 콜렉션을 수정하십시오. 이 콜렉션에 접근할 수 있는 조직 사용자만 이 항목을 볼 수 있습니다." }, "deleteSelectedItemsDesc": { - "message": "You have selected $COUNT$ item(s) to delete. Are you sure you want to delete all of these items?", + "message": "삭제를 위해 $COUNT$ 개의 항목이 선택됨. 정말로 이 항목들을 삭제하시겠습니까?", "placeholders": { "count": { "content": "$1", @@ -737,7 +737,7 @@ } }, "moveSelectedItemsDesc": { - "message": "Choose a folder that you would like to move the $COUNT$ selected item(s) to.", + "message": "선택된 $COUNT$ 개의 항목을 옮길 폴더를 선택하십시오.", "placeholders": { "count": { "content": "$1", @@ -746,7 +746,7 @@ } }, "shareSelectedItemsCountDesc": { - "message": "You have selected $COUNT$ item(s). $SHAREABLE_COUNT$ items are sharable, $NONSHAREABLE_COUNT$ are not.", + "message": "$COUNT$ 개의 항목 선택됨. $SHAREABLE_COUNT$ 개의 항목은 공유 가능하지만, $NONSHAREABLE_COUNT$ 개의 항목은 공유 불가능합니다.", "placeholders": { "count": { "content": "$1", @@ -781,7 +781,7 @@ "message": "보관함 내보내기" }, "fileFormat": { - "message": "File Format" + "message": "파일 형식" }, "exportSuccess": { "message": "보관함 데이터를 내보냈습니다." @@ -806,10 +806,10 @@ "message": "길이" }, "numWords": { - "message": "Number of Words" + "message": "단어 수" }, "wordSeparator": { - "message": "Word Separator" + "message": "구분 기호" }, "passwordHistory": { "message": "비밀번호 변경 기록" @@ -896,34 +896,34 @@ } }, "changeKdf": { - "message": "Change KDF" + "message": "KDF 변경" }, "encKeySettingsChanged": { "message": "암호화 키 설정 변경됨" }, "dangerZone": { - "message": "Danger Zone" + "message": "주의" }, "dangerZoneDesc": { - "message": "Careful, these actions are not reversible!" + "message": "주의, 이 행동들은 되돌릴 수 없음!" }, "deauthorizeSessions": { - "message": "Deauthorize Sessions" + "message": "세션 해제" }, "deauthorizeSessionsDesc": { "message": "Concerned your account is logged in on another device? Proceed below to deauthorize all computers or devices that you have previously used. This security step is recommended if you previously used a public PC or accidentally saved your password on a device that isn't yours. This step will also clear all previously remembered two-step login sessions." }, "deauthorizeSessionsWarning": { - "message": "Proceeding will also log you out of your current session, requiring you to log back in. You will also be prompted for two-step login again, if enabled. Active sessions on other devices may continue to remain active for up to one hour." + "message": "계속 진행하면, 현재 세션 또한 로그아웃 되므로 다시 로그인하여야 합니다. 2단계 로그인이 활성화 된 경우 다시 요구하는 메세지가 표시됩니다. 다른 기기의 활성화 된 세션은 최대 1시간 동안 유지 될 수 있습니다." }, "sessionsDeauthorized": { - "message": "All Sessions Deauthorized" + "message": "모든 세션 해제 됨" }, "purgeVault": { - "message": "Purge Vault" + "message": "보관함 삭제" }, "purgedOrganizationVault": { - "message": "Purged organization vault." + "message": "삭제 된 조직 보관함" }, "purgeVaultDesc": { "message": "Proceed below to delete all items and folders in your vault. Items that belong to an organization that you share with will not be deleted." @@ -935,22 +935,22 @@ "message": "Purging your vault is permanent. It cannot be undone." }, "vaultPurged": { - "message": "Your vault has been purged." + "message": "보관함이 삭제되었습니다." }, "deleteAccount": { "message": "계정 삭제" }, "deleteAccountDesc": { - "message": "Proceed below to delete your account and all associated data." + "message": "귀하의 계정과 저장된 데이터들을 삭제하려면 아래를 계속 진행하십시오." }, "deleteAccountWarning": { - "message": "Deleting your account is permanent. It cannot be undone." + "message": "계정 삭제는 영구적이며 되돌릴 수 없습니다." }, "accountDeleted": { "message": "계정 삭제됨" }, "accountDeletedDesc": { - "message": "Your account has been closed and all associated data has been deleted." + "message": "당신의 계정과 연관된 모든 데이터들이 삭제되었습니다." }, "myAccount": { "message": "내 계정" @@ -962,19 +962,19 @@ "message": "데이터 가져오기" }, "importSuccess": { - "message": "Data has been successfully imported into your vault." + "message": "데이터를 보관함으로 성공적으로 불러왔습니다." }, "importFormatError": { - "message": "Data is not formatted correctly. Please check your import file and try again." + "message": "데이터의 포맷이 올바르지 않습니다. 불러올 파일을 확인하고 다시 시도해 주십시오." }, "importNothingError": { "message": "Nothing was imported." }, "selectFormat": { - "message": "Select the format of the import file" + "message": "불러올 파일의 포맷" }, "selectImportFile": { - "message": "Select the import file" + "message": "불러올 파일" }, "orCopyPasteFileContents": { "message": "or copy\/paste the import file contents" @@ -1011,11 +1011,11 @@ "message": "웹 사이트 아이콘을 사용하면 보관함 각 항목 옆에 이미지를 보여줍니다." }, "enableGravatars": { - "message": "Enable Gravatars", + "message": "Gravatar 사용", "description": "'Gravatar' is the name of a service. See www.gravatar.com" }, "enableGravatarsDesc": { - "message": "Use avatar images loaded from gravatar.com." + "message": "gravatar.com의 아바타 이미지를 사용." }, "default": { "message": "기본값" @@ -1039,7 +1039,7 @@ "message": "포함" }, "customize": { - "message": "Customize" + "message": "사용자 지정" }, "newCustomDomain": { "message": "새 사용자 지정 도메인" @@ -1072,17 +1072,17 @@ "message": "Enabling two-step login can permanently lock you out of your Bitwarden account. A recovery code allows you to access your account in the event that you can no longer use your normal two-step login provider (ex. you lose your device). Bitwarden support will not be able to assist you if you lose access to your account. We recommend you write down or print the recovery code and keep it in a safe place." }, "viewRecoveryCode": { - "message": "View Recovery Code" + "message": "복구 코드" }, "providers": { "message": "공급자", "description": "Two-step login providers such as YubiKey, Duo, Authenticator apps, Email, etc." }, "enable": { - "message": "Enable" + "message": "활성화" }, "enabled": { - "message": "Enabled" + "message": "활성화됨" }, "premium": { "message": "프리미엄", @@ -1107,7 +1107,7 @@ "message": "관리" }, "disable": { - "message": "Disable" + "message": "비활성화" }, "twoStepLoginProviderEnabled": { "message": "This two-step login provider is enabled on your account." diff --git a/locales/pl/messages.json b/locales/pl/messages.json index 2ffdb2c7..16e9ba47 100644 --- a/locales/pl/messages.json +++ b/locales/pl/messages.json @@ -2034,7 +2034,7 @@ } }, "userUsingTwoStep": { - "message": "This user is using two-step login to protect their account." + "message": "Ten użytkownik stosuje logowanie dwustopniowe w celu ochrony swojego konta." }, "userAccessAllItems": { "message": "Ten użytkownik może otwierać i modyfikować wszystkie elementy." diff --git a/u2f-connector.html b/u2f-connector.html index c80ac3fc..e28e00a6 100644 --- a/u2f-connector.html +++ b/u2f-connector.html @@ -7,6 +7,6 @@ - +