From 854160af1cccff47ac0087c3ab38fa436d60c06f Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Mon, 26 Nov 2018 12:40:19 -0500 Subject: [PATCH] Updates --- ...180bfd6093a5fe21bcd0.css => main.1358407f67f0f640c775.css} | 2 +- ...93a5fe21bcd0.css.map => main.1358407f67f0f640c775.css.map} | 2 +- ...n.180bfd6093a5fe21bcd0.js => main.1358407f67f0f640c775.js} | 4 ++-- app/main.1358407f67f0f640c775.js.map | 1 + app/main.180bfd6093a5fe21bcd0.js.map | 1 - ...bfd6093a5fe21bcd0.js => polyfills.1358407f67f0f640c775.js} | 2 +- ...5fe21bcd0.js.map => polyfills.1358407f67f0f640c775.js.map} | 2 +- ...180bfd6093a5fe21bcd0.js => vendor.1358407f67f0f640c775.js} | 4 ++-- ...93a5fe21bcd0.js.map => vendor.1358407f67f0f640c775.js.map} | 2 +- ....180bfd6093a5fe21bcd0.css => duo.1358407f67f0f640c775.css} | 2 +- ...093a5fe21bcd0.css.map => duo.1358407f67f0f640c775.css.map} | 2 +- ...uo.180bfd6093a5fe21bcd0.js => duo.1358407f67f0f640c775.js} | 2 +- ...d6093a5fe21bcd0.js.map => duo.1358407f67f0f640c775.js.map} | 2 +- ...2f.180bfd6093a5fe21bcd0.js => u2f.1358407f67f0f640c775.js} | 2 +- ...d6093a5fe21bcd0.js.map => u2f.1358407f67f0f640c775.js.map} | 2 +- duo-connector.html | 4 ++-- index.html | 4 ++-- u2f-connector.html | 2 +- 18 files changed, 21 insertions(+), 21 deletions(-) rename app/{main.180bfd6093a5fe21bcd0.css => main.1358407f67f0f640c775.css} (99%) rename app/{main.180bfd6093a5fe21bcd0.css.map => main.1358407f67f0f640c775.css.map} (58%) rename app/{main.180bfd6093a5fe21bcd0.js => main.1358407f67f0f640c775.js} (59%) create mode 100644 app/main.1358407f67f0f640c775.js.map delete mode 100644 app/main.180bfd6093a5fe21bcd0.js.map rename app/{polyfills.180bfd6093a5fe21bcd0.js => polyfills.1358407f67f0f640c775.js} (99%) rename app/{polyfills.180bfd6093a5fe21bcd0.js.map => polyfills.1358407f67f0f640c775.js.map} (99%) rename app/{vendor.180bfd6093a5fe21bcd0.js => vendor.1358407f67f0f640c775.js} (99%) rename app/{vendor.180bfd6093a5fe21bcd0.js.map => vendor.1358407f67f0f640c775.js.map} (99%) rename connectors/{duo.180bfd6093a5fe21bcd0.css => duo.1358407f67f0f640c775.css} (80%) rename connectors/{duo.180bfd6093a5fe21bcd0.css.map => duo.1358407f67f0f640c775.css.map} (55%) rename connectors/{duo.180bfd6093a5fe21bcd0.js => duo.1358407f67f0f640c775.js} (99%) rename connectors/{duo.180bfd6093a5fe21bcd0.js.map => duo.1358407f67f0f640c775.js.map} (99%) rename connectors/{u2f.180bfd6093a5fe21bcd0.js => u2f.1358407f67f0f640c775.js} (97%) rename connectors/{u2f.180bfd6093a5fe21bcd0.js.map => u2f.1358407f67f0f640c775.js.map} (99%) diff --git a/app/main.180bfd6093a5fe21bcd0.css b/app/main.1358407f67f0f640c775.css similarity index 99% rename from app/main.180bfd6093a5fe21bcd0.css rename to app/main.1358407f67f0f640c775.css index b4561269..1706e5fe 100644 --- a/app/main.180bfd6093a5fe21bcd0.css +++ b/app/main.1358407f67f0f640c775.css @@ -9725,4 +9725,4 @@ img.logo { .overflow-hidden { overflow: hidden; } -/*# sourceMappingURL=main.180bfd6093a5fe21bcd0.css.map*/ \ No newline at end of file +/*# sourceMappingURL=main.1358407f67f0f640c775.css.map*/ \ No newline at end of file diff --git a/app/main.180bfd6093a5fe21bcd0.css.map b/app/main.1358407f67f0f640c775.css.map similarity index 58% rename from app/main.180bfd6093a5fe21bcd0.css.map rename to app/main.1358407f67f0f640c775.css.map index 8ff29f44..8bd0accb 100644 --- a/app/main.180bfd6093a5fe21bcd0.css.map +++ b/app/main.1358407f67f0f640c775.css.map @@ -1 +1 @@ -{"version":3,"sources":[],"names":[],"mappings":"","file":"app/main.180bfd6093a5fe21bcd0.css","sourceRoot":""} \ No newline at end of file +{"version":3,"sources":[],"names":[],"mappings":"","file":"app/main.1358407f67f0f640c775.css","sourceRoot":""} \ No newline at end of file diff --git a/app/main.180bfd6093a5fe21bcd0.js b/app/main.1358407f67f0f640c775.js similarity index 59% rename from app/main.180bfd6093a5fe21bcd0.js rename to app/main.1358407f67f0f640c775.js index 02cf9144..67b3588e 100644 --- a/app/main.180bfd6093a5fe21bcd0.js +++ b/app/main.1358407f67f0f640c775.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.CryptoService=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.CipherService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(616),u=e(154),o=e(159),r=e(249),i=e(34),a=e(219),s=e(156),d=e(181),c=e(100),p=e(52),f=e(179),v=e(106),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||""===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(119),e(84),e(107).Buffer)},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(5),o=e(35),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=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}),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.FolderService=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(){function n(){}return n.prototype.onClick=function(n){n.preventDefault()},n}();l.StopClickDirective=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.PasswordVerificationRequest=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.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";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});e(0);var t=e(34),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";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";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(237),o=(e(0),e(751)),r=e(34),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});var t=function(){return function(){}}();l.CryptoFunctionService=t},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";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";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;u=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";Object.defineProperty(l,"__esModule",{value:!0});var t=e(52),u=e(551),o=e(552),r=e(553),i=e(554),a=e(555),s=e(557),d=e(558),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(){}}();l.EnvironmentService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Android=0]="Android",n[n.iOS=1]="iOS",n[n.ChromeExtension=2]="ChromeExtension",n[n.FirefoxExtension=3]="FirefoxExtension",n[n.OperaExtension=4]="OperaExtension",n[n.EdgeExtension=5]="EdgeExtension",n[n.WindowsDesktop=6]="WindowsDesktop",n[n.MacOsDesktop=7]="MacOsDesktop",n[n.LinuxDesktop=8]="LinuxDesktop",n[n.ChromeBrowser=9]="ChromeBrowser",n[n.FirefoxBrowser=10]="FirefoxBrowser",n[n.OperaBrowser=11]="OperaBrowser",n[n.EdgeBrowser=12]="EdgeBrowser",n[n.IEBrowser=13]="IEBrowser",n[n.UnknownBrowser=14]="UnknownBrowser",n[n.AndroidAmazon=15]="AndroidAmazon",n[n.UWP=16]="UWP",n[n.SafariBrowser=17]="SafariBrowser",n[n.VivaldiBrowser=18]="VivaldiBrowser",n[n.VivaldiExtension=19]="VivaldiExtension",n[n.SafariExtension=20]="SafariExtension"}(l.DeviceType||(l.DeviceType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(5),o=e(131),r=e(39),i=e(99),a=e(37),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"img",[],[[8,"src",4],[8,"title",0]],null,null,null,null)),t.ɵdid(1,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(2,{"rounded-circle":0})],function(n,l){n(l,1,0,n(l,2,0,l.component.circle))},function(n,l){var e=l.component;n(l,0,0,e.sanitizer.bypassSecurityTrustResourceUrl(e.src),t.ɵinlineInterpolate(1,"",e.data,""))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-avatar",[],null,null,null,d,s)),t.ɵdid(1,638976,null,0,o.AvatarComponent,[r.DomSanitizer,i.CryptoFunctionService,a.StateService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AvatarComponent=s,l.View_AvatarComponent_0=d,l.View_AvatarComponent_Host_0=c;var p=t.ɵccf("app-avatar",o.AvatarComponent,c,{data:"data",email:"email",size:"size",charCount:"charCount",textColor:"textColor",fontSize:"fontSize",fontWeight:"fontWeight",dynamic:"dynamic",circle:"circle"},{},[]);l.AvatarComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(52),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";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(){return function(n){this.id=null,n&&(this.id=n.id,this.revisionDate=n.revisionDate)}}();l.FolderView=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3),e(7);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=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";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){n&&(this.id=n.id,this.organizationId=n.organizationId,this.readOnly=n.readOnly)}}();l.CollectionView=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},enumerable:!0,configurable:!0}),n}();l.LoginView=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});var u=e(159),o=function(n){function l(l,e){void 0===e&&(e=!1);var t=n.call(this)||this;return null==l?t:(t.buildDomainModel(t,l,{id:null,organizationId:null,name:null,readOnly:null},e,["id","organizationId","readOnly"]),t)}return t(l,n),l.prototype.decrypt=function(){return this.decryptObj(new u.CollectionView(this),{name:null},this.organizationId)},l}(e(101).default);l.Collection=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]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});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(47),d=e(160),c=e(4),p=e(13),f=e(20),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,43,"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,19,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"p",[],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,"label",[["for","masterPassword"]],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,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,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.masterPassword=e)&&u);return u},null,null)),t.ɵdid(18,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(19,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(22,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(24,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(25,81920,null,0,s.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","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,["",""])),t.ɵppd(42,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,"");n(l,22,0,"MasterPasswordHash",e.masterPassword);n(l,25,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),"twoStepLoginAuthDesc"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"masterPass"))),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,1).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),"continue"))),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"close")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-verify",[],null,null,null,h,v)),t.ɵdid(1,49152,null,0,d.TwoFactorVerifyComponent,[c.ApiService,o.I18nService,p.ToasterService,f.CryptoService],null,null)],null,null)}l.RenderType_TwoFactorVerifyComponent=v,l.View_TwoFactorVerifyComponent_0=h,l.View_TwoFactorVerifyComponent_Host_0=g;var m=t.ɵccf("app-two-factor-verify",d.TwoFactorVerifyComponent,g,{type:"type",organizationId:"organizationId"},{onAuthed:"onAuthed"},[]);l.TwoFactorVerifyComponentNgFactory=m},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.LockService=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+"";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,S;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 S=o.sent(),console.error(S),[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(41),e(54),e(66),e(11),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(780).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:l.length,t=0;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&&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(20),e(222),e(3),e(7);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(822).ExportComponent);l.ExportComponent=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||(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(7);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=e.email),null!=e.premium?this.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=e.org&&this.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:e.org}}),[4,n.prototype.ngOnInit.call(this)];case 1:return l.sent(),[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(739).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] to this page. See https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe for more information.');w(),m(C)}function b(l){return Boolean(l.origin==="https://"+n&&"string"==typeof l.data&&(l.data.match(o)||l.data.match(r)||l.data.match(i)))}function S(n){if(b(n))if(n.data.match(i)){var l=n.data.substring("DUO_OPEN_WINDOW|".length);(function(n){if(!n)return!1;var l=document.createElement("a");if(l.href=n,"duotrustedendpoints:"===l.protocol)return!0;if("https:"!==l.protocol)return!1;for(var e=0;e-1&&(n.email=l.email),null!=l.premium?n.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=l.org&&(n.showCreateOrgMessage=!0,n.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:l.org}}))})},l}(e(759).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(9),e(4),e(3),e(7);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(762).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?(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";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})];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});var l=this.router.createUrlTree(["vault"],{queryParams:n}).toString();this.location.go(l)},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(180).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";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]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(788).AddEditComponent));l.AddEditComponent=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&&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(e[0]),[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});var l=this.router.createUrlTree(["organizations",this.organization.id,"vault"],{queryParams:n}).toString();this.location.go(l)},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";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.ToolsComponent=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&&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]),[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(9),e(89),e(3),e(7);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(750).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(70).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(5),o=e(431),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(95),o=e(153),r=e(131),i=e(39),a=e(99),s=e(37),d=e(8),c=e(3),p=e(5),f=e(9),v=e(442),h=e(27),g=e(7),m=e(69),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 S(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=S;var w=t.ɵccf("app-navbar",v.NavbarComponent,S,{},{},[]);l.NavbarComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(443),i=e(7),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(220).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;u0&&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(101).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(556),o=e(249),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(101).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&&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 S.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 S.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 w.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(891),u=e(892),o=e(893),r=e(894),i=e(895),a=e(896),s=e(898),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(256),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(899),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(909),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,[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)return!0;break;case s.UriMatchType.Host:var a=N.Utils.getHost(n);if(null!=a&&a===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.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,s,d,c;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:if(1!==t.length)throw new Error("Invalid cipher format.");break;case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:if(2!==t.length)throw new Error("Invalid cipher format.");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.getEncKey()];case 1:return null!=(o=r.sent())&&null!=o.macKey&&t.length>1?(i=h.Utils.fromB64ToArray(t[1]).buffer,[4,this.cryptoFunctionService.hmac(u,o.macKey,"sha256")]):[3,4];case 2:return s=r.sent(),[4,this.cryptoFunctionService.compare(i,s)];case 3:if(!r.sent())throw new Error("MAC failed.");r.label=4;case 4:return[4,this.getPrivateKey()];case 5:if(null==(d=r.sent()))throw new Error("No private key.");switch(c="sha1",e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:c="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,d,c)]}})})},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(w),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&&(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],S="",s)for(w=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(38),o=e(35),r=e(3),i=e(8),a=e(12),s=e(19),d=e(18),c=e(5),p=e(94),f=e(47),v=e(519),h=e(431),g=e(9),m=e(432),y=e(89),C=e(20),b=e(4),S=e(37),w=e(7),_=e(73),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,S.StateService,w.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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(94),d=e(47),c=e(9),p=e(5),f=e(434),v=e(4),h=e(7),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]-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}();l.SearchCiphersPipe=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(52);l.CipherType=t.CipherType;var u=e(152);l.DeviceType=u.DeviceType;var o=e(245);l.EncryptionType=o.EncryptionType;var r=e(179);l.FieldType=r.FieldType;var i=e(786);l.LogLevelType=i.LogLevelType;var a=e(106);l.SecureNoteType=a.SecureNoteType;var s=e(91);l.TwoFactorProviderType=s.TwoFactorProviderType;var d=e(246);l.UriMatchType=d.UriMatchType},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Debug=0]="Debug",n[n.Info=1]="Info",n[n.Warning=2]="Warning",n[n.Error=3]="Error"}(l.LogLevelType||(l.LogLevelType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AttachmentRequest=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&&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(38),o=e(35),r=e(3),i=e(61),a=e(5),s=e(8),d=e(250),c=e(4),p=e(11),f=e(27),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 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,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 w(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,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,w)),(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(70).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(70).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(70).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(70).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(70).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(70).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(70).PasswordVerificationRequest);l.UpdateTwoFactorYubioOtpRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(38),o=e(35),r=e(3),i=e(12),a=e(19),s=e(18),d=e(458),c=e(157),p=e(7),f=e(8),v=e(5),h=e(459),g=e(4),m=e(6),y=e(13),C=e(69),b=e(9),S=e(27),w=e(60),_=e(11),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,49,"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,31,"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.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(53,0,null,0,5,"p",[["class","text-lg"]],null,null,null,null,null)),t.ɵdid(54,278528,null,0,v.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(55,{"mb-0":0}),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,2),t.ɵppd(58,2),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(61,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(65,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(68,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,54,0,"text-lg",n(l,55,0,!e.selfHosted)),n(l,61,0,e.selfHosted),n(l,65,0,e.selfHosted),n(l,68,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),"premiumSignUpTotp"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"premiumSignUpSupport"))),n(l,49,0,t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"premiumSignUpFuture"))),n(l,56,0,t.ɵunv(l,56,0,n(l,58,0,t.ɵnov(l,0),"premiumPrice",t.ɵunv(l,56,0,n(l,57,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,S.MessagingService,w.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(38),o=e(35),r=e(3),i=e(19),a=e(18),s=e(5),d=e(546),c=e(460),p=e(4),f=e(6),v=e(13),h=e(547),g=e(461),m=e(548),y=e(462),C=e(8),b=e(464),S=e(69),w=e(7),_=e(9),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 Z(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 J(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,Z)),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,J)),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,[S.TokenService,p.ApiService,w.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(5),a=e(458),s=e(157),d=e(3),c=e(7),p=e(8),f=e(465),v=e(4),h=e(6),g=e(13),m=e(20),y=e(9),C=e(60),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(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 w(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,w)),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,S)),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(8),o=e(3),r=e(9),i=e(5),a=e(466),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,65,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,62,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,53,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,32,"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,25,"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","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,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,r.RouterLinkActive,[r.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","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,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,r.RouterLinkActive,[r.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.ɵeld(31,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,32).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(32,671744,[[6,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(33,1720320,null,2,r.RouterLinkActive,[r.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(36,null,["\n ","\n "])),t.ɵppd(37,1),(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,16,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"div",[["class","card-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,9,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,6,"a",[["class","list-group-item"],["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,50).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(50,671744,[[8,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(51,1720320,null,2,r.RouterLinkActive,[r.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(54,null,["\n ","\n "])),t.ɵppd(55,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(60,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(63,212992,null,0,r.RouterOutlet,[r.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,16,0,"generator");n(l,17,0,"active");n(l,24,0,"import");n(l,25,0,"active");n(l,32,0,"export");n(l,33,0,"active");n(l,50,0,"breach-report");n(l,51,0,"active"),n(l,63,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),"passwordGenerator"))),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),"importData"))),n(l,31,0,t.ɵnov(l,32).target,t.ɵnov(l,32).href),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"exportVault"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"reports"))),n(l,49,0,t.ɵnov(l,50).target,t.ɵnov(l,50).href),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"dataBreachReport")))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-tools",[],null,null,null,d,s)),t.ɵdid(1,49152,null,0,a.ToolsComponent,[],null,null)],null,null)}l.RenderType_ToolsComponent=s,l.View_ToolsComponent_0=d,l.View_ToolsComponent_Host_0=c;var p=t.ɵccf("app-tools",a.ToolsComponent,c,{},{},[]);l.ToolsComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(5),r=e(38),i=e(35),a=e(3),s=e(8),d=e(19),c=e(18),p=e(251),f=e(6),v=e(13),h=e(221),g=e(9),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 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/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 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/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 Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n 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 Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in CSV format"\n and save the CSV 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 mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV 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 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 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 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 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 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 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 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 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 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 $(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 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 Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function Y(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 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 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 X(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 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 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 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 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 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 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 en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,104,"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,S)),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,w)),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,Z)),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,J)),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 "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===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,"pwsafexml"===e.format),n(l,58,0,"dashlanecsv"===e.format),n(l,61,0,"msecurecsv"===e.format),n(l,64,0,"stickypasswordxml"===e.format),n(l,67,0,"truekeycsv"===e.format),n(l,70,0,"clipperzhtml"===e.format),n(l,73,0,"roboformcsv"===e.format),n(l,76,0,"passboltcsv"===e.format),n(l,79,0,"ascendocsv"===e.format),n(l,82,0,"passwordbossjson"===e.format),n(l,85,0,"zohovaultcsv"===e.format),n(l,88,0,"splashidcsv"===e.format),n(l,91,0,"passkeepcsv"===e.format),n(l,94,0,"gnomejson"===e.format),n(l,97,0,"passwordagentcsv"===e.format),n(l,100,0,"passpackcsv"===e.format),n(l,103,0,"passmanjson"===e.format)},null)}function tn(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,en)),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 un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-import",[],null,null,null,tn,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=tn,l.View_ImportComponent_Host_0=un;var on=t.ɵccf("app-import",p.ImportComponent,un,{},{},[]);l.ImportComponentNgFactory=on},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(47),p=e(252),f=e(20),v=e(7),h=e(222),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,51,"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,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,15,"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","masterPassword"]],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",""],["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,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.masterPassword=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(33,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(36,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(38,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(39,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(43,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(45,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"span",[],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"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,33,0,"");n(l,36,0,"MasterPassword",e.masterPassword);n(l,39,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),"exportWarning"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"masterPass"))),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,43,0,t.ɵnov(l,1).loading),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"loading")),"")),n(l,49,0,t.ɵunv(l,49,0,n(l,50,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,S)),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=S,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(8),o=e(3),r=e(9),i=e(5),a=e(474),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,39,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,36,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,27,"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"]],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,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,r.RouterLinkActive,[r.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,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,r.RouterLinkActive,[r.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.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(37,212992,null,0,r.RouterOutlet,[r.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,16,0,"import");n(l,17,0,"active");n(l,24,0,"export");n(l,25,0,"active"),n(l,37,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")))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-tools",[],null,null,null,d,s)),t.ɵdid(1,49152,null,0,a.ToolsComponent,[],null,null)],null,null)}l.RenderType_ToolsComponent=s,l.View_ToolsComponent_0=d,l.View_ToolsComponent_Host_0=c;var p=t.ɵccf("app-org-tools",a.ToolsComponent,c,{},{},[]);l.ToolsComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(5),r=e(38),i=e(35),a=e(3),s=e(8),d=e(19),c=e(18),p=e(475),f=e(6),v=e(13),h=e(221),g=e(9),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 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/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 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/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 Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n 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 Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in CSV format"\n and save the CSV 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 mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV 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 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 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 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 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 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 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 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 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 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 $(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 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 Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function Y(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 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 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 X(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 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 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 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 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 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 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 en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,104,"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,S)),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,w)),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,Z)),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,J)),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 "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===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,"pwsafexml"===e.format),n(l,58,0,"dashlanecsv"===e.format),n(l,61,0,"msecurecsv"===e.format),n(l,64,0,"stickypasswordxml"===e.format),n(l,67,0,"truekeycsv"===e.format),n(l,70,0,"clipperzhtml"===e.format),n(l,73,0,"roboformcsv"===e.format),n(l,76,0,"passboltcsv"===e.format),n(l,79,0,"ascendocsv"===e.format),n(l,82,0,"passwordbossjson"===e.format),n(l,85,0,"zohovaultcsv"===e.format),n(l,88,0,"splashidcsv"===e.format),n(l,91,0,"passkeepcsv"===e.format),n(l,94,0,"gnomejson"===e.format),n(l,97,0,"passwordagentcsv"===e.format),n(l,100,0,"passpackcsv"===e.format),n(l,103,0,"passmanjson"===e.format)},null)}function tn(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,en)),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 un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-import",[],null,null,null,tn,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=tn,l.View_ImportComponent_Host_0=un;var on=t.ɵccf("app-org-import",p.ImportComponent,un,{},{},[]);l.ImportComponentNgFactory=on},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(47),p=e(476),f=e(20),v=e(7),h=e(222),g=e(9),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,51,"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,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,15,"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","masterPassword"]],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",""],["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,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.masterPassword=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(33,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(36,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(38,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(39,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(43,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(45,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"span",[],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"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,33,0,"");n(l,36,0,"MasterPassword",e.masterPassword);n(l,39,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),"exportWarning"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"masterPass"))),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,43,0,t.ɵnov(l,1).loading),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"loading")),"")),n(l,49,0,t.ɵunv(l,49,0,n(l,50,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(9),o=e(5),r=e(8),i=e(3),a=e(477),s=e(11),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(61),o=e(5),r=e(8),i=e(3),a=e(254),s=e(12),d=e(478),c=e(4),p=e(9),f=e(41),v=e(6),h=e(13),g=e(7),m=e(11),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 S(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,S)),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,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 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(5),o=e(19),r=e(18),i=e(8),a=e(3),s=e(12),d=e(480),c=e(4),p=e(9),f=e(223),v=e(13),h=e(11),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 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 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.ɵ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,S)),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,w)),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(61),o=e(5),r=e(8),i=e(3),a=e(254),s=e(12),d=e(481),c=e(4),p=e(9),f=e(6),v=e(13),h=e(7),g=e(11),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 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,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 w(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,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 _(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,w)),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(38),o=e(35),r=e(3),i=e(61),a=e(153),s=e(131),d=e(39),c=e(99),p=e(37),f=e(5),v=e(8),h=e(254),g=e(12),m=e(482),y=e(4),C=e(9),b=e(7),S=e(6),w=e(13),_=e(20),R=e(11),I=e(66),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,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 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),"admin")))})}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),"manager")))})}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),"user")))})}function L(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 z(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 G(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 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.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 q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,71,"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,13,"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.ɵand(16777216,null,null,1,null,D)),t.ɵdid(30,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(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,F)),t.ɵdid(36,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(39,0,null,null,31,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,28,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,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(45,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(48,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,L)),t.ɵdid(51,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,z)),t.ɵdid(54,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(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,j)),t.ɵdid(60,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,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,63).onClick(e)&&u);"click"===l&&(u=!1!==o.remove(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(63,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,0,"i",[["class","fa fa-fw fa-remove"]],null,null,null,null,null)),(n()(),t.ɵted(66,null,["\n ","\n "])),t.ɵppd(67,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.type===e.organizationUserType.Owner),n(l,30,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,33,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,36,0,l.context.$implicit.type===e.organizationUserType.User),n(l,51,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,54,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,57,0,e.accessGroups),n(l,60,0,e.accessEvents&&l.context.$implicit.status===e.organizationUserStatusType.Confirmed)},function(n,l){n(l,12,0,l.context.$implicit.email),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l.parent.parent.parent,0),"remove")))})}function B(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,q)),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 K(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,B)),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 H(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 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 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,K)),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,H)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["groupsTemplate",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["eventsTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["confirmTemplate",2]],null,0,null,Y)),(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 J(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,S.Angulartics2,w.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=J;var X=t.ɵccf("app-org-people",m.PeopleComponent,J,{},{},[]);l.PeopleComponentNgFactory=X},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(9),o=e(5),r=e(8),i=e(3),a=e(483),s=e(11),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(153),a=e(131),s=e(39),d=e(99),c=e(37),p=e(8),f=e(3),v=e(5),h=e(484),g=e(4),m=e(6),y=e(13),C=e(9),b=e(60),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});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 _(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,w)),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,S)),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=S,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(38),o=e(35),r=e(3),i=e(61),a=e(5),s=e(8),d=e(485),c=e(4),p=e(11),f=e(27),v=e(9),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 S(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,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,S)),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,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,_)),(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(38),o=e(35),r=e(3),i=e(19),a=e(18),s=e(5),d=e(546),c=e(460),p=e(4),f=e(6),v=e(13),h=e(849),g=e(583),m=e(547),y=e(461),C=e(12),b=e(548),S=e(462),w=e(61),_=e(8),R=e(486),I=e(69),k=e(7),A=e(9),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 Z(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 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,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,Z)),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,S.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,w.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,J)),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(8),o=e(3),r=e(5),i=e(12),a=e(19),s=e(18),d=e(583),c=e(4),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(5),r=e(61),i=e(584),a=e(47),s=e(19),d=e(18),c=e(585),p=e(8),f=e(3),v=e(449),h=e(28),g=e(54),m=e(7),y=e(155),C=e(37),b=e(11),S=e(41),w=e(218),_=e(73),R=e(27),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 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,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 J(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,J)),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,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,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,S.CollectionService,w.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(5),i=e(61),a=e(8),s=e(3),d=e(12),c=e(450),p=e(28),f=e(20),v=e(11),h=e(7),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 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,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 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,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 _(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,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.ɵ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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(528),d=e(6),c=e(28),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(8),r=e(3),i=e(19),a=e(18),s=e(5),d=e(529),c=e(6),p=e(28),f=e(13),v=e(54),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(530),p=e(6),f=e(28),v=e(13),h=e(41),g=e(11),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 S(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,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.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,w)),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(451),p=e(41),f=e(7),v=e(28),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 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,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 w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-collections",[],null,null,null,S,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=S,l.View_CollectionsComponent_Host_0=w;var _=t.ɵccf("app-vault-collections",c.CollectionsComponent,w,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=_},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(47),p=e(539),f=e(4),v=e(6),h=e(13),g=e(20),m=e(27),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 S=t.ɵccf("app-deauthorize-sessions",p.DeauthorizeSessionsComponent,b,{},{},[]);l.DeauthorizeSessionsComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(540),v=e(4),h=e(6),g=e(13),m=e(20),y=e(27),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 S(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=S;var w=t.ɵccf("app-delete-account",f.DeleteAccountComponent,S,{},{},[]);l.DeleteAccountComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(582),v=e(4),h=e(6),g=e(13),m=e(20),y=e(9),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 S(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=S;var w=t.ɵccf("app-delete-organization",f.DeleteOrganizationComponent,S,{},{},[]);l.DeleteOrganizationComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(8),i=e(3),a=e(12),s=e(5),d=e(531),c=e(54),p=e(7),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(98),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(5),r=e(61),i=e(584),a=e(47),s=e(19),d=e(18),c=e(585),p=e(8),f=e(3),v=e(570),h=e(28),g=e(54),m=e(7),y=e(155),C=e(37),b=e(11),S=e(41),w=e(218),_=e(73),R=e(4),I=e(27),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 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 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,Z)),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,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,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,S.CollectionService,w.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(5),i=e(61),a=e(8),s=e(3),d=e(12),c=e(572),p=e(28),f=e(20),v=e(11),h=e(7),g=e(4),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 S(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,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,S)),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,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 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(95),r=e(5),i=e(19),a=e(18),s=e(8),d=e(3),c=e(575),p=e(4),f=e(6),v=e(13),h=e(7),g=e(20),m=e(11),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 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),"noGroupsInList")))})}function w(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,w)),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,S)),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(573),p=e(41),f=e(7),v=e(28),h=e(4),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 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,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 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,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,S)),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,w,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=w,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(5),o=e(19),r=e(18),i=e(12),a=e(8),s=e(3),d=e(473),c=e(4),p=e(223),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 S(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 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 _(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,S)),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,w)),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(5),o=e(12),r=e(95),i=e(153),a=e(131),s=e(39),d=e(99),c=e(37),p=e(8),f=e(3),v=e(254),h=e(19),g=e(18),m=e(479),y=e(4),C=e(6),b=e(13),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(95),r=e(5),i=e(19),a=e(18),s=e(8),d=e(3),c=e(577),p=e(4),f=e(6),v=e(13),h=e(41),g=e(7),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 S(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 w(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,S)),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,w)),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(95),r=e(5),i=e(19),a=e(18),s=e(8),d=e(3),c=e(579),p=e(4),f=e(6),v=e(13),h=e(41),g=e(7),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 S(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 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),"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,w)),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,S)),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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(5),d=e(580),c=e(4),p=e(6),f=e(13),v=e(20),h=e(66),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(581),p=e(4),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 S(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 w(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,S)),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,w,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=w,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(5),o=e(8),r=e(3),i=e(550),a=e(73),s=e(7),d=t.ɵcrt({encapsulation:2,styles:[],data:{}});function c(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","password"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),(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,5,0,l.context.$implicit.password),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent,1),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 p(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,c)),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 f(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 v(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,44,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,41,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,38,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"h2",[["class","modal-title"]],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,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,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,p)),t.ɵdid(23,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(26,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(31,1),(n()(),t.ɵted(32,null,["\n ","\n "])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,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(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,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,23,0,e.history.length),n(l,26,0,!e.history.length)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"passwordHistory"))),n(l,14,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"close"))),n(l,37,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"clear")),""))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-generator-history",[],null,null,null,v,d)),t.ɵdid(1,114688,null,0,i.PasswordGeneratorHistoryComponent,[a.PasswordGenerationService,s.PlatformUtilsService,r.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PasswordGeneratorHistoryComponent=d,l.View_PasswordGeneratorHistoryComponent_0=v,l.View_PasswordGeneratorHistoryComponent_Host_0=h;var g=t.ɵccf("app-password-generator-history",i.PasswordGeneratorHistoryComponent,h,{},{},[]);l.PasswordGeneratorHistoryComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(454),v=e(4),h=e(6),g=e(13),m=e(20),y=e(9),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 S(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=S;var w=t.ɵccf("app-purge-vault",f.PurgeVaultComponent,S,{organizationId:"organizationId"},{},[]);l.PurgeVaultComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(95),r=e(5),i=e(9),a=e(8),s=e(3),d=e(19),c=e(18),p=e(532),f=e(41),v=e(7),h=e(11),g=e(28),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 S(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 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,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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(19),h=e(18),g=e(5),m=e(8),y=e(541),C=e(6),b=e(11),S=e(7),w=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,w)),t.ɵdid(1,245760,null,0,y.TwoFactorAuthenticatorComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.UserService,S.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorAuthenticatorComponent=w,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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(19),h=e(18),g=e(5),m=e(8),y=e(457),C=e(6),b=e(7),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(19),h=e(18),g=e(5),m=e(8),y=e(542),C=e(6),b=e(7),S=e(11),w=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,w)),t.ɵdid(1,49152,null,0,y.TwoFactorEmailComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,S.UserService],null,null)],null,null)}l.RenderType_TwoFactorEmailComponent=w,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(61),o=e(8),r=e(3),i=e(5),a=e(516),s=e(89),d=e(9),c=e(7),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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(5),c=e(8),p=e(543),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 S=t.ɵccf("app-two-factor-recovery",p.TwoFactorRecoveryComponent,b,{},{},[]);l.TwoFactorRecoveryComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(5),f=e(61),v=e(19),h=e(18),g=e(12),m=e(8),y=e(544),C=e(6),b=e(7),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(5),h=e(19),g=e(18),m=e(8),y=e(545),C=e(6),b=e(7),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(525),v=e(4),h=e(6),g=e(13),m=e(20),y=e(27),C=e(60),b=e(54),S=e(28),w=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,_,w)),t.ɵdid(1,49152,null,0,f.UpdateKeyComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService,C.SyncService,b.FolderService,S.CipherService],null,null)],null,null)}l.RenderType_UpdateKeyComponent=w,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(885),o=e(108),r=e(13),i=e(9),a=e(511),s=e(424),d=e(105),c=e(11),p=e(69),f=e(54),v=e(426),h=e(60),g=e(73),m=e(28),y=e(89),C=e(6),b=e(3),S=e(7),w=e(216),_=e(66),R=e(20),I=e(41),k=e(39),A=e(120),O=e(425),N=t.ɵcrt({encapsulation:2,styles:[],data:{}});function E(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 T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-root",[],null,null,null,E,N)),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,S.PlatformUtilsService,t.NgZone,w.LockService,_.StorageService,R.CryptoService,I.CollectionService,k.DomSanitizer,A.SearchService,O.NotificationsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AppComponent=N,l.View_AppComponent_0=E,l.View_AppComponent_Host_0=T;var P=t.ɵccf("app-root",a.AppComponent,T,{},{},[]);l.AppComponentNgFactory=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&&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.6.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)})),c.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(c)];case 1:return u.sent(),p=new Map,e.forEach(function(n){p.set(n.id,n)}),f=[],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 p.has(n)}).map(function(n){return p.get(n).name})),v.buildCommonCipher(l,n),f.push(l)}}),"csv"===l?[2,o.unparse(f)]:[2,JSON.stringify(f,null," ")]}})})},n.prototype.getFileName=function(n){void 0===n&&(n=null);var l=new Date,e=l.getFullYear()+""+this.padNumber(l.getMonth()+1,2)+this.padNumber(l.getDate(),2)+this.padNumber(l.getHours(),2)+this.padNumber(l.getMinutes(),2)+this.padNumber(l.getSeconds(),2);return"bitwarden"+(n?"_"+n:"")+"_export_"+e+".csv"},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=c},,function(n,l){},,function(n,l){},,,,,,,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 f.BitwardenCsvImporter;case"lastpasscsv":case"passboltcsv":return new R.LastPassCsvImporter;case"keepassxcsv":return new w.KeePassXCsvImporter;case"aviracsv":return new p.AviraCsvImporter;case"blurcsv":return new v.BlurCsvImporter;case"safeincloudxml":return new F.SafeInCloudXmlImporter;case"padlockcsv":return new N.PadlockCsvImporter;case"keepass2xml":return new S.KeePass2XmlImporter;case"chromecsv":case"operacsv":case"vivaldicsv":return new h.ChromeCsvImporter;case"firefoxcsv":return new C.FirefoxCsvImporter;case"upmcsv":return new q.UpmCsvImporter;case"saferpasscsv":return new L.SaferPassCsvImporter;case"meldiumcsv":return new I.MeldiumCsvImporter;case"1password1pif":return new A.OnePassword1PifImporter;case"1passwordwincsv":return new O.OnePasswordWinCsvImporter;case"keepercsv":return new _.KeeperCsvImporter;case"passworddragonxml":return new M.PasswordDragonXmlImporter;case"enpasscsv":return new y.EnpassCsvImporter;case"pwsafexml":return new D.PasswordSafeXmlImporter;case"dashlanecsv":return new m.DashlaneCsvImporter;case"msecurecsv":return new k.MSecureCsvImporter;case"stickypasswordxml":return new G.StickyPasswordXmlImporter;case"truekeycsv":return new j.TrueKeyCsvImporter;case"clipperzhtml":return new g.ClipperzHtmlImporter;case"roboformcsv":return new U.RoboFormCsvImporter;case"ascendocsv":return new c.AscendoCsvImporter;case"passwordbossjson":return new x.PasswordBossJsonImporter;case"zohovaultcsv":return new B.ZohoVaultCsvImporter;case"splashidcsv":return new z.SplashIdCsvImporter;case"passkeepcsv":return new E.PassKeepCsvImporter;case"gnomejson":return new b.GnomeJsonImporter;case"passwordagentcsv":return new V.PasswordAgentCsvImporter;case"passpackcsv":return new P.PasspackCsvImporter;case"passmanjson":return new T.PassmanJsonImporter;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(29),o=e(30),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(29),o=e(30),r=e(154),i=e(159),a=e(219),s=e(181),d=e(100),c=e(52),p=e(179),f=e(106),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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){var t=!1;if(!(n.length<2)){var u=l.initLoginCipher();if(u.name=l.getValueOrDefault(n[0],"--"),2===n.length)u.login.uris=l.makeUriArray(n[1]);else if(3===n.length)u.login.uris=l.makeUriArray(n[1]),u.login.username=l.getValueOrDefault(n[2]);else if(4===n.length)l.isNullOrWhitespace(n[2])&&l.isNullOrWhitespace(n[3])?(u.login.username=n[1],u.notes=n[2]+"\n"+n[3]):(u.login.username=n[2],u.notes=n[1]+"\n"+n[3]);else if(5===n.length)u.login.uris=l.makeUriArray(n[1]),u.login.username=l.getValueOrDefault(n[2]),u.login.password=l.getValueOrDefault(n[3]),u.notes=l.getValueOrDefault(n[4]);else if(6===n.length)l.isNullOrWhitespace(n[2])?(u.login.username=l.getValueOrDefault(n[3]),u.login.password=l.getValueOrDefault(n[4]),u.notes=l.getValueOrDefault(n[5])):(u.login.username=l.getValueOrDefault(n[2]),u.login.password=l.getValueOrDefault(n[3]),u.notes=l.getValueOrDefault(n[4],"")+"\n"+l.getValueOrDefault(n[5],"")),u.login.uris=l.makeUriArray(n[1]);else if(7===n.length)l.isNullOrWhitespace(n[2])?(u.login.username=l.getValueOrDefault(n[3]),u.notes=l.getValueOrDefault(n[4],"")+"\n"+l.getValueOrDefault(n[6],"")):(u.login.username=l.getValueOrDefault(n[2]),u.notes=l.getValueOrDefault(n[3],"")+"\n"+l.getValueOrDefault(n[4],"")+"\n"+l.getValueOrDefault(n[6],"")),u.login.uris=l.makeUriArray(n[1]),u.login.password=l.getValueOrDefault(n[5]);else for(var o=1;o2&&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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(156),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(52),i=e(106),a=e(100),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(159),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(29),o=e(30),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(29),o=e(30),r=e(132),i=e(52),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(156),i=e(100),a=e(52),s=e(106),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(132),i=e(100),a=e(52),s=e(106),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(29),o=e(30),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(29),o=e(30),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.CryptoService=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.CipherService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(616),u=e(154),o=e(159),r=e(249),i=e(34),a=e(219),s=e(156),d=e(181),c=e(100),p=e(52),f=e(179),v=e(106),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||""===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(119),e(84),e(107).Buffer)},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(5),o=e(35),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=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}),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.FolderService=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(){function n(){}return n.prototype.onClick=function(n){n.preventDefault()},n}();l.StopClickDirective=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.PasswordVerificationRequest=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.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";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});e(0);var t=e(34),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";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";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(237),o=(e(0),e(751)),r=e(34),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});var t=function(){return function(){}}();l.CryptoFunctionService=t},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";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";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;u=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";Object.defineProperty(l,"__esModule",{value:!0});var t=e(52),u=e(551),o=e(552),r=e(553),i=e(554),a=e(555),s=e(557),d=e(558),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(){}}();l.EnvironmentService=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Android=0]="Android",n[n.iOS=1]="iOS",n[n.ChromeExtension=2]="ChromeExtension",n[n.FirefoxExtension=3]="FirefoxExtension",n[n.OperaExtension=4]="OperaExtension",n[n.EdgeExtension=5]="EdgeExtension",n[n.WindowsDesktop=6]="WindowsDesktop",n[n.MacOsDesktop=7]="MacOsDesktop",n[n.LinuxDesktop=8]="LinuxDesktop",n[n.ChromeBrowser=9]="ChromeBrowser",n[n.FirefoxBrowser=10]="FirefoxBrowser",n[n.OperaBrowser=11]="OperaBrowser",n[n.EdgeBrowser=12]="EdgeBrowser",n[n.IEBrowser=13]="IEBrowser",n[n.UnknownBrowser=14]="UnknownBrowser",n[n.AndroidAmazon=15]="AndroidAmazon",n[n.UWP=16]="UWP",n[n.SafariBrowser=17]="SafariBrowser",n[n.VivaldiBrowser=18]="VivaldiBrowser",n[n.VivaldiExtension=19]="VivaldiExtension",n[n.SafariExtension=20]="SafariExtension"}(l.DeviceType||(l.DeviceType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(5),o=e(131),r=e(39),i=e(99),a=e(37),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,2,"img",[],[[8,"src",4],[8,"title",0]],null,null,null,null)),t.ɵdid(1,278528,null,0,u.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{ngClass:[0,"ngClass"]},null),t.ɵpod(2,{"rounded-circle":0})],function(n,l){n(l,1,0,n(l,2,0,l.component.circle))},function(n,l){var e=l.component;n(l,0,0,e.sanitizer.bypassSecurityTrustResourceUrl(e.src),t.ɵinlineInterpolate(1,"",e.data,""))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-avatar",[],null,null,null,d,s)),t.ɵdid(1,638976,null,0,o.AvatarComponent,[r.DomSanitizer,i.CryptoFunctionService,a.StateService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AvatarComponent=s,l.View_AvatarComponent_0=d,l.View_AvatarComponent_Host_0=c;var p=t.ɵccf("app-avatar",o.AvatarComponent,c,{data:"data",email:"email",size:"size",charCount:"charCount",textColor:"textColor",fontSize:"fontSize",fontWeight:"fontWeight",dynamic:"dynamic",circle:"circle"},{},[]);l.AvatarComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(52),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";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(){return function(n){this.id=null,n&&(this.id=n.id,this.revisionDate=n.revisionDate)}}();l.FolderView=t},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});e(0),e(3),e(7);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=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";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(n){n&&(this.id=n.id,this.organizationId=n.organizationId,this.readOnly=n.readOnly)}}();l.CollectionView=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},enumerable:!0,configurable:!0}),n}();l.LoginView=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});var u=e(159),o=function(n){function l(l,e){void 0===e&&(e=!1);var t=n.call(this)||this;return null==l?t:(t.buildDomainModel(t,l,{id:null,organizationId:null,name:null,readOnly:null},e,["id","organizationId","readOnly"]),t)}return t(l,n),l.prototype.decrypt=function(){return this.decryptObj(new u.CollectionView(this),{name:null},this.organizationId)},l}(e(101).default);l.Collection=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]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});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(47),d=e(160),c=e(4),p=e(13),f=e(20),v=t.ɵcrt({encapsulation:2,styles:[],data:{}});function h(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,[["form",1]],null,43,"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,19,"div",[["class","modal-body"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(9,0,null,null,2,"p",[],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,"label",[["for","masterPassword"]],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,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,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.masterPassword=e)&&u);return u},null,null)),t.ɵdid(18,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(19,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(22,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(24,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(25,81920,null,0,s.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","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,["",""])),t.ɵppd(42,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,"");n(l,22,0,"MasterPasswordHash",e.masterPassword);n(l,25,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),"twoStepLoginAuthDesc"))),n(l,14,0,t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"masterPass"))),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,1).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),"continue"))),n(l,41,0,t.ɵunv(l,41,0,n(l,42,0,t.ɵnov(l,0),"close")))})}function g(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-two-factor-verify",[],null,null,null,h,v)),t.ɵdid(1,49152,null,0,d.TwoFactorVerifyComponent,[c.ApiService,o.I18nService,p.ToasterService,f.CryptoService],null,null)],null,null)}l.RenderType_TwoFactorVerifyComponent=v,l.View_TwoFactorVerifyComponent_0=h,l.View_TwoFactorVerifyComponent_Host_0=g;var m=t.ɵccf("app-two-factor-verify",d.TwoFactorVerifyComponent,g,{type:"type",organizationId:"organizationId"},{onAuthed:"onAuthed"},[]);l.TwoFactorVerifyComponentNgFactory=m},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.LockService=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+"";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,S;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 S=o.sent(),console.error(S),[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(41),e(54),e(66),e(11),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(780).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:l.length,t=0;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&&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(20),e(222),e(3),e(7);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(822).ExportComponent);l.ExportComponent=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||(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(7);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=e.email),null!=e.premium?this.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=e.org&&this.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:e.org}}),[4,n.prototype.ngOnInit.call(this)];case 1:return l.sent(),[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(739).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] to this page. See https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe for more information.');w(),m(C)}function b(l){return Boolean(l.origin==="https://"+n&&"string"==typeof l.data&&(l.data.match(o)||l.data.match(r)||l.data.match(i)))}function S(n){if(b(n))if(n.data.match(i)){var l=n.data.substring("DUO_OPEN_WINDOW|".length);(function(n){if(!n)return!1;var l=document.createElement("a");if(l.href=n,"duotrustedendpoints:"===l.protocol)return!0;if("https:"!==l.protocol)return!1;for(var e=0;e-1&&(n.email=l.email),null!=l.premium?n.stateService.save("loginRedirect",{route:"/settings/premium"}):null!=l.org&&(n.showCreateOrgMessage=!0,n.stateService.save("loginRedirect",{route:"/settings/create-organization",qParams:{plan:l.org}}))})},l}(e(759).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(9),e(4),e(3),e(7);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(762).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?(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";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})];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});var l=this.router.createUrlTree(["vault"],{queryParams:n}).toString();this.location.go(l)},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(180).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";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]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(788).AddEditComponent));l.AddEditComponent=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&&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(e[0]),[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});var l=this.router.createUrlTree(["organizations",this.organization.id,"vault"],{queryParams:n}).toString();this.location.go(l)},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";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.ToolsComponent=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&&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]),[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(9),e(89),e(3),e(7);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(750).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(70).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(5),o=e(431),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(95),o=e(153),r=e(131),i=e(39),a=e(99),s=e(37),d=e(8),c=e(3),p=e(5),f=e(9),v=e(442),h=e(27),g=e(7),m=e(69),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 S(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=S;var w=t.ɵccf("app-navbar",v.NavbarComponent,S,{},{},[]);l.NavbarComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(443),i=e(7),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(220).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;u0&&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(101).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(556),o=e(249),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(101).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&&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 S.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 S.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 w.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(891),u=e(892),o=e(893),r=e(894),i=e(895),a=e(896),s=e(898),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(256),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(899),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(909),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,[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)return!0;break;case s.UriMatchType.Host:var a=N.Utils.getHost(n);if(null!=a&&a===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.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,s,d,c;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:if(1!==t.length)throw new Error("Invalid cipher format.");break;case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:case a.EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:if(2!==t.length)throw new Error("Invalid cipher format.");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.getEncKey()];case 1:return null!=(o=r.sent())&&null!=o.macKey&&t.length>1?(i=h.Utils.fromB64ToArray(t[1]).buffer,[4,this.cryptoFunctionService.hmac(u,o.macKey,"sha256")]):[3,4];case 2:return s=r.sent(),[4,this.cryptoFunctionService.compare(i,s)];case 3:if(!r.sent())throw new Error("MAC failed.");r.label=4;case 4:return[4,this.getPrivateKey()];case 5:if(null==(d=r.sent()))throw new Error("No private key.");switch(c="sha1",e){case a.EncryptionType.Rsa2048_OaepSha256_B64:case a.EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:c="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,d,c)]}})})},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(w),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&&(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],S="",s)for(w=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(38),o=e(35),r=e(3),i=e(8),a=e(12),s=e(19),d=e(18),c=e(5),p=e(94),f=e(47),v=e(519),h=e(431),g=e(9),m=e(432),y=e(89),C=e(20),b=e(4),S=e(37),w=e(7),_=e(73),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,S.StateService,w.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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(94),d=e(47),c=e(9),p=e(5),f=e(434),v=e(4),h=e(7),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]-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}();l.SearchCiphersPipe=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(52);l.CipherType=t.CipherType;var u=e(152);l.DeviceType=u.DeviceType;var o=e(245);l.EncryptionType=o.EncryptionType;var r=e(179);l.FieldType=r.FieldType;var i=e(786);l.LogLevelType=i.LogLevelType;var a=e(106);l.SecureNoteType=a.SecureNoteType;var s=e(91);l.TwoFactorProviderType=s.TwoFactorProviderType;var d=e(246);l.UriMatchType=d.UriMatchType},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0}),function(n){n[n.Debug=0]="Debug",n[n.Info=1]="Info",n[n.Warning=2]="Warning",n[n.Error=3]="Error"}(l.LogLevelType||(l.LogLevelType={}))},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=function(){return function(){}}();l.AttachmentRequest=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&&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(38),o=e(35),r=e(3),i=e(61),a=e(5),s=e(8),d=e(250),c=e(4),p=e(11),f=e(27),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 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,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 w(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,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,w)),(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(70).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(70).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(70).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(70).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(70).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(70).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(70).PasswordVerificationRequest);l.UpdateTwoFactorYubioOtpRequest=u},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(38),o=e(35),r=e(3),i=e(12),a=e(19),s=e(18),d=e(458),c=e(157),p=e(7),f=e(8),v=e(5),h=e(459),g=e(4),m=e(6),y=e(13),C=e(69),b=e(9),S=e(27),w=e(60),_=e(11),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,49,"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,31,"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.ɵted(-1,0,["\n "])),(n()(),t.ɵeld(53,0,null,0,5,"p",[["class","text-lg"]],null,null,null,null,null)),t.ɵdid(54,278528,null,0,v.NgClass,[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t.ɵpod(55,{"mb-0":0}),(n()(),t.ɵted(56,null,["",""])),t.ɵppd(57,2),t.ɵppd(58,2),(n()(),t.ɵted(-1,0,["\n "])),(n()(),t.ɵand(16777216,null,0,1,null,k)),t.ɵdid(61,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(65,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(68,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,54,0,"text-lg",n(l,55,0,!e.selfHosted)),n(l,61,0,e.selfHosted),n(l,65,0,e.selfHosted),n(l,68,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),"premiumSignUpTotp"))),n(l,43,0,t.ɵunv(l,43,0,n(l,44,0,t.ɵnov(l,0),"premiumSignUpSupport"))),n(l,49,0,t.ɵunv(l,49,0,n(l,50,0,t.ɵnov(l,0),"premiumSignUpFuture"))),n(l,56,0,t.ɵunv(l,56,0,n(l,58,0,t.ɵnov(l,0),"premiumPrice",t.ɵunv(l,56,0,n(l,57,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,S.MessagingService,w.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(38),o=e(35),r=e(3),i=e(19),a=e(18),s=e(5),d=e(546),c=e(460),p=e(4),f=e(6),v=e(13),h=e(547),g=e(461),m=e(548),y=e(462),C=e(8),b=e(464),S=e(69),w=e(7),_=e(9),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 Z(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 J(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,Z)),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,J)),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,[S.TokenService,p.ApiService,w.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(5),a=e(458),s=e(157),d=e(3),c=e(7),p=e(8),f=e(465),v=e(4),h=e(6),g=e(13),m=e(20),y=e(9),C=e(60),b=t.ɵcrt({encapsulation:2,styles:[],data:{}});function S(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 w(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,w)),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,S)),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(8),o=e(3),r=e(9),i=e(5),a=e(466),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,65,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,62,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,53,"div",[["class","col-3"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(7,0,null,null,32,"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,25,"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","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,16).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(16,671744,[[2,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,r.RouterLinkActive,[r.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","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,24).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(24,671744,[[4,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,r.RouterLinkActive,[r.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.ɵeld(31,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,32).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(32,671744,[[6,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(33,1720320,null,2,r.RouterLinkActive,[r.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(36,null,["\n ","\n "])),t.ɵppd(37,1),(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,16,"div",[["class","card"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,0,null,null,2,"div",[["class","card-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,9,"div",[["class","list-group list-group-flush"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(49,0,null,null,6,"a",[["class","list-group-item"],["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,50).onClick(e.button,e.ctrlKey,e.metaKey,e.shiftKey)&&u);return u},null,null)),t.ɵdid(50,671744,[[8,4]],0,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(51,1720320,null,2,r.RouterLinkActive,[r.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(54,null,["\n ","\n "])),t.ɵppd(55,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(60,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(63,212992,null,0,r.RouterOutlet,[r.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,16,0,"generator");n(l,17,0,"active");n(l,24,0,"import");n(l,25,0,"active");n(l,32,0,"export");n(l,33,0,"active");n(l,50,0,"breach-report");n(l,51,0,"active"),n(l,63,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),"passwordGenerator"))),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),"importData"))),n(l,31,0,t.ɵnov(l,32).target,t.ɵnov(l,32).href),n(l,36,0,t.ɵunv(l,36,0,n(l,37,0,t.ɵnov(l,0),"exportVault"))),n(l,44,0,t.ɵunv(l,44,0,n(l,45,0,t.ɵnov(l,0),"reports"))),n(l,49,0,t.ɵnov(l,50).target,t.ɵnov(l,50).href),n(l,54,0,t.ɵunv(l,54,0,n(l,55,0,t.ɵnov(l,0),"dataBreachReport")))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-tools",[],null,null,null,d,s)),t.ɵdid(1,49152,null,0,a.ToolsComponent,[],null,null)],null,null)}l.RenderType_ToolsComponent=s,l.View_ToolsComponent_0=d,l.View_ToolsComponent_Host_0=c;var p=t.ɵccf("app-tools",a.ToolsComponent,c,{},{},[]);l.ToolsComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(5),r=e(38),i=e(35),a=e(3),s=e(8),d=e(19),c=e(18),p=e(251),f=e(6),v=e(13),h=e(221),g=e(9),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 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/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 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/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 Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n 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 Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in CSV format"\n and save the CSV 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 mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV 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 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 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 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 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 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 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 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 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 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 $(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 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 Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function Y(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 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 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 X(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 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 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 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 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 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 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 en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,104,"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,S)),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,w)),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,Z)),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,J)),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 "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===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,"pwsafexml"===e.format),n(l,58,0,"dashlanecsv"===e.format),n(l,61,0,"msecurecsv"===e.format),n(l,64,0,"stickypasswordxml"===e.format),n(l,67,0,"truekeycsv"===e.format),n(l,70,0,"clipperzhtml"===e.format),n(l,73,0,"roboformcsv"===e.format),n(l,76,0,"passboltcsv"===e.format),n(l,79,0,"ascendocsv"===e.format),n(l,82,0,"passwordbossjson"===e.format),n(l,85,0,"zohovaultcsv"===e.format),n(l,88,0,"splashidcsv"===e.format),n(l,91,0,"passkeepcsv"===e.format),n(l,94,0,"gnomejson"===e.format),n(l,97,0,"passwordagentcsv"===e.format),n(l,100,0,"passpackcsv"===e.format),n(l,103,0,"passmanjson"===e.format)},null)}function tn(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,en)),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 un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-import",[],null,null,null,tn,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=tn,l.View_ImportComponent_Host_0=un;var on=t.ɵccf("app-import",p.ImportComponent,un,{},{},[]);l.ImportComponentNgFactory=on},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(47),p=e(252),f=e(20),v=e(7),h=e(222),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,51,"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,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,15,"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","masterPassword"]],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",""],["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,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.masterPassword=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(33,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(36,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(38,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(39,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(43,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(45,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"span",[],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"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,33,0,"");n(l,36,0,"MasterPassword",e.masterPassword);n(l,39,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),"exportWarning"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"masterPass"))),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,43,0,t.ɵnov(l,1).loading),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"loading")),"")),n(l,49,0,t.ɵunv(l,49,0,n(l,50,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,S)),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=S,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(8),o=e(3),r=e(9),i=e(5),a=e(474),s=t.ɵcrt({encapsulation:2,styles:[],data:{}});function d(n){return t.ɵvid(0,[t.ɵpid(0,u.I18nPipe,[o.I18nService]),(n()(),t.ɵeld(1,0,null,null,39,"div",[["class","container page-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(3,0,null,null,36,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(5,0,null,null,27,"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"]],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,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(17,1720320,null,2,r.RouterLinkActive,[r.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,r.RouterLinkWithHref,[r.Router,r.ActivatedRoute,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),t.ɵdid(25,1720320,null,2,r.RouterLinkActive,[r.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.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(34,0,null,null,4,"div",[["class","col-9"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(36,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),t.ɵdid(37,212992,null,0,r.RouterOutlet,[r.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,16,0,"import");n(l,17,0,"active");n(l,24,0,"export");n(l,25,0,"active"),n(l,37,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")))})}function c(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-tools",[],null,null,null,d,s)),t.ɵdid(1,49152,null,0,a.ToolsComponent,[],null,null)],null,null)}l.RenderType_ToolsComponent=s,l.View_ToolsComponent_0=d,l.View_ToolsComponent_Host_0=c;var p=t.ɵccf("app-org-tools",a.ToolsComponent,c,{},{},[]);l.ToolsComponentNgFactory=p},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(5),r=e(38),i=e(35),a=e(3),s=e(8),d=e(19),c=e(18),p=e(475),f=e(6),v=e(13),h=e(221),g=e(9),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 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/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 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/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 Password Safe desktop application, navigate to "File" → "Export To" → "XML format..." and save the XML\n 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 Dashlane desktop application, navigate to "File" → "Export" → "Unsecured archive (readable) in CSV format"\n and save the CSV 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 mSecure desktop application, navigate to "File" → "Export" → "CSV File..." and save the CSV 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 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 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 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 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 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 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 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 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 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 $(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 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 Password Boss desktop application, navigate to "File" → "Export data" → "Password Boss JSON - not encrypted"\n and save the JSON file.\n ']))],null,null)}function Y(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 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 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 X(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 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 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 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 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 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 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 en(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,104,"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,S)),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,w)),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,Z)),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,J)),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 "]))],function(n,l){var e=l.component;n(l,1,0,"info",t.ɵinlineInterpolate(1,"",e.getFormatInstructionTitle(),"")),n(l,4,0,"bitwardencsv"===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,"pwsafexml"===e.format),n(l,58,0,"dashlanecsv"===e.format),n(l,61,0,"msecurecsv"===e.format),n(l,64,0,"stickypasswordxml"===e.format),n(l,67,0,"truekeycsv"===e.format),n(l,70,0,"clipperzhtml"===e.format),n(l,73,0,"roboformcsv"===e.format),n(l,76,0,"passboltcsv"===e.format),n(l,79,0,"ascendocsv"===e.format),n(l,82,0,"passwordbossjson"===e.format),n(l,85,0,"zohovaultcsv"===e.format),n(l,88,0,"splashidcsv"===e.format),n(l,91,0,"passkeepcsv"===e.format),n(l,94,0,"gnomejson"===e.format),n(l,97,0,"passwordagentcsv"===e.format),n(l,100,0,"passpackcsv"===e.format),n(l,103,0,"passmanjson"===e.format)},null)}function tn(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,en)),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 un(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-org-import",[],null,null,null,tn,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=tn,l.View_ImportComponent_Host_0=un;var on=t.ɵccf("app-org-import",p.ImportComponent,un,{},{},[]);l.ImportComponentNgFactory=on},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(47),p=e(476),f=e(20),v=e(7),h=e(222),g=e(9),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,51,"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,18,"div",[["class","row"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(25,0,null,null,15,"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","masterPassword"]],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",""],["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,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.masterPassword=e)&&u);return u},null,null)),t.ɵdid(32,16384,null,0,r.DefaultValueAccessor,[t.Renderer2,t.ElementRef,[2,r.COMPOSITION_BUFFER_MODE]],null,null),t.ɵdid(33,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(36,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(38,16384,null,0,r.NgControlStatus,[[4,r.NgControl]],null,null),t.ɵdid(39,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(43,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(45,0,null,null,1,"i",[["class","fa fa-spinner fa-spin"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(46,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(48,0,null,null,2,"span",[],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"]))],function(n,l){var e=l.component;n(l,5,0,e.formPromise);n(l,19,0,"warning");n(l,33,0,"");n(l,36,0,"MasterPassword",e.masterPassword);n(l,39,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),"exportWarning"))),n(l,28,0,t.ɵunv(l,28,0,n(l,29,0,t.ɵnov(l,0),"masterPass"))),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,43,0,t.ɵnov(l,1).loading),n(l,45,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,45,0,n(l,46,0,t.ɵnov(l,0),"loading")),"")),n(l,49,0,t.ɵunv(l,49,0,n(l,50,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(9),o=e(5),r=e(8),i=e(3),a=e(477),s=e(11),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(61),o=e(5),r=e(8),i=e(3),a=e(254),s=e(12),d=e(478),c=e(4),p=e(9),f=e(41),v=e(6),h=e(13),g=e(7),m=e(11),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 S(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,S)),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,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 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(5),o=e(19),r=e(18),i=e(8),a=e(3),s=e(12),d=e(480),c=e(4),p=e(9),f=e(223),v=e(13),h=e(11),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 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 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.ɵ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,S)),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,w)),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(61),o=e(5),r=e(8),i=e(3),a=e(254),s=e(12),d=e(481),c=e(4),p=e(9),f=e(6),v=e(13),h=e(7),g=e(11),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 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,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 w(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,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 _(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,w)),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(38),o=e(35),r=e(3),i=e(61),a=e(153),s=e(131),d=e(39),c=e(99),p=e(37),f=e(5),v=e(8),h=e(254),g=e(12),m=e(482),y=e(4),C=e(9),b=e(7),S=e(6),w=e(13),_=e(20),R=e(11),I=e(66),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,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 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),"admin")))})}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),"manager")))})}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),"user")))})}function L(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 z(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 G(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 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.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 q(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,71,"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,13,"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.ɵand(16777216,null,null,1,null,D)),t.ɵdid(30,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(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,F)),t.ɵdid(36,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(39,0,null,null,31,"td",[["class","table-list-options"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(41,0,null,null,28,"div",[["appListDropdown",""],["class","dropdown"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(43,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(45,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(48,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,L)),t.ɵdid(51,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,z)),t.ɵdid(54,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(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,j)),t.ɵdid(60,16384,null,0,f.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(62,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,63).onClick(e)&&u);"click"===l&&(u=!1!==o.remove(n.context.$implicit)&&u);return u},null,null)),t.ɵdid(63,16384,null,0,i.StopClickDirective,[],null,null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(65,0,null,null,0,"i",[["class","fa fa-fw fa-remove"]],null,null,null,null,null)),(n()(),t.ɵted(66,null,["\n ","\n "])),t.ɵppd(67,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.type===e.organizationUserType.Owner),n(l,30,0,l.context.$implicit.type===e.organizationUserType.Admin),n(l,33,0,l.context.$implicit.type===e.organizationUserType.Manager),n(l,36,0,l.context.$implicit.type===e.organizationUserType.User),n(l,51,0,l.context.$implicit.status===e.organizationUserStatusType.Invited),n(l,54,0,l.context.$implicit.status===e.organizationUserStatusType.Accepted),n(l,57,0,e.accessGroups),n(l,60,0,e.accessEvents&&l.context.$implicit.status===e.organizationUserStatusType.Confirmed)},function(n,l){n(l,12,0,l.context.$implicit.email),n(l,66,0,t.ɵunv(l,66,0,n(l,67,0,t.ɵnov(l.parent.parent.parent,0),"remove")))})}function B(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,q)),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 K(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,B)),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 H(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 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 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,K)),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,H)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[2,3],["groupsTemplate",2]],null,0,null,$)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[3,3],["eventsTemplate",2]],null,0,null,W)),(n()(),t.ɵted(-1,null,["\n"])),(n()(),t.ɵand(16777216,[[4,3],["confirmTemplate",2]],null,0,null,Y)),(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 J(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,S.Angulartics2,w.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=J;var X=t.ɵccf("app-org-people",m.PeopleComponent,J,{},{},[]);l.PeopleComponentNgFactory=X},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(9),o=e(5),r=e(8),i=e(3),a=e(483),s=e(11),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(153),a=e(131),s=e(39),d=e(99),c=e(37),p=e(8),f=e(3),v=e(5),h=e(484),g=e(4),m=e(6),y=e(13),C=e(9),b=e(60),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});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 _(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,w)),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,S)),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=S,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(38),o=e(35),r=e(3),i=e(61),a=e(5),s=e(8),d=e(485),c=e(4),p=e(11),f=e(27),v=e(9),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 S(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,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,S)),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,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,_)),(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(38),o=e(35),r=e(3),i=e(19),a=e(18),s=e(5),d=e(546),c=e(460),p=e(4),f=e(6),v=e(13),h=e(849),g=e(583),m=e(547),y=e(461),C=e(12),b=e(548),S=e(462),w=e(61),_=e(8),R=e(486),I=e(69),k=e(7),A=e(9),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 Z(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 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,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,Z)),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,S.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,w.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,J)),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(8),o=e(3),r=e(5),i=e(12),a=e(19),s=e(18),d=e(583),c=e(4),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(5),r=e(61),i=e(584),a=e(47),s=e(19),d=e(18),c=e(585),p=e(8),f=e(3),v=e(449),h=e(28),g=e(54),m=e(7),y=e(155),C=e(37),b=e(11),S=e(41),w=e(218),_=e(73),R=e(27),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 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,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 J(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,J)),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,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,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,S.CollectionService,w.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(5),i=e(61),a=e(8),s=e(3),d=e(12),c=e(450),p=e(28),f=e(20),v=e(11),h=e(7),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 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,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 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,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 _(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,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.ɵ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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(528),d=e(6),c=e(28),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(8),r=e(3),i=e(19),a=e(18),s=e(5),d=e(529),c=e(6),p=e(28),f=e(13),v=e(54),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(530),p=e(6),f=e(28),v=e(13),h=e(41),g=e(11),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 S(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,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.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,w)),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(451),p=e(41),f=e(7),v=e(28),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 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,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 w(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-vault-collections",[],null,null,null,S,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=S,l.View_CollectionsComponent_Host_0=w;var _=t.ɵccf("app-vault-collections",c.CollectionsComponent,w,{cipherId:"cipherId"},{onSavedCollections:"onSavedCollections"},[]);l.CollectionsComponentNgFactory=_},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(47),p=e(539),f=e(4),v=e(6),h=e(13),g=e(20),m=e(27),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 S=t.ɵccf("app-deauthorize-sessions",p.DeauthorizeSessionsComponent,b,{},{},[]);l.DeauthorizeSessionsComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(540),v=e(4),h=e(6),g=e(13),m=e(20),y=e(27),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 S(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=S;var w=t.ɵccf("app-delete-account",f.DeleteAccountComponent,S,{},{},[]);l.DeleteAccountComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(582),v=e(4),h=e(6),g=e(13),m=e(20),y=e(9),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 S(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=S;var w=t.ɵccf("app-delete-organization",f.DeleteOrganizationComponent,S,{},{},[]);l.DeleteOrganizationComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(19),o=e(18),r=e(8),i=e(3),a=e(12),s=e(5),d=e(531),c=e(54),p=e(7),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(98),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(5),r=e(61),i=e(584),a=e(47),s=e(19),d=e(18),c=e(585),p=e(8),f=e(3),v=e(570),h=e(28),g=e(54),m=e(7),y=e(155),C=e(37),b=e(11),S=e(41),w=e(218),_=e(73),R=e(4),I=e(27),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 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 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,Z)),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,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,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,S.CollectionService,w.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(5),i=e(61),a=e(8),s=e(3),d=e(12),c=e(572),p=e(28),f=e(20),v=e(11),h=e(7),g=e(4),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 S(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,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,S)),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,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 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(95),r=e(5),i=e(19),a=e(18),s=e(8),d=e(3),c=e(575),p=e(4),f=e(6),v=e(13),h=e(7),g=e(20),m=e(11),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 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),"noGroupsInList")))})}function w(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,w)),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,S)),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(573),p=e(41),f=e(7),v=e(28),h=e(4),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 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,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 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,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,S)),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,w,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=w,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(5),o=e(19),r=e(18),i=e(12),a=e(8),s=e(3),d=e(473),c=e(4),p=e(223),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 S(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 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 _(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,S)),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,w)),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(5),o=e(12),r=e(95),i=e(153),a=e(131),s=e(39),d=e(99),c=e(37),p=e(8),f=e(3),v=e(254),h=e(19),g=e(18),m=e(479),y=e(4),C=e(6),b=e(13),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(95),r=e(5),i=e(19),a=e(18),s=e(8),d=e(3),c=e(577),p=e(4),f=e(6),v=e(13),h=e(41),g=e(7),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 S(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 w(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,S)),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,w)),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(95),r=e(5),i=e(19),a=e(18),s=e(8),d=e(3),c=e(579),p=e(4),f=e(6),v=e(13),h=e(41),g=e(7),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 S(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 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),"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,w)),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,S)),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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(5),d=e(580),c=e(4),p=e(6),f=e(13),v=e(20),h=e(66),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(95),r=e(5),i=e(8),a=e(3),s=e(19),d=e(18),c=e(581),p=e(4),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 S(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 w(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,S)),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,w,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=w,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(5),o=e(8),r=e(3),i=e(550),a=e(73),s=e(7),d=t.ɵcrt({encapsulation:2,styles:[],data:{}});function c(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","password"]],null,null,null,null,null)),(n()(),t.ɵted(5,null,["",""])),(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,5,0,l.context.$implicit.password),n(l,8,0,t.ɵunv(l,8,0,n(l,9,0,t.ɵnov(l.parent.parent,1),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 p(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,c)),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 f(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 v(n){return t.ɵvid(0,[t.ɵpid(0,o.I18nPipe,[r.I18nService]),t.ɵpid(0,u.DatePipe,[t.LOCALE_ID]),(n()(),t.ɵeld(2,0,null,null,44,"div",[["class","modal fade"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(4,0,null,null,41,"div",[["class","modal-dialog"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(6,0,null,null,38,"div",[["class","modal-content"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(8,0,null,null,12,"div",[["class","modal-header"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(10,0,null,null,2,"h2",[["class","modal-title"]],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,5,"button",[["class","close"],["data-dismiss","modal"],["type","button"]],[[1,"aria-label",0]],null,null,null,null)),t.ɵppd(15,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(17,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,p)),t.ɵdid(23,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(26,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(28,0,null,null,15,"div",[["class","modal-footer"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(30,0,null,null,3,"button",[["class","btn btn-outline-secondary"],["data-dismiss","modal"],["type","button"]],[[8,"title",0]],null,null,null,null)),t.ɵppd(31,1),(n()(),t.ɵted(32,null,["\n ","\n "])),t.ɵppd(33,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(35,0,null,null,7,"div",[["class","ml-auto"]],null,null,null,null,null)),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(37,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(38,1),(n()(),t.ɵted(-1,null,["\n "])),(n()(),t.ɵeld(40,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,23,0,e.history.length),n(l,26,0,!e.history.length)},function(n,l){n(l,11,0,t.ɵunv(l,11,0,n(l,12,0,t.ɵnov(l,0),"passwordHistory"))),n(l,14,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,14,0,n(l,15,0,t.ɵnov(l,0),"close")),"")),n(l,30,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,30,0,n(l,31,0,t.ɵnov(l,0),"close")),"")),n(l,32,0,t.ɵunv(l,32,0,n(l,33,0,t.ɵnov(l,0),"close"))),n(l,37,0,t.ɵinlineInterpolate(1,"",t.ɵunv(l,37,0,n(l,38,0,t.ɵnov(l,0),"clear")),""))})}function h(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-password-generator-history",[],null,null,null,v,d)),t.ɵdid(1,114688,null,0,i.PasswordGeneratorHistoryComponent,[a.PasswordGenerationService,s.PlatformUtilsService,r.I18nService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_PasswordGeneratorHistoryComponent=d,l.View_PasswordGeneratorHistoryComponent_0=v,l.View_PasswordGeneratorHistoryComponent_Host_0=h;var g=t.ɵccf("app-password-generator-history",i.PasswordGeneratorHistoryComponent,h,{},{},[]);l.PasswordGeneratorHistoryComponentNgFactory=g},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(454),v=e(4),h=e(6),g=e(13),m=e(20),y=e(9),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 S(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=S;var w=t.ɵccf("app-purge-vault",f.PurgeVaultComponent,S,{organizationId:"organizationId"},{},[]);l.PurgeVaultComponentNgFactory=w},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(12),o=e(95),r=e(5),i=e(9),a=e(8),s=e(3),d=e(19),c=e(18),p=e(532),f=e(41),v=e(7),h=e(11),g=e(28),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 S(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 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,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,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.ɵted(-1,null,["\n "])),(n()(),t.ɵand(16777216,null,null,1,null,w)),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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(19),h=e(18),g=e(5),m=e(8),y=e(541),C=e(6),b=e(11),S=e(7),w=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,w)),t.ɵdid(1,245760,null,0,y.TwoFactorAuthenticatorComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.UserService,S.PlatformUtilsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_TwoFactorAuthenticatorComponent=w,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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(19),h=e(18),g=e(5),m=e(8),y=e(457),C=e(6),b=e(7),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(19),h=e(18),g=e(5),m=e(8),y=e(542),C=e(6),b=e(7),S=e(11),w=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,w)),t.ɵdid(1,49152,null,0,y.TwoFactorEmailComponent,[r.ApiService,i.I18nService,C.Angulartics2,a.ToasterService,b.PlatformUtilsService,S.UserService],null,null)],null,null)}l.RenderType_TwoFactorEmailComponent=w,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(61),o=e(8),r=e(3),i=e(5),a=e(516),s=e(89),d=e(9),c=e(7),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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(5),c=e(8),p=e(543),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 S=t.ɵccf("app-two-factor-recovery",p.TwoFactorRecoveryComponent,b,{},{},[]);l.TwoFactorRecoveryComponentNgFactory=S},function(n,l,e){"use strict";Object.defineProperty(l,"__esModule",{value:!0});var t=e(0),u=e(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(5),f=e(61),v=e(19),h=e(18),g=e(12),m=e(8),y=e(544),C=e(6),b=e(7),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(184),o=e(160),r=e(4),i=e(3),a=e(13),s=e(20),d=e(38),c=e(35),p=e(12),f=e(47),v=e(5),h=e(19),g=e(18),m=e(8),y=e(545),C=e(6),b=e(7),S=t.ɵcrt({encapsulation:2,styles:[],data:{}});function w(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,w)),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,S)),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=S,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(8),o=e(3),r=e(12),i=e(19),a=e(18),s=e(38),d=e(35),c=e(94),p=e(47),f=e(525),v=e(4),h=e(6),g=e(13),m=e(20),y=e(27),C=e(60),b=e(54),S=e(28),w=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,_,w)),t.ɵdid(1,49152,null,0,f.UpdateKeyComponent,[v.ApiService,o.I18nService,h.Angulartics2,g.ToasterService,m.CryptoService,y.MessagingService,C.SyncService,b.FolderService,S.CipherService],null,null)],null,null)}l.RenderType_UpdateKeyComponent=w,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(885),o=e(108),r=e(13),i=e(9),a=e(511),s=e(424),d=e(105),c=e(11),p=e(69),f=e(54),v=e(426),h=e(60),g=e(73),m=e(28),y=e(89),C=e(6),b=e(3),S=e(7),w=e(216),_=e(66),R=e(20),I=e(41),k=e(39),A=e(120),O=e(425),N=t.ɵcrt({encapsulation:2,styles:[],data:{}});function E(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 T(n){return t.ɵvid(0,[(n()(),t.ɵeld(0,0,null,null,1,"app-root",[],null,null,null,E,N)),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,S.PlatformUtilsService,t.NgZone,w.LockService,_.StorageService,R.CryptoService,I.CollectionService,k.DomSanitizer,A.SearchService,O.NotificationsService],null,null)],function(n,l){n(l,1,0)},null)}l.RenderType_AppComponent=N,l.View_AppComponent_0=E,l.View_AppComponent_Host_0=T;var P=t.ɵccf("app-root",a.AppComponent,T,{},{},[]);l.AppComponentNgFactory=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&&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.6.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)})),c.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(c)];case 1:return u.sent(),p=new Map,e.forEach(function(n){p.set(n.id,n)}),f=[],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 p.has(n)}).map(function(n){return p.get(n).name})),v.buildCommonCipher(l,n),f.push(l)}}),"csv"===l?[2,o.unparse(f)]:[2,JSON.stringify(f,null," ")]}})})},n.prototype.getFileName=function(n){void 0===n&&(n=null);var l=new Date,e=l.getFullYear()+""+this.padNumber(l.getMonth()+1,2)+this.padNumber(l.getDate(),2)+this.padNumber(l.getHours(),2)+this.padNumber(l.getMinutes(),2)+this.padNumber(l.getSeconds(),2);return"bitwarden"+(n?"_"+n:"")+"_export_"+e+".csv"},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=c},,function(n,l){},,function(n,l){},,,,,,,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 f.BitwardenCsvImporter;case"lastpasscsv":case"passboltcsv":return new R.LastPassCsvImporter;case"keepassxcsv":return new w.KeePassXCsvImporter;case"aviracsv":return new p.AviraCsvImporter;case"blurcsv":return new v.BlurCsvImporter;case"safeincloudxml":return new F.SafeInCloudXmlImporter;case"padlockcsv":return new N.PadlockCsvImporter;case"keepass2xml":return new S.KeePass2XmlImporter;case"chromecsv":case"operacsv":case"vivaldicsv":return new h.ChromeCsvImporter;case"firefoxcsv":return new C.FirefoxCsvImporter;case"upmcsv":return new q.UpmCsvImporter;case"saferpasscsv":return new L.SaferPassCsvImporter;case"meldiumcsv":return new I.MeldiumCsvImporter;case"1password1pif":return new A.OnePassword1PifImporter;case"1passwordwincsv":return new O.OnePasswordWinCsvImporter;case"keepercsv":return new _.KeeperCsvImporter;case"passworddragonxml":return new M.PasswordDragonXmlImporter;case"enpasscsv":return new y.EnpassCsvImporter;case"pwsafexml":return new D.PasswordSafeXmlImporter;case"dashlanecsv":return new m.DashlaneCsvImporter;case"msecurecsv":return new k.MSecureCsvImporter;case"stickypasswordxml":return new G.StickyPasswordXmlImporter;case"truekeycsv":return new j.TrueKeyCsvImporter;case"clipperzhtml":return new g.ClipperzHtmlImporter;case"roboformcsv":return new U.RoboFormCsvImporter;case"ascendocsv":return new c.AscendoCsvImporter;case"passwordbossjson":return new x.PasswordBossJsonImporter;case"zohovaultcsv":return new B.ZohoVaultCsvImporter;case"splashidcsv":return new z.SplashIdCsvImporter;case"passkeepcsv":return new E.PassKeepCsvImporter;case"gnomejson":return new b.GnomeJsonImporter;case"passwordagentcsv":return new V.PasswordAgentCsvImporter;case"passpackcsv":return new P.PasspackCsvImporter;case"passmanjson":return new T.PassmanJsonImporter;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(29),o=e(30),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(29),o=e(30),r=e(154),i=e(159),a=e(219),s=e(181),d=e(100),c=e(52),p=e(179),f=e(106),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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){var t=!1;if(!(n.length<2)){var u=l.initLoginCipher();if(u.name=l.getValueOrDefault(n[0],"--"),2===n.length)u.login.uris=l.makeUriArray(n[1]);else if(3===n.length)u.login.uris=l.makeUriArray(n[1]),u.login.username=l.getValueOrDefault(n[2]);else if(4===n.length)l.isNullOrWhitespace(n[2])&&l.isNullOrWhitespace(n[3])?(u.login.username=n[1],u.notes=n[2]+"\n"+n[3]):(u.login.username=n[2],u.notes=n[1]+"\n"+n[3]);else if(5===n.length)u.login.uris=l.makeUriArray(n[1]),u.login.username=l.getValueOrDefault(n[2]),u.login.password=l.getValueOrDefault(n[3]),u.notes=l.getValueOrDefault(n[4]);else if(6===n.length)l.isNullOrWhitespace(n[2])?(u.login.username=l.getValueOrDefault(n[3]),u.login.password=l.getValueOrDefault(n[4]),u.notes=l.getValueOrDefault(n[5])):(u.login.username=l.getValueOrDefault(n[2]),u.login.password=l.getValueOrDefault(n[3]),u.notes=l.getValueOrDefault(n[4],"")+"\n"+l.getValueOrDefault(n[5],"")),u.login.uris=l.makeUriArray(n[1]);else if(7===n.length)l.isNullOrWhitespace(n[2])?(u.login.username=l.getValueOrDefault(n[3]),u.notes=l.getValueOrDefault(n[4],"")+"\n"+l.getValueOrDefault(n[6],"")):(u.login.username=l.getValueOrDefault(n[2]),u.notes=l.getValueOrDefault(n[3],"")+"\n"+l.getValueOrDefault(n[4],"")+"\n"+l.getValueOrDefault(n[6],"")),u.login.uris=l.makeUriArray(n[1]),u.login.password=l.getValueOrDefault(n[5]);else for(var o=1;o2&&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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(156),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(52),i=e(106),a=e(100),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(159),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(29),o=e(30),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(29),o=e(30),r=e(132),i=e(52),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(156),i=e(100),a=e(52),s=e(106),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(29),o=e(30),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(29),o=e(30),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(29),o=e(30),r=e(132),i=e(100),a=e(52),s=e(106),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(29),o=e(30),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(29),o=e(30),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 { 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 {\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 { 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","import { CipherString } from '../models/domain/cipherString';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\r\n\r\nimport { KdfType } from '../enums/kdfType';\r\n\r\nexport abstract class CryptoService {\r\n setKey: (key: SymmetricCryptoKey) => Promise;\r\n setKeyHash: (keyHash: string) => Promise<{}>;\r\n setEncKey: (encKey: string) => Promise<{}>;\r\n setEncPrivateKey: (encPrivateKey: string) => Promise<{}>;\r\n setOrgKeys: (orgs: ProfileOrganizationResponse[]) => Promise<{}>;\r\n getKey: () => Promise;\r\n getKeyHash: () => Promise;\r\n getEncKey: () => Promise;\r\n getPublicKey: () => Promise;\r\n getPrivateKey: () => Promise;\r\n getFingerprint: (userId: string, publicKey?: ArrayBuffer) => Promise;\r\n getOrgKeys: () => Promise>;\r\n getOrgKey: (orgId: string) => Promise;\r\n hasKey: () => Promise;\r\n hasEncKey: () => Promise;\r\n clearKey: () => Promise;\r\n clearKeyHash: () => Promise;\r\n clearEncKey: (memoryOnly?: boolean) => Promise;\r\n clearKeyPair: (memoryOnly?: boolean) => Promise;\r\n clearOrgKeys: (memoryOnly?: boolean) => Promise;\r\n clearKeys: () => Promise;\r\n toggleKey: () => Promise;\r\n makeKey: (password: string, salt: string, kdf: KdfType, kdfIterations: number) => Promise;\r\n makeShareKey: () => Promise<[CipherString, SymmetricCryptoKey]>;\r\n makeKeyPair: (key?: SymmetricCryptoKey) => Promise<[string, CipherString]>;\r\n hashPassword: (password: string, key: SymmetricCryptoKey) => Promise;\r\n makeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\r\n remakeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\r\n encrypt: (plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\r\n encryptToBytes: (plainValue: ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\r\n rsaEncrypt: (data: ArrayBuffer, publicKey?: ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\r\n decryptToBytes: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\r\n decryptToUtf8: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\r\n decryptFromBytes: (encBuf: ArrayBuffer, key: SymmetricCryptoKey) => Promise;\r\n randomNumber: (min: number, max: number) => Promise;\r\n}\r\n","export abstract class MessagingService {\r\n send: (subscriber: string, arg?: any) => void;\r\n}\r\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 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 * 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 || 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 * 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","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 { 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","export enum CipherType {\r\n Login = 1,\r\n SecureNote = 2,\r\n Card = 3,\r\n Identity = 4,\r\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 {\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","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","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 class PasswordVerificationRequest {\n masterPasswordHash: string;\n}\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 { 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","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 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 {\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","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","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 { 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 { 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 {\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 { 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 { 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","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 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 { 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 { 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 { 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 {\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 { 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 { 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 {\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 FieldType {\r\n Text = 0,\r\n Hidden = 1,\r\n Boolean = 2,\r\n}\r\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","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 { 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","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","
\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 {\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 { 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 {\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 {\n getExport: (format?: 'csv' | 'json') => Promise;\n getOrganizationExport: (organizationId: string, format?: 'csv' | 'json') => Promise;\n getFileName: (prefix?: string) => string;\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\nimport { SearchCiphersPipe } from 'jslib/angular/pipes/search-ciphers.pipe';\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 private searchPipe: SearchCiphersPipe;\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 this.searchPipe = new SearchCiphersPipe(platformUtilsService);\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 let filteredCiphers = this.ciphers;\n if (select) {\n filteredCiphers = this.searchPipe.transform(this.ciphers, this.searchText);\n }\n const selectCount = select && filteredCiphers.length > MaxCheckedCount ?\n MaxCheckedCount : filteredCiphers.length;\n for (let i = 0; i < selectCount; i++) {\n this.checkCipher(filteredCiphers[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","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","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","export enum OrganizationUserStatusType {\n Invited = 0,\n Accepted = 1,\n Confirmed = 2,\n}\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 { 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 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 { 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 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 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 });\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","/**\n * Duo Web SDK v2\n * Copyright 2017, Duo Security\n */\n(function (root, factory) {\n /*eslint-disable */\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], factory);\n /*eslint-enable */\n }\n else if (typeof module === 'object' && module.exports) {\n // Node. Does not work with strict CommonJS, but\n // only CommonJS-like environments that support module.exports,\n // like Node.\n module.exports = factory();\n }\n else {\n // Browser globals (root is window)\n var Duo = factory();\n // If the Javascript was loaded via a script tag, attempt to autoload\n // the frame.\n Duo._onReady(Duo.init);\n // Attach Duo to the `window` object\n root.Duo = Duo;\n }\n}(this, function () {\n var DUO_MESSAGE_FORMAT = /^(?:AUTH|ENROLL)+\\|[A-Za-z0-9\\+\\/=]+\\|[A-Za-z0-9\\+\\/=]+$/;\n var DUO_ERROR_FORMAT = /^ERR\\|[\\w\\s\\.\\(\\)]+$/;\n var DUO_OPEN_WINDOW_FORMAT = /^DUO_OPEN_WINDOW\\|/;\n var VALID_OPEN_WINDOW_DOMAINS = [\n 'duo.com',\n 'duosecurity.com',\n 'duomobile.s3-us-west-1.amazonaws.com'\n ];\n var iframeId = 'duo_iframe', postAction = '', postArgument = 'sig_response', host, sigRequest, duoSig, appSig, iframe, submitCallback;\n function throwError(message, url) {\n throw new Error('Duo Web SDK error: ' + message +\n (url ? ('\\n' + 'See ' + url + ' for more information') : ''));\n }\n function hyphenize(str) {\n return str.replace(/([a-z])([A-Z])/, '$1-$2').toLowerCase();\n }\n // cross-browser data attributes\n function getDataAttribute(element, name) {\n if ('dataset' in element) {\n return element.dataset[name];\n }\n else {\n return element.getAttribute('data-' + hyphenize(name));\n }\n }\n // cross-browser event binding/unbinding\n function on(context, event, fallbackEvent, callback) {\n if ('addEventListener' in window) {\n context.addEventListener(event, callback, false);\n }\n else {\n context.attachEvent(fallbackEvent, callback);\n }\n }\n function off(context, event, fallbackEvent, callback) {\n if ('removeEventListener' in window) {\n context.removeEventListener(event, callback, false);\n }\n else {\n context.detachEvent(fallbackEvent, callback);\n }\n }\n function onReady(callback) {\n on(document, 'DOMContentLoaded', 'onreadystatechange', callback);\n }\n function offReady(callback) {\n off(document, 'DOMContentLoaded', 'onreadystatechange', callback);\n }\n function onMessage(callback) {\n on(window, 'message', 'onmessage', callback);\n }\n function offMessage(callback) {\n off(window, 'message', 'onmessage', callback);\n }\n /**\n * Parse the sig_request parameter, throwing errors if the token contains\n * a server error or if the token is invalid.\n *\n * @param {String} sig Request token\n */\n function parseSigRequest(sig) {\n if (!sig) {\n // nothing to do\n return;\n }\n // see if the token contains an error, throwing it if it does\n if (sig.indexOf('ERR|') === 0) {\n throwError(sig.split('|')[1]);\n }\n // validate the token\n if (sig.indexOf(':') === -1 || sig.split(':').length !== 2) {\n throwError('Duo was given a bad token. This might indicate a configuration ' +\n 'problem with one of Duo\\'s client libraries.', 'https://www.duosecurity.com/docs/duoweb#first-steps');\n }\n var sigParts = sig.split(':');\n // hang on to the token, and the parsed duo and app sigs\n sigRequest = sig;\n duoSig = sigParts[0];\n appSig = sigParts[1];\n return {\n sigRequest: sig,\n duoSig: sigParts[0],\n appSig: sigParts[1]\n };\n }\n /**\n * This function is set up to run when the DOM is ready, if the iframe was\n * not available during `init`.\n */\n function onDOMReady() {\n iframe = document.getElementById(iframeId);\n if (!iframe) {\n throw new Error('This page does not contain an iframe for Duo to use.' +\n 'Add an element like ' +\n 'to this page. ' +\n 'See https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe ' +\n 'for more information.');\n }\n // we've got an iframe, away we go!\n ready();\n // always clean up after yourself\n offReady(onDOMReady);\n }\n /**\n * Validate that a MessageEvent came from the Duo service, and that it\n * is a properly formatted payload.\n *\n * The Google Chrome sign-in page injects some JS into pages that also\n * make use of postMessage, so we need to do additional validation above\n * and beyond the origin.\n *\n * @param {MessageEvent} event Message received via postMessage\n */\n function isDuoMessage(event) {\n return Boolean(event.origin === ('https://' + host) &&\n typeof event.data === 'string' &&\n (event.data.match(DUO_MESSAGE_FORMAT) ||\n event.data.match(DUO_ERROR_FORMAT) ||\n event.data.match(DUO_OPEN_WINDOW_FORMAT)));\n }\n /**\n * Validate the request token and prepare for the iframe to become ready.\n *\n * All options below can be passed into an options hash to `Duo.init`, or\n * specified on the iframe using `data-` attributes.\n *\n * Options specified using the options hash will take precedence over\n * `data-` attributes.\n *\n * Example using options hash:\n * ```javascript\n * Duo.init({\n * iframe: \"some_other_id\",\n * host: \"api-main.duo.test\",\n * sig_request: \"...\",\n * post_action: \"/auth\",\n * post_argument: \"resp\"\n * });\n * ```\n *\n * Example using `data-` attributes:\n * ```\n * \n * ```\n *\n * @param {Object} options\n * @param {String} options.iframe The iframe, or id of an iframe to set up\n * @param {String} options.host Hostname\n * @param {String} options.sig_request Request token\n * @param {String} [options.post_action=''] URL to POST back to after successful auth\n * @param {String} [options.post_argument='sig_response'] Parameter name to use for response token\n * @param {Function} [options.submit_callback] If provided, duo will not submit the form instead execute\n * the callback function with reference to the \"duo_form\" form object\n * submit_callback can be used to prevent the webpage from reloading.\n */\n function init(options) {\n if (options) {\n if (options.host) {\n host = options.host;\n }\n if (options.sig_request) {\n parseSigRequest(options.sig_request);\n }\n if (options.post_action) {\n postAction = options.post_action;\n }\n if (options.post_argument) {\n postArgument = options.post_argument;\n }\n if (options.iframe) {\n if (options.iframe.tagName) {\n iframe = options.iframe;\n }\n else if (typeof options.iframe === 'string') {\n iframeId = options.iframe;\n }\n }\n if (typeof options.submit_callback === 'function') {\n submitCallback = options.submit_callback;\n }\n }\n // if we were given an iframe, no need to wait for the rest of the DOM\n if (false && iframe) {\n ready();\n }\n else {\n // try to find the iframe in the DOM\n iframe = document.getElementById(iframeId);\n // iframe is in the DOM, away we go!\n if (iframe) {\n ready();\n }\n else {\n // wait until the DOM is ready, then try again\n onReady(onDOMReady);\n }\n }\n // always clean up after yourself!\n offReady(init);\n }\n /**\n * This function is called when a message was received from another domain\n * using the `postMessage` API. Check that the event came from the Duo\n * service domain, and that the message is a properly formatted payload,\n * then perform the post back to the primary service.\n *\n * @param event Event object (contains origin and data)\n */\n function onReceivedMessage(event) {\n if (isDuoMessage(event)) {\n if (event.data.match(DUO_OPEN_WINDOW_FORMAT)) {\n var url = event.data.substring(\"DUO_OPEN_WINDOW|\".length);\n if (isValidUrlToOpen(url)) {\n // Open the URL that comes after the DUO_WINDOW_OPEN token.\n window.open(url, \"_self\");\n }\n }\n else {\n // the event came from duo, do the post back\n doPostBack(event.data);\n // always clean up after yourself!\n offMessage(onReceivedMessage);\n }\n }\n }\n /**\n * Validate that this passed in URL is one that we will actually allow to\n * be opened.\n * @param url String URL that the message poster wants to open\n * @returns {boolean} true if we allow this url to be opened in the window\n */\n function isValidUrlToOpen(url) {\n if (!url) {\n return false;\n }\n var parser = document.createElement('a');\n parser.href = url;\n if (parser.protocol === \"duotrustedendpoints:\") {\n return true;\n }\n else if (parser.protocol !== \"https:\") {\n return false;\n }\n for (var i = 0; i < VALID_OPEN_WINDOW_DOMAINS.length; i++) {\n if (parser.hostname.endsWith(\".\" + VALID_OPEN_WINDOW_DOMAINS[i]) ||\n parser.hostname === VALID_OPEN_WINDOW_DOMAINS[i]) {\n return true;\n }\n }\n return false;\n }\n /**\n * Point the iframe at Duo, then wait for it to postMessage back to us.\n */\n function ready() {\n if (!host) {\n host = getDataAttribute(iframe, 'host');\n if (!host) {\n throwError('No API hostname is given for Duo to use. Be sure to pass ' +\n 'a `host` parameter to Duo.init, or through the `data-host` ' +\n 'attribute on the iframe element.', 'https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe');\n }\n }\n if (!duoSig || !appSig) {\n parseSigRequest(getDataAttribute(iframe, 'sigRequest'));\n if (!duoSig || !appSig) {\n throwError('No valid signed request is given. Be sure to give the ' +\n '`sig_request` parameter to Duo.init, or use the ' +\n '`data-sig-request` attribute on the iframe element.', 'https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe');\n }\n }\n // if postAction/Argument are defaults, see if they are specified\n // as data attributes on the iframe\n if (postAction === '') {\n postAction = getDataAttribute(iframe, 'postAction') || postAction;\n }\n if (postArgument === 'sig_response') {\n postArgument = getDataAttribute(iframe, 'postArgument') || postArgument;\n }\n // point the iframe at Duo\n iframe.src = [\n 'https://', host, '/frame/web/v1/auth?tx=', duoSig,\n '&parent=', encodeURIComponent(document.location.href),\n '&v=2.6'\n ].join('');\n // listen for the 'message' event\n onMessage(onReceivedMessage);\n }\n /**\n * We received a postMessage from Duo. POST back to the primary service\n * with the response token, and any additional user-supplied parameters\n * given in form#duo_form.\n */\n function doPostBack(response) {\n // create a hidden input to contain the response token\n var input = document.createElement('input');\n input.type = 'hidden';\n input.name = postArgument;\n input.value = response + ':' + appSig;\n // user may supply their own form with additional inputs\n var form = document.getElementById('duo_form');\n // if the form doesn't exist, create one\n if (!form) {\n form = document.createElement('form');\n // insert the new form after the iframe\n iframe.parentElement.insertBefore(form, iframe.nextSibling);\n }\n // make sure we are actually posting to the right place\n form.method = 'POST';\n form.action = postAction;\n // add the response token input to the form\n form.appendChild(input);\n // away we go!\n if (typeof submitCallback === \"function\") {\n submitCallback.call(null, form);\n }\n else {\n form.submit();\n }\n }\n return {\n init: init,\n _onReady: onReady,\n _parseSigRequest: parseSigRequest,\n _isDuoMessage: isDuoMessage,\n _doPostBack: doPostBack\n };\n}));\n//# sourceMappingURL=duo.js.map","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 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 });\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 { 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 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 {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport {\n Toast,\n ToasterService,\n} from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { OrganizationUserAcceptRequest } from 'jslib/models/request/organizationUserAcceptRequest';\n\n@Component({\n selector: 'app-accept-organization',\n templateUrl: 'accept-organization.component.html',\n})\nexport class AcceptOrganizationComponent implements OnInit {\n loading = true;\n authed = false;\n orgName: string;\n email: string;\n actionPromise: Promise;\n\n constructor(private router: Router, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute,\n private apiService: ApiService, private userService: UserService,\n private stateService: StateService) { }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n await this.stateService.remove('orgInvitation');\n let error = qParams.organizationId == null || qParams.organizationUserId == null || qParams.token == null;\n if (!error) {\n this.authed = await this.userService.isAuthenticated();\n if (this.authed) {\n const request = new OrganizationUserAcceptRequest();\n request.token = qParams.token;\n try {\n this.actionPromise = this.apiService.postOrganizationUserAccept(qParams.organizationId,\n qParams.organizationUserId, request);\n await this.actionPromise;\n const toast: Toast = {\n type: 'success',\n title: this.i18nService.t('inviteAccepted'),\n body: this.i18nService.t('inviteAcceptedDesc'),\n timeout: 10000,\n };\n this.toasterService.popAsync(toast);\n this.router.navigate(['/vault']);\n } catch {\n error = true;\n }\n } else {\n await this.stateService.save('orgInvitation', qParams);\n this.email = qParams.email;\n this.orgName = qParams.organizationName;\n if (this.orgName != null) {\n // Fix URL encoding of space issue with Angular\n this.orgName = this.orgName.replace(/\\+/g, ' ');\n }\n }\n }\n\n if (error) {\n this.toasterService.popAsync('error', null, this.i18nService.t('inviteAcceptFailed'));\n this.router.navigate(['/']);\n }\n\n this.loading = false;\n });\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 { 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 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 { Location } from '@angular/common';\nimport {\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 location: Location,\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 private changeDetectorRef: ChangeDetectorRef) { }\n\n async ngOnInit() {\n this.showVerifyEmail = !(await this.tokenService.getEmailVerified());\n this.showBrowserOutdated = window.navigator.userAgent.indexOf('MSIE') !== -1;\n\n 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 return;\n }\n\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 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 }\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 const url = this.router.createUrlTree(['vault'], { queryParams: queryParams }).toString();\n this.location.go(url);\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","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 async premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n async 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","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 this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.plan === 'families' || qParams.plan === 'teams' || qParams.plan === 'enterprise') {\n this.plan = qParams.plan;\n }\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 { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-tools',\r\n templateUrl: 'tools.component.html',\r\n})\r\nexport class ToolsComponent { }\r\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 {\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 const ciphers = await this.apiService.getCiphersOrganization(this.organization.id);\n if (ciphers != null && ciphers.data != null && ciphers.data.length) {\n const decCiphers: CipherView[] = [];\n const promises: any[] = [];\n ciphers.data.forEach((r) => {\n const data = new CipherData(r);\n const cipher = new Cipher(data);\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\n });\n await Promise.all(promises);\n decCiphers.sort(this.cipherService.getLocaleSortingFunction());\n this.allCiphers = decCiphers;\n } else {\n this.allCiphers = [];\n }\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 { Location } from '@angular/common';\nimport {\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 location: Location, private router: Router,\n private syncService: SyncService, private i18nService: I18nService,\n private componentFactoryResolver: ComponentFactoryResolver, private messagingService: MessagingService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone,\n private changeDetectorRef: ChangeDetectorRef) { }\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 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 });\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 const url = this.router.createUrlTree(['organizations', this.organization.id, 'vault'],\n { queryParams: queryParams }).toString();\n this.location.go(url);\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';\r\n\r\n@Component({\r\n selector: 'app-org-tools',\r\n templateUrl: 'tools.component.html',\r\n})\r\nexport class ToolsComponent { }\r\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, 'csv');\n }\n\n getFileName() {\n return super.getFileName('org');\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 this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\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 this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\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 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 });\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 = 500;","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) { }\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","
\r\n \"\"\r\n \r\n
\r\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, 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 { 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 { 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","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\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\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 return true;\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 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 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\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 encKey = await this.getEncKey();\r\n const encShareKey = await this.rsaEncrypt(shareKey, publicKey, encKey);\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, key?: SymmetricCryptoKey): 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 let type = EncryptionType.Rsa2048_OaepSha1_B64;\r\n const encBytes = await this.cryptoFunctionService.rsaEncrypt(data, publicKey, 'sha1');\r\n let mac: string = null;\r\n if (key != null && key.macKey != null) {\r\n type = EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64;\r\n const macBytes = await this.cryptoFunctionService.hmac(encBytes, key.macKey, 'sha256');\r\n mac = Utils.fromBufferToB64(macBytes);\r\n }\r\n return new CipherString(type, Utils.fromBufferToB64(encBytes), null, mac);\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 if (encPieces.length !== 1) {\r\n throw new Error('Invalid cipher format.');\r\n }\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n if (encPieces.length !== 2) {\r\n throw new Error('Invalid cipher format.');\r\n }\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 key = await this.getEncKey();\r\n if (key != null && key.macKey != null && encPieces.length > 1) {\r\n const mac = Utils.fromB64ToArray(encPieces[1]).buffer;\r\n const computedMac = await this.cryptoFunctionService.hmac(data, key.macKey, 'sha256');\r\n const macsEqual = await this.cryptoFunctionService.compare(mac, computedMac);\r\n if (!macsEqual) {\r\n throw new Error('MAC failed.');\r\n }\r\n }\r\n\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) {\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","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 { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.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 { ImportComponent } from './tools/import.component';\nimport { PasswordGeneratorHistoryComponent } from './tools/password-generator-history.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ToolsComponent } from './tools/tools.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 { 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 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 localeZhCn from '@angular/common/locales/zh-Hans';\n\nregisterLocaleData(localeCs, 'cs');\nregisterLocaleData(localeDa, 'da');\nregisterLocaleData(localeDe, 'de');\nregisterLocaleData(localeEs, 'es');\nregisterLocaleData(localeEt, 'et');\nregisterLocaleData(localeFr, 'fr');\nregisterLocaleData(localeIt, 'it');\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(localeZhCn, 'zh-CN');\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 CreateOrganizationComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n DomainRulesComponent,\n ExportComponent,\n FallbackSrcDirective,\n FolderAddEditComponent,\n FooterComponent,\n FrontendLayoutComponent,\n GroupingsComponent,\n HintComponent,\n IconComponent,\n I18nPipe,\n ImportComponent,\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 OrgImportComponent,\n OrgGroupAddEditComponent,\n OrgGroupingsComponent,\n OrgGroupsComponent,\n OrgManageCollectionsComponent,\n OrgManageComponent,\n OrgPeopleComponent,\n OrgSettingComponent,\n OrgToolsComponent,\n OrgTwoFactorSetupComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n OrganizationsComponent,\n OrganizationLayoutComponent,\n OrgVaultComponent,\n PasswordGeneratorComponent,\n PasswordGeneratorHistoryComponent,\n PaymentComponent,\n PremiumComponent,\n ProfileComponent,\n PurgeVaultComponent,\n RecoverDeleteComponent,\n RecoverTwoFactorComponent,\n RegisterComponent,\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 UpdateKeyComponent,\n UpdateLicenseComponent,\n UserBillingComponent,\n UserLayoutComponent,\n VaultComponent,\n VerifyEmailComponent,\n VerifyEmailTokenComponent,\n VerifyRecoverDeleteComponent,\n PasswordStrengthComponent,\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 {\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { DeviceType } from '../../enums/deviceType';\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nimport { TwoFactorEmailRequest } from '../../models/request/twoFactorEmailRequest';\n\nimport { ApiService } from '../../abstractions/api.service';\nimport { AuthService } from '../../abstractions/auth.service';\nimport { EnvironmentService } from '../../abstractions/environment.service';\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nimport { TwoFactorProviders } from '../../services/auth.service';\n\nimport * as DuoWebSDK from '../../misc/duo';\nimport { U2f } from '../../misc/u2f';\n\nexport class TwoFactorComponent implements OnInit, OnDestroy {\n token: string = '';\n remember: boolean = false;\n u2fReady: boolean = false;\n providers = TwoFactorProviders;\n providerType = TwoFactorProviderType;\n selectedProviderType: TwoFactorProviderType = TwoFactorProviderType.Authenticator;\n u2fSupported: boolean = false;\n u2f: U2f = null;\n title: string = '';\n twoFactorEmail: string = null;\n formPromise: Promise;\n emailPromise: Promise;\n onSuccessfulLogin: () => Promise;\n onSuccessfulLoginNavigate: () => Promise;\n\n protected loginRoute = 'login';\n protected successRoute = 'vault';\n\n constructor(protected authService: AuthService, protected router: Router,\n protected i18nService: I18nService, protected apiService: ApiService,\n protected platformUtilsService: PlatformUtilsService, protected win: Window,\n protected environmentService: EnvironmentService) {\n this.u2fSupported = this.platformUtilsService.supportsU2f(win);\n }\n\n async ngOnInit() {\n if (this.authService.email == null || this.authService.masterPasswordHash == null ||\n this.authService.twoFactorProviders == null) {\n this.router.navigate([this.loginRoute]);\n return;\n }\n\n if (this.win != null && this.u2fSupported) {\n let customWebVaultUrl: string = null;\n if (this.environmentService.baseUrl != null) {\n customWebVaultUrl = this.environmentService.baseUrl;\n } else if (this.environmentService.webVaultUrl != null) {\n customWebVaultUrl = this.environmentService.webVaultUrl;\n }\n\n this.u2f = new U2f(this.win, customWebVaultUrl, (token: string) => {\n this.token = token;\n this.submit();\n }, (error: string) => {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), error);\n }, (info: string) => {\n if (info === 'ready') {\n this.u2fReady = true;\n }\n });\n }\n\n this.selectedProviderType = this.authService.getDefaultTwoFactorProvider(this.u2fSupported);\n await this.init();\n }\n\n ngOnDestroy(): void {\n this.cleanupU2f();\n this.u2f = null;\n }\n\n async init() {\n if (this.selectedProviderType == null) {\n this.title = this.i18nService.t('loginUnavailable');\n return;\n }\n\n this.cleanupU2f();\n this.title = (TwoFactorProviders as any)[this.selectedProviderType].name;\n const params = this.authService.twoFactorProviders.get(this.selectedProviderType);\n switch (this.selectedProviderType) {\n case TwoFactorProviderType.U2f:\n if (!this.u2fSupported || this.u2f == null) {\n break;\n }\n\n if (params.Challenge != null) {\n this.u2f.init(JSON.parse(params.Challenge));\n } else {\n // TODO: Deprecated. Remove in future version.\n const challenges = JSON.parse(params.Challenges);\n if (challenges != null && challenges.length > 0) {\n this.u2f.init({\n appId: challenges[0].appId,\n challenge: challenges[0].challenge,\n keys: challenges.map((c: any) => {\n return {\n version: c.version,\n keyHandle: c.keyHandle,\n };\n }),\n });\n }\n }\n break;\n case TwoFactorProviderType.Duo:\n case TwoFactorProviderType.OrganizationDuo:\n if (this.platformUtilsService.getDevice() === DeviceType.SafariExtension) {\n break;\n }\n\n setTimeout(() => {\n DuoWebSDK.init({\n iframe: undefined,\n host: params.Host,\n sig_request: params.Signature,\n submit_callback: async (f: HTMLFormElement) => {\n const sig = f.querySelector('input[name=\"sig_response\"]') as HTMLInputElement;\n if (sig != null) {\n this.token = sig.value;\n await this.submit();\n }\n },\n });\n }, 0);\n break;\n case TwoFactorProviderType.Email:\n this.twoFactorEmail = params.Email;\n if (this.authService.twoFactorProviders.size > 1) {\n await this.sendEmail(false);\n }\n break;\n default:\n break;\n }\n }\n\n async submit() {\n if (this.token == null || this.token === '') {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('verificationCodeRequired'));\n return;\n }\n\n if (this.selectedProviderType === TwoFactorProviderType.U2f) {\n if (this.u2f != null) {\n this.u2f.stop();\n } else {\n return;\n }\n } else if (this.selectedProviderType === TwoFactorProviderType.Email ||\n this.selectedProviderType === TwoFactorProviderType.Authenticator) {\n this.token = this.token.replace(' ', '').trim();\n }\n\n try {\n this.formPromise = this.authService.logInTwoFactor(this.selectedProviderType, this.token, this.remember);\n await this.formPromise;\n if (this.onSuccessfulLogin != null) {\n this.onSuccessfulLogin();\n }\n this.platformUtilsService.eventTrack('Logged In From Two-step');\n if (this.onSuccessfulLoginNavigate != null) {\n this.onSuccessfulLoginNavigate();\n } else {\n this.router.navigate([this.successRoute]);\n }\n } catch {\n if (this.selectedProviderType === TwoFactorProviderType.U2f && this.u2f != null) {\n this.u2f.start();\n }\n }\n }\n\n async sendEmail(doToast: boolean) {\n if (this.selectedProviderType !== TwoFactorProviderType.Email) {\n return;\n }\n\n if (this.emailPromise != null) {\n return;\n }\n\n try {\n const request = new TwoFactorEmailRequest(this.authService.email, this.authService.masterPasswordHash);\n this.emailPromise = this.apiService.postTwoFactorEmail(request);\n await this.emailPromise;\n if (doToast) {\n this.platformUtilsService.showToast('success', null,\n this.i18nService.t('verificationCodeEmailSent', this.twoFactorEmail));\n }\n } catch { }\n\n this.emailPromise = null;\n }\n\n private cleanupU2f() {\n if (this.u2f != null) {\n this.u2f.stop();\n this.u2f.cleanup();\n }\n }\n}\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 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

{{'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","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\nimport { CipherView } from '../../models/view/cipherView';\n\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nimport { DeviceType } from '../../enums';\n\n@Pipe({\n name: 'searchCiphers',\n})\nexport class SearchCiphersPipe implements PipeTransform {\n private onlySearchName = false;\n\n constructor(platformUtilsService: PlatformUtilsService) {\n this.onlySearchName = platformUtilsService.getDevice() === DeviceType.EdgeExtension;\n }\n\n transform(ciphers: CipherView[], searchText: string): CipherView[] {\n if (ciphers == null || ciphers.length === 0) {\n return [];\n }\n\n if (searchText == null || searchText.length < 2) {\n return ciphers;\n }\n\n searchText = searchText.trim().toLowerCase();\n return ciphers.filter((c) => {\n if (c.name != null && c.name.toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (this.onlySearchName) {\n return false;\n }\n if (searchText.length >= 8 && c.id.startsWith(searchText)) {\n return true;\n }\n if (c.subTitle != null && c.subTitle.toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (c.login && c.login.uri != null && c.login.uri.toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n\n return false;\n });\n }\n}\n","export { CipherType } from './cipherType';\r\nexport { DeviceType } from './deviceType';\r\nexport { EncryptionType } from './encryptionType';\r\nexport { FieldType } from './fieldType';\r\nexport { LogLevelType } from './logLevelType';\r\nexport { SecureNoteType } from './secureNoteType';\r\nexport { TwoFactorProviderType } from './twoFactorProviderType';\r\nexport { UriMatchType } from './uriMatchType';\r\n","export enum LogLevelType {\r\n Debug,\r\n Info,\r\n Warning,\r\n Error,\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","{{'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 {{'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","
\r\n
\r\n
\r\n \r\n
\r\n
{{'reports' | i18n}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\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 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 CSV format\"\n and save the CSV 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
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n","
\n
\n

{{'exportVault' | i18n}}

\n
\n

{{'exportMasterPassword' | i18n}}

\n {{'exportWarning' | i18n}}\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 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('csv');\r\n }\r\n\r\n protected getFileName(prefix?: string) {\r\n return this.exportService.getFileName(prefix);\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 {{password}}\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\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","
\n

{{'dataBreachReport' | i18n}}

\n
\n

{{'breachDesc' | i18n}}

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

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

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

    {{a.title}}

    \n

    \n

    {{'compromisedData' | i18n}}:

    \n
      \n
    • {{d}}
    • \n
    \n
    \n
    \n
    \n
    {{'website' | i18n}}
    \n
    {{a.domain}}
    \n
    {{'affectedUsers' | i18n}}
    \n
    {{a.pwnCount | number}}
    \n
    {{'breachOccurred' | i18n}}
    \n
    {{a.breachDate | date: 'mediumDate'}}
    \n
    {{'breachReported' | i18n}}
    \n
    {{a.addedDate | date: 'mediumDate'}}
    \n
    \n
    \n
    \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","
\r\n
\r\n
\r\n
\r\n
{{'tools' | i18n}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\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 {{u.email}}\n {{'invited' | i18n}}\n {{'accepted' | i18n}}\n {{u.name}}\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
    {{h.password}}
    \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 {\n APP_INITIALIZER,\n LOCALE_ID,\n NgModule,\n} from '@angular/core';\n\nimport { ToasterModule } from 'angular2-toaster';\n\nimport { BroadcasterMessagingService } from '../../services/broadcasterMessaging.service';\nimport { HtmlStorageService } from '../../services/htmlStorage.service';\nimport { I18nService } from '../../services/i18n.service';\nimport { MemoryStorageService } from '../../services/memoryStorage.service';\nimport { WebPlatformUtilsService } from '../../services/webPlatformUtils.service';\n\nimport { EventService } from './event.service';\nimport { OrganizationGuardService } from './organization-guard.service';\nimport { OrganizationTypeGuardService } from './organization-type-guard.service';\nimport { RouterService } from './router.service';\nimport { UnauthGuardService } from './unauth-guard.service';\n\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\nimport { ValidationService } from 'jslib/angular/services/validation.service';\n\nimport { Analytics } from 'jslib/misc/analytics';\n\nimport { ApiService } from 'jslib/services/api.service';\nimport { AppIdService } from 'jslib/services/appId.service';\nimport { AuditService } from 'jslib/services/audit.service';\nimport { AuthService } from 'jslib/services/auth.service';\nimport { CipherService } from 'jslib/services/cipher.service';\nimport { CollectionService } from 'jslib/services/collection.service';\nimport { ConstantsService } from 'jslib/services/constants.service';\nimport { ContainerService } from 'jslib/services/container.service';\nimport { CryptoService } from 'jslib/services/crypto.service';\nimport { EnvironmentService } from 'jslib/services/environment.service';\nimport { ExportService } from 'jslib/services/export.service';\nimport { FolderService } from 'jslib/services/folder.service';\nimport { ImportService } from 'jslib/services/import.service';\nimport { LockService } from 'jslib/services/lock.service';\nimport { NotificationsService } from 'jslib/services/notifications.service';\nimport { PasswordGenerationService } from 'jslib/services/passwordGeneration.service';\nimport { SearchService } from 'jslib/services/search.service';\nimport { SettingsService } from 'jslib/services/settings.service';\nimport { StateService } from 'jslib/services/state.service';\nimport { SyncService } from 'jslib/services/sync.service';\nimport { TokenService } from 'jslib/services/token.service';\nimport { TotpService } from 'jslib/services/totp.service';\nimport { UserService } from 'jslib/services/user.service';\nimport { WebCryptoFunctionService } from 'jslib/services/webCryptoFunction.service';\n\nimport { ApiService as ApiServiceAbstraction } from 'jslib/abstractions/api.service';\nimport { AppIdService as AppIdServiceAbstraction } from 'jslib/abstractions/appId.service';\nimport { AuditService as AuditServiceAbstraction } from 'jslib/abstractions/audit.service';\nimport { AuthService as AuthServiceAbstraction } from 'jslib/abstractions/auth.service';\nimport { CipherService as CipherServiceAbstraction } from 'jslib/abstractions/cipher.service';\nimport { CollectionService as CollectionServiceAbstraction } from 'jslib/abstractions/collection.service';\nimport { CryptoService as CryptoServiceAbstraction } from 'jslib/abstractions/crypto.service';\nimport { CryptoFunctionService as CryptoFunctionServiceAbstraction } from 'jslib/abstractions/cryptoFunction.service';\nimport { EnvironmentService as EnvironmentServiceAbstraction } from 'jslib/abstractions/environment.service';\nimport { ExportService as ExportServiceAbstraction } from 'jslib/abstractions/export.service';\nimport { FolderService as FolderServiceAbstraction } from 'jslib/abstractions/folder.service';\nimport { I18nService as I18nServiceAbstraction } from 'jslib/abstractions/i18n.service';\nimport { ImportService as ImportServiceAbstraction } from 'jslib/abstractions/import.service';\nimport { LockService as LockServiceAbstraction } from 'jslib/abstractions/lock.service';\nimport { LogService as LogServiceAbstraction } from 'jslib/abstractions/log.service';\nimport { MessagingService as MessagingServiceAbstraction } from 'jslib/abstractions/messaging.service';\nimport { NotificationsService as NotificationsServiceAbstraction } from 'jslib/abstractions/notifications.service';\nimport {\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\n} from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService as PlatformUtilsServiceAbstraction } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService as SearchServiceAbstraction } from 'jslib/abstractions/search.service';\nimport { SettingsService as SettingsServiceAbstraction } from 'jslib/abstractions/settings.service';\nimport { StateService as StateServiceAbstraction } from 'jslib/abstractions/state.service';\nimport { StorageService as StorageServiceAbstraction } from 'jslib/abstractions/storage.service';\nimport { SyncService as SyncServiceAbstraction } from 'jslib/abstractions/sync.service';\nimport { TokenService as TokenServiceAbstraction } from 'jslib/abstractions/token.service';\nimport { TotpService as TotpServiceAbstraction } from 'jslib/abstractions/totp.service';\nimport { UserService as UserServiceAbstraction } from 'jslib/abstractions/user.service';\n\nconst i18nService = new I18nService(window.navigator.language, 'locales');\nconst stateService = new StateService();\nconst broadcasterService = new BroadcasterService();\nconst messagingService = new BroadcasterMessagingService(broadcasterService);\nconst platformUtilsService = new WebPlatformUtilsService(i18nService, messagingService);\nconst storageService: StorageServiceAbstraction = new HtmlStorageService(platformUtilsService);\nconst secureStorageService: StorageServiceAbstraction = new MemoryStorageService();\nconst cryptoFunctionService: CryptoFunctionServiceAbstraction = new WebCryptoFunctionService(window,\n platformUtilsService);\nconst cryptoService = new CryptoService(storageService,\n platformUtilsService.isDev() ? storageService : secureStorageService, cryptoFunctionService);\nconst tokenService = new TokenService(storageService);\nconst appIdService = new AppIdService(storageService);\nconst apiService = new ApiService(tokenService, platformUtilsService,\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\nconst userService = new UserService(tokenService, storageService);\nconst settingsService = new SettingsService(userService, storageService);\nexport let searchService: SearchService = null;\nconst cipherService = new CipherService(cryptoService, userService, settingsService,\n apiService, storageService, i18nService, () => searchService);\nconst folderService = new FolderService(cryptoService, userService, apiService, storageService,\n i18nService, cipherService);\nconst collectionService = new CollectionService(cryptoService, userService, storageService, i18nService);\nsearchService = new SearchService(cipherService, platformUtilsService);\nconst lockService = new LockService(cipherService, folderService, collectionService,\n cryptoService, platformUtilsService, storageService, messagingService, searchService, null);\nconst syncService = new SyncService(userService, apiService, settingsService,\n folderService, cipherService, cryptoService, collectionService, storageService, messagingService,\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\nconst passwordGenerationService = new PasswordGenerationService(cryptoService, storageService);\nconst totpService = new TotpService(storageService, cryptoFunctionService);\nconst containerService = new ContainerService(cryptoService);\nconst authService = new AuthService(cryptoService, apiService,\n userService, tokenService, appIdService, i18nService, platformUtilsService, messagingService);\nconst exportService = new ExportService(folderService, cipherService, apiService);\nconst importService = new ImportService(cipherService, folderService, apiService, i18nService, collectionService);\nconst notificationsService = new NotificationsService(userService, syncService, appIdService,\n apiService, cryptoService, async () => messagingService.send('logout', { expired: true }));\nconst environmentService = new EnvironmentService(apiService, storageService, notificationsService);\nconst auditService = new AuditService(cryptoFunctionService, apiService);\n\nconst analytics = new Analytics(window, () => platformUtilsService.isDev() || platformUtilsService.isSelfHost(),\n platformUtilsService, storageService, appIdService);\ncontainerService.attachToWindow(window);\n\nexport function initFactory(): Function {\n return async () => {\n await (storageService as HtmlStorageService).init();\n const isDev = platformUtilsService.isDev();\n if (!isDev && platformUtilsService.isSelfHost()) {\n environmentService.baseUrl = window.location.origin;\n } else {\n environmentService.notificationsUrl = isDev ? 'http://localhost:61840' :\n 'https://notifications.bitwarden.com'; // window.location.origin + '/notifications';\n }\n apiService.setUrls({\n base: isDev ? null : window.location.origin,\n api: isDev ? 'http://localhost:4000' : null,\n identity: isDev ? 'http://localhost:33656' : null,\n\n // Uncomment these (and comment out the above) if you want to target production\n // servers for local development.\n\n // base: null,\n // api: 'https://api.bitwarden.com',\n // identity: 'https://identity.bitwarden.com',\n });\n setTimeout(() => notificationsService.init(environmentService), 3000);\n\n lockService.init(true);\n const locale = await storageService.get(ConstantsService.localeKey);\n await i18nService.init(locale);\n authService.init();\n const htmlEl = window.document.documentElement;\n htmlEl.classList.add('locale_' + i18nService.translationLocale);\n let theme = await storageService.get(ConstantsService.themeKey);\n if (theme == null) {\n theme = 'light';\n }\n htmlEl.classList.add('theme_' + theme);\n stateService.save(ConstantsService.disableFaviconKey,\n await storageService.get(ConstantsService.disableFaviconKey));\n stateService.save('enableGravatars', await storageService.get('enableGravatars'));\n };\n}\n\n@NgModule({\n imports: [\n ToasterModule,\n ],\n declarations: [],\n providers: [\n ValidationService,\n AuthGuardService,\n OrganizationGuardService,\n OrganizationTypeGuardService,\n UnauthGuardService,\n RouterService,\n EventService,\n { provide: AuditServiceAbstraction, useValue: auditService },\n { provide: AuthServiceAbstraction, useValue: authService },\n { provide: CipherServiceAbstraction, useValue: cipherService },\n { provide: FolderServiceAbstraction, useValue: folderService },\n { provide: CollectionServiceAbstraction, useValue: collectionService },\n { provide: EnvironmentServiceAbstraction, useValue: environmentService },\n { provide: TotpServiceAbstraction, useValue: totpService },\n { provide: TokenServiceAbstraction, useValue: tokenService },\n { provide: I18nServiceAbstraction, useValue: i18nService },\n { provide: CryptoServiceAbstraction, useValue: cryptoService },\n { provide: PlatformUtilsServiceAbstraction, useValue: platformUtilsService },\n { provide: PasswordGenerationServiceAbstraction, useValue: passwordGenerationService },\n { provide: ApiServiceAbstraction, useValue: apiService },\n { provide: SyncServiceAbstraction, useValue: syncService },\n { provide: UserServiceAbstraction, useValue: userService },\n { provide: MessagingServiceAbstraction, useValue: messagingService },\n { provide: BroadcasterService, useValue: broadcasterService },\n { provide: SettingsServiceAbstraction, useValue: settingsService },\n { provide: LockServiceAbstraction, useValue: lockService },\n { provide: StorageServiceAbstraction, useValue: storageService },\n { provide: StateServiceAbstraction, useValue: stateService },\n { provide: ExportServiceAbstraction, useValue: exportService },\n { provide: SearchServiceAbstraction, useValue: searchService },\n { provide: ImportServiceAbstraction, useValue: importService },\n { provide: NotificationsServiceAbstraction, useValue: notificationsService },\n { provide: CryptoFunctionServiceAbstraction, useValue: cryptoFunctionService },\n {\n provide: APP_INITIALIZER,\n useFactory: initFactory,\n deps: [],\n multi: true,\n },\n {\n provide: LOCALE_ID,\n useFactory: () => i18nService.translationLocale,\n deps: [],\n },\n ],\n})\nexport class ServicesModule {\n}\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';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\nimport { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\n\nexport class OrganizationUserResponse {\n id: string;\n userId: string;\n type: OrganizationUserType;\n status: OrganizationUserStatusType;\n accessAll: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.userId = response.UserId;\n this.type = response.Type;\n this.status = response.Status;\n this.accessAll = response.AccessAll;\n }\n}\n\nexport class OrganizationUserUserDetailsResponse extends OrganizationUserResponse {\n name: string;\n email: string;\n\n constructor(response: any) {\n super(response);\n this.name = response.Name;\n this.email = response.Email;\n }\n}\n\nexport class OrganizationUserDetailsResponse extends OrganizationUserResponse {\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","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 logoType: 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.logoType = response.LogoType;\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', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR',\n 'ru', 'sk', 'sv', 'zh-CN',\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';\n\nimport { CipherType } from '../enums/cipherType';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { CipherService } from '../abstractions/cipher.service';\nimport { ExportService as ExportServiceAbstraction } from '../abstractions/export.service';\nimport { FolderService } from '../abstractions/folder.service';\n\nimport { CipherView } from '../models/view/cipherView';\nimport { CollectionView } from '../models/view/collectionView';\nimport { FolderView } from '../models/view/folderView';\n\nimport { Cipher } from '../models/domain/cipher';\nimport { Collection } from '../models/domain/collection';\n\nimport { CipherData } from '../models/data/cipherData';\nimport { CollectionData } from '../models/data/collectionData';\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\n\nexport class ExportService implements ExportServiceAbstraction {\n constructor(private folderService: FolderService, private cipherService: CipherService,\n private apiService: ApiService) { }\n\n async getExport(format: 'csv' | 'json' = 'csv'): Promise {\n let decFolders: FolderView[] = [];\n let decCiphers: CipherView[] = [];\n const promises = [];\n\n promises.push(this.folderService.getAllDecrypted().then((folders) => {\n decFolders = folders;\n }));\n\n promises.push(this.cipherService.getAllDecrypted().then((ciphers) => {\n decCiphers = ciphers;\n }));\n\n await Promise.all(promises);\n\n const foldersMap = new Map();\n decFolders.forEach((f) => {\n foldersMap.set(f.id, f);\n });\n\n const exportCiphers: any[] = [];\n decCiphers.forEach((c) => {\n // only export logins and secure notes\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\n return;\n }\n\n if (c.organizationId != null) {\n return;\n }\n\n const cipher: any = {};\n cipher.folder = c.folderId != null && foldersMap.has(c.folderId) ? foldersMap.get(c.folderId).name : null;\n cipher.favorite = c.favorite ? 1 : null;\n this.buildCommonCipher(cipher, c);\n exportCiphers.push(cipher);\n });\n\n if (format === 'csv') {\n return papa.unparse(exportCiphers);\n } else {\n return JSON.stringify(exportCiphers, null, ' ');\n }\n }\n\n async getOrganizationExport(organizationId: string, format: 'csv' | 'json' = 'csv'): Promise {\n const decCollections: CollectionView[] = [];\n const decCiphers: CipherView[] = [];\n const promises = [];\n\n promises.push(this.apiService.getCollections(organizationId).then((collections) => {\n const collectionPromises: any = [];\n if (collections != null && collections.data != null && collections.data.length > 0) {\n collections.data.forEach((c) => {\n const collection = new Collection(new CollectionData(c as CollectionDetailsResponse));\n collectionPromises.push(collection.decrypt().then((decCol) => {\n decCollections.push(decCol);\n }));\n });\n }\n return Promise.all(collectionPromises);\n }));\n\n promises.push(this.apiService.getCiphersOrganization(organizationId).then((ciphers) => {\n const cipherPromises: any = [];\n if (ciphers != null && ciphers.data != null && ciphers.data.length > 0) {\n ciphers.data.forEach((c) => {\n const cipher = new Cipher(new CipherData(c));\n cipherPromises.push(cipher.decrypt().then((decCipher) => {\n decCiphers.push(decCipher);\n }));\n });\n }\n return Promise.all(cipherPromises);\n }));\n\n await Promise.all(promises);\n\n const collectionsMap = new Map();\n decCollections.forEach((c) => {\n collectionsMap.set(c.id, c);\n });\n\n const exportCiphers: any[] = [];\n decCiphers.forEach((c) => {\n // only export logins and secure notes\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\n return;\n }\n\n const cipher: any = {};\n cipher.collections = [];\n if (c.collectionIds != null) {\n cipher.collections = c.collectionIds.filter((id) => collectionsMap.has(id))\n .map((id) => collectionsMap.get(id).name);\n }\n this.buildCommonCipher(cipher, c);\n exportCiphers.push(cipher);\n });\n\n if (format === 'csv') {\n return papa.unparse(exportCiphers);\n } else {\n return JSON.stringify(exportCiphers, null, ' ');\n }\n }\n\n getFileName(prefix: string = null): string {\n const now = new Date();\n const dateString =\n now.getFullYear() + '' + this.padNumber(now.getMonth() + 1, 2) + '' + this.padNumber(now.getDate(), 2) +\n this.padNumber(now.getHours(), 2) + '' + this.padNumber(now.getMinutes(), 2) +\n this.padNumber(now.getSeconds(), 2);\n\n return 'bitwarden' + (prefix ? ('_' + prefix) : '') + '_export_' + dateString + '.csv';\n }\n\n private padNumber(num: number, width: number, padCharacter: string = '0'): string {\n const numString = num.toString();\n return numString.length >= width ? numString :\n new Array(width - numString.length + 1).join(padCharacter) + numString;\n }\n\n private buildCommonCipher(cipher: any, c: CipherView) {\n cipher.type = null;\n cipher.name = c.name;\n cipher.notes = c.notes;\n cipher.fields = null;\n // Login props\n cipher.login_uri = null;\n cipher.login_username = null;\n cipher.login_password = null;\n cipher.login_totp = null;\n\n if (c.fields) {\n c.fields.forEach((f: any) => {\n if (!cipher.fields) {\n cipher.fields = '';\n } else {\n cipher.fields += '\\n';\n }\n\n cipher.fields += ((f.name || '') + ': ' + f.value);\n });\n }\n\n switch (c.type) {\n case CipherType.Login:\n cipher.type = 'login';\n cipher.login_username = c.login.username;\n cipher.login_password = c.login.password;\n cipher.login_totp = c.login.totp;\n\n if (c.login.uris) {\n cipher.login_uri = [];\n c.login.uris.forEach((u) => {\n cipher.login_uri.push(u.uri);\n });\n }\n break;\n case CipherType.SecureNote:\n cipher.type = 'note';\n break;\n default:\n return;\n }\n\n return cipher;\n }\n}\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 { AviraCsvImporter } from '../importers/aviraCsvImporter';\nimport { BitwardenCsvImporter } from '../importers/bitwardenCsvImporter';\nimport { BlurCsvImporter } from '../importers/blurCsvImporter';\nimport { ChromeCsvImporter } from '../importers/chromeCsvImporter';\nimport { ClipperzHtmlImporter } from '../importers/clipperzHtmlImporter';\nimport { DashlaneCsvImporter } from '../importers/dashlaneCsvImporter';\nimport { EnpassCsvImporter } from '../importers/enpassCsvImporter';\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: '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: 'dashlanecsv', name: 'Dashlane (csv)' },\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: '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 ];\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 '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 'pwsafexml':\n return new PasswordSafeXmlImporter();\n case 'dashlanecsv':\n return new DashlaneCsvImporter();\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 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 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';\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class DashlaneCsvImporter 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 let skip = false;\n if (value.length < 2) {\n return;\n }\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[0], '--');\n\n if (value.length === 2) {\n cipher.login.uris = this.makeUriArray(value[1]);\n } else if (value.length === 3) {\n cipher.login.uris = this.makeUriArray(value[1]);\n cipher.login.username = this.getValueOrDefault(value[2]);\n } else if (value.length === 4) {\n if (this.isNullOrWhitespace(value[2]) && this.isNullOrWhitespace(value[3])) {\n cipher.login.username = value[1];\n cipher.notes = value[2] + '\\n' + value[3];\n } else {\n cipher.login.username = value[2];\n cipher.notes = value[1] + '\\n' + value[3];\n }\n } else if (value.length === 5) {\n cipher.login.uris = this.makeUriArray(value[1]);\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.login.password = this.getValueOrDefault(value[3]);\n cipher.notes = this.getValueOrDefault(value[4]);\n } else if (value.length === 6) {\n if (this.isNullOrWhitespace(value[2])) {\n cipher.login.username = this.getValueOrDefault(value[3]);\n cipher.login.password = this.getValueOrDefault(value[4]);\n cipher.notes = this.getValueOrDefault(value[5]);\n } else {\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.login.password = this.getValueOrDefault(value[3]);\n cipher.notes = this.getValueOrDefault(value[4], '') + '\\n' + this.getValueOrDefault(value[5], '');\n }\n cipher.login.uris = this.makeUriArray(value[1]);\n } else if (value.length === 7) {\n if (this.isNullOrWhitespace(value[2])) {\n cipher.login.username = this.getValueOrDefault(value[3]);\n cipher.notes = this.getValueOrDefault(value[4], '') + '\\n' + this.getValueOrDefault(value[6], '');\n } else {\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.notes = this.getValueOrDefault(value[3], '') + '\\n' +\n this.getValueOrDefault(value[4], '') + '\\n' + this.getValueOrDefault(value[6], '');\n }\n cipher.login.uris = this.makeUriArray(value[1]);\n cipher.login.password = this.getValueOrDefault(value[5]);\n } else {\n for (let i = 1; i < value.length; i++) {\n cipher.notes += (value[i] + '\\n');\n if (value[i] === 'NO_TYPE') {\n skip = true;\n break;\n }\n }\n }\n\n if (skip) {\n return;\n }\n if (this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = null;\n }\n if (this.isNullOrWhitespace(cipher.login.password)) {\n cipher.login.password = null;\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\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';\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 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 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 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 { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.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 { ImportComponent } from './tools/import.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ToolsComponent } from './tools/tools.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 },\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 },\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/main.180bfd6093a5fe21bcd0.js.map b/app/main.180bfd6093a5fe21bcd0.js.map deleted file mode 100644 index c6c76bce..00000000 --- a/app/main.180bfd6093a5fe21bcd0.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./jslib/src/abstractions/i18n.service.ts","webpack:///./jslib/src/abstractions/api.service.ts","webpack:///./jslib/src/abstractions/platformUtils.service.ts","webpack:///./jslib/src/angular/pipes/i18n.pipe.ts","webpack:///./jslib/src/abstractions/user.service.ts","webpack:///./jslib/src/angular/services/validation.service.ts","webpack:///./jslib/src/angular/directives/api-action.directive.ts","webpack:///./jslib/src/abstractions/crypto.service.ts","webpack:///./jslib/src/abstractions/messaging.service.ts","webpack:///./jslib/src/abstractions/cipher.service.ts","webpack:///./jslib/src/importers/baseImporter.ts","webpack:///./jslib/src/models/domain/importResult.ts","webpack:///./jslib/src/misc/utils.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/abstractions/collection.service.ts","webpack:///./jslib/src/angular/directives/input-verbatim.directive.ts","webpack:///./jslib/src/enums/cipherType.ts","webpack:///./jslib/src/abstractions/folder.service.ts","webpack:///./jslib/src/abstractions/sync.service.ts","webpack:///./jslib/src/angular/directives/stop-click.directive.ts","webpack:///./jslib/src/abstractions/storage.service.ts","webpack:///./jslib/src/abstractions/token.service.ts","webpack:///./jslib/src/models/request/passwordVerificationRequest.ts","webpack:///./jslib/src/abstractions/passwordGeneration.service.ts","webpack:///./jslib/src/abstractions/auth.service.ts","webpack:///./jslib/src/services/constants.service.ts","webpack:///./jslib/src/enums/twoFactorProviderType.ts","webpack:///./jslib/src/angular/directives/autofocus.directive.ts","webpack:///./jslib/src/angular/directives/stop-prop.directive.ts","webpack:///./src/app/modal.component.ts","webpack:///./jslib/src/abstractions/cryptoFunction.service.ts","webpack:///./jslib/src/models/view/secureNoteView.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:///./src/app/components/avatar.component.ts","webpack:///./jslib/src/models/view/cardView.ts","webpack:///./jslib/src/models/data/cipherData.ts","webpack:///./jslib/src/abstractions/environment.service.ts","webpack:///./jslib/src/enums/deviceType.ts","webpack:///./src/app/components/avatar.component.ts.AvatarComponent.html","webpack:///./jslib/src/models/view/cipherView.ts","webpack:///./jslib/src/abstractions/audit.service.ts","webpack:///./jslib/src/models/view/folderView.ts","webpack:///./src/app/settings/payment.component.ts","webpack:///./jslib/src/models/data/collectionData.ts","webpack:///./jslib/src/models/view/collectionView.ts","webpack:///./src/app/settings/two-factor-verify.component.ts","webpack:///./jslib/src/enums/fieldType.ts","webpack:///./jslib/src/models/request/cipherRequest.ts","webpack:///./jslib/src/models/view/loginView.ts","webpack:///./jslib/src/models/domain/collection.ts","webpack:///./jslib/src/models/domain/cipher.ts","webpack:///./src/app/settings/two-factor-verify.component.html","webpack:///./jslib/src/abstractions/lock.service.ts","webpack:///./src/app/settings/organizations.component.ts","webpack:///./jslib/src/abstractions/totp.service.ts","webpack:///./jslib/src/models/view/fieldView.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/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:///./jslib/src/enums/encryptionType.ts","webpack:///./jslib/src/enums/uriMatchType.ts","webpack:///./jslib/src/enums/organizationUserStatusType.ts","webpack:///./jslib/src/models/view/identityView.ts","webpack:///./jslib/src/models/view/loginUriView.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:///./jslib/src/models/domain/cipherString.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:///./jslib/src/misc/duo.js","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/services/router.service.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:///./jslib/src/angular/components/icon.component.ts","webpack:///./src/app/vault/vault.component.ts","webpack:///./jslib/src/models/request/cipherWithIdRequest.ts","webpack:///./jslib/src/models/request/folderRequest.ts","webpack:///./src/app/vault/add-edit.component.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/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/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:///./jslib/src/angular/components/icon.component.html","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:///./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:///./src/app/organizations/vault/add-edit.component.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/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/angular/pipes/search-ciphers.pipe.ts","webpack:///./jslib/src/enums/index.ts","webpack:///./jslib/src/enums/logLevelType.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/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/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/aviraCsvImporter.ts","webpack:///./jslib/src/importers/bitwardenCsvImporter.ts","webpack:///./jslib/src/importers/blurCsvImporter.ts","webpack:///./jslib/src/importers/chromeCsvImporter.ts","webpack:///./jslib/src/importers/clipperzHtmlImporter.ts","webpack:///./jslib/src/importers/dashlaneCsvImporter.ts","webpack:///./jslib/src/importers/enpassCsvImporter.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","PlatformUtilsService","I18nPipe","i18nService","this","transform","id","p1","p2","p3","UserService","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","CryptoService","MessagingService","CipherService","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","type","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","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","CalloutComponent","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","CollectionService","InputVerbatimDirective","renderer","condition","disableComplete","hasAttribute","setAttribute","FolderService","SyncService","StopClickDirective","onClick","$event","preventDefault","StorageService","TokenService","PasswordVerificationRequest","PasswordGenerationService","AuthService","ConstantsService","environmentUrlsKey","disableGaKey","disableAddLoginNotificationKey","disableContextMenuItemKey","disableFaviconKey","disableAutoTotpCopyKey","enableAutoFillOnPageLoadKey","lockOptionKey","lastActiveKey","neverDomainsKey","installedVersionKey","localeKey","themeKey","collapsedGroupingsKey","autoConfirmFingerprints","dontShowCardsCurrentTab","dontShowIdentitiesCurrentTab","disableChangedPasswordNotificationKey","TwoFactorProviderType","AutofocusDirective","autofocus","focus","StopPropDirective","stopPropagation","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","CryptoFunctionService","cipherString_1","Domain","buildDomainModel","dataObj","alreadyEncrypted","notEncList","objProp","CipherString","buildDataModel","notCipherStringList","encryptedString","decryptObj","viewModel","orgId","promises","self","theProp","Promise","resolve","mapProp","decrypt","val","all","sent","BroadcasterService","subscribers","send","has","subscribe","messageCallback","unsubscribe","delete","SearchService","AvatarComponent","sanitizer","cryptoFunctionService","stateService","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","CardView","expMonth","_brand","code","repeat","_subTitle","_number","brand","number","expYear","exp","formatYear","year","attachmentData_1","cardData_1","fieldData_1","identityData_1","loginData_1","passwordHistoryData_1","secureNoteData_1","CipherData","userId","collectionIds","organizationId","folderId","edit","organizationUseTotp","revisionDate","LoginData","SecureNoteData","Card","card","CardData","Identity","identity","IdentityData","FieldData","attachments","attachment","AttachmentData","passwordHistory","ph","PasswordHistoryData","EnvironmentService","DeviceType","NgClass","IterableDiffers","KeyValueDiffers","ElementRef","Renderer2","ngClass","ɵpod","rounded-circle","bypassSecurityTrustResourceUrl","localData","subTitle","hasAttachments","passwordRevisionDate","AuditService","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","CollectionData","readOnly","core_1","twoFactorProviderType_1","passwordVerificationRequest_1","TwoFactorVerifyComponent","apiService","toasterService","cryptoService","onAuthed","EventEmitter","submit","masterPassword","popAsync","request","_b","hashPassword","masterPasswordHash","_d","formPromise","getTwoFactorRecover","Duo","OrganizationDuo","getTwoFactorOrganizationDuo","getTwoFactorDuo","Email","getTwoFactorEmail","U2f","getTwoFactorU2f","Authenticator","getTwoFactorAuthenticator","Yubikey","getTwoFactorYubiKey","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","hasUris","canLaunch","Collection","obj","default","cipherData_1","attachment_1","card_1","domainBase_1","field_1","identity_1","login_1","password_1","secureNote_1","Cipher","Attachment","Field","Password","model","_f","_c","_e","attachments_1","reduce","promise","decAttachment","fields_1","decField","passwordHistory_1","decPh","toCipherData","toLoginData","toSecureNoteData","toCardData","toIdentityData","toFieldData","toAttachmentData","toPasswordHistoryData","en","ad","i3","NgForm","ngSubmit","ɵprd","ControlContainer","NgControlStatusGroup","i4","i5","ɵppd","DefaultValueAccessor","COMPOSITION_BUFFER_MODE","RequiredValidator","required","NG_VALIDATORS","p0_0","NG_VALUE_ACCESSOR","NgModel","update","NgControl","NgControlStatus","i6","appInputVerbatim","ɵnov","ngClassUntouched","ngClassTouched","ngClassPristine","ngClassDirty","ngClassValid","ngClassInvalid","ngClassPending","ɵunv","LockService","OrganizationsComponent","userService","analytics","syncService","vault","loaded","load","getAllOrganizations","orgs","sort","organizations","leave","org","showDialog","actionPromise","postLeaveOrganization","fullSync","eventTrack","next","action","TotpService","twoFactorProviderRequest_1","TwoFactorBaseComponent","onUpdated","twoFactorProviderType","enabled","authed","auth","authResponse","enable","enableFunction","disable","TwoFactorProviderRequest","putTwoFactorOrganizationDisable","putTwoFactorDisable","ImportService","ExportService","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","cipherId","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","messagingService","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","search_ciphers_pipe_1","CiphersComponent","searchService","cipherService","showAddNew","onAttachmentsClicked","onShareClicked","onCollectionsClicked","cipherType","searchPipe","SearchCiphersPipe","selectAll","checkCipher","select","checked","filteredCiphers","selectCount","getSelected","getSelectedIds","share","deleteCipher","refresh","copy","typeI18nKey","aType","copyToClipboard","deleteWithServer","showFixOldAttachments","hasOldAttachments","EncryptionType","UriMatchType","OrganizationUserStatusType","IdentityView","_firstName","_lastName","name_1","CanLaunchWhitelist","_uri","_domain","_canLaunch","_hostname","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","canAccessPremium","filterProvider","getTwoFactorProviders","manage","openModal","authenticatorModalRef","TwoFactorAuthenticatorComponent","updateStatus","yubikeyModalRef","TwoFactorYubiKeyComponent","duoModalRef","TwoFactorDuoComponent","emailModalRef","TwoFactorEmailComponent","u2fModalRef","TwoFactorU2fComponent","recoveryCode","recoveryModalRef","TwoFactorRecoveryComponent","premiumRequired","ref","childComponent","ImportComponent","importService","router","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","encryptionType_1","encryptedStringOrType","iv","mac","encType","encryptionType","headerPieces","encPieces","AesCbc128_HmacSha256_B64","AesCbc256_B64","AesCbc256_HmacSha256_B64","Rsa2048_OaepSha256_B64","Rsa2048_OaepSha1_B64","decryptedValue","containerService","bitwardenContainerService","getCryptoService","getOrgKey","orgKey","decryptToUtf8","SearchPipe","items","prop1","prop2","prop3","SelectionReadOnlyRequest","SelectionReadOnlyResponse","Id","ReadOnly","NotificationsService","SettingsService","FrontendLayoutComponent","version","getApplicationVersion","classList","add","remove","LoginComponent","authService","route","onSuccessfulLoginNavigate","goAfterLogIn","queryParams","qParams","__awaiter","save","plan","invite","loginRedirect","successRoute","two_factor_options_component_1","TwoFactorComponent","environmentService","anotherMethod","twoFactorOptionsModal","TwoFactorOptionsComponent","onProviderSelected","selectedProviderType","onRecoverSelected","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","duoSig","appSig","iframe","submitCallback","DUO_MESSAGE_FORMAT","DUO_ERROR_FORMAT","DUO_OPEN_WINDOW_FORMAT","VALID_OPEN_WINDOW_DOMAINS","iframeId","postAction","postArgument","throwError","getDataAttribute","element","dataset","getAttribute","hyphenize","context","event","fallbackEvent","addEventListener","attachEvent","off","removeEventListener","detachEvent","onReady","offReady","parseSigRequest","sig","sigParts","sigRequest","onDOMReady","ready","isDuoMessage","Boolean","origin","onReceivedMessage","parser","protocol","endsWith","isValidUrlToOpen","open","doPostBack","offMessage","location","onMessage","input","form","parentElement","insertBefore","nextSibling","sig_request","post_action","post_argument","tagName","submit_callback","_onReady","_parseSigRequest","_isDuoMessage","_doPostBack","PasswordStrengthComponent","showText","scoreWidth","score","RegisterComponent","passwordGenerationService","showCreateOrgMessage","showTerms","isSelfHost","KdfType","HintComponent","LockComponent","routerService","isAuthenticated","hasKey","previousUrl","getPreviousUrl","router_1","RouterService","activatedRoute","titleService","currentUrl","events","NavigationEnd","titleId","rawTitle","child","firstChild","snapshot","newTitle","setTitle","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","constants_service_1","IconMap","fa-globe","fa-sticky-note-o","fa-id-card-o","fa-credit-card","fa-android","fa-apple","IconComponent","iconsUrl","baseUrl","imageEnabled","setLoginIcon","hostnameUri","isWebsite","image","fallbackImage","update_key_component_1","add_edit_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","broadcasterService","ngZone","changeDetectorRef","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","cipherAddEditModalRef","AddEditComponent","onSavedCipher","onDeletedCipher","bulkDelete","selectedIds","bulkDeleteModalRef","BulkDeleteComponent","cipherIds","onDeleted","bulkShare","selectedCiphers","bulkShareModalRef","BulkShareComponent","onShared","bulkMove","bulkMoveModalRef","BulkMoveComponent","onMoved","updateKey","updateKeyModalRef","UpdateKeyComponent","createUrlTree","CipherWithIdRequest","FolderRequest","folder","auditService","totpService","showRevisionDate","hasPasswordHistory","viewingPasswordHistory","passwordRevisionDisplayDate","cleanUp","totpUpdateCode","interval_1","getTimeInterval","totpTick","totpInterval","setInterval","toggleFavorite","launch","launchUri","generatePassword","confirmed","getOptions","upgradeOrganization","viewHistory","clearInterval","getCode","totpCode","half","totpCodeFormatted","intervalSeconds","epoch","round","mod","totpSec","totpDash","totpLow","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","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","i2","View_PaymentComponent_3","NgSelectOption","SelectControlValueAccessor","ngValue","ɵangular_packages_forms_forms_r","$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","OrganizationLayoutComponent","collectionData_1","collection_1","loadCollections","isAdmin","getCollections","collectionDomains","decryptMany","unassignedCollection","getAllNested","nestedCollections","collapse","grouping","isCollapsed","cipher_1","onEventsClicked","accessEvents","allCiphers","useEvents","getCiphersOrganization","decCiphers_1","promises_1","getLocaleSortingFunction","applyFilter","searchPending","searchCiphersBasic","deleteCipherAdmin","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","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","relativeTo","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","View_IconComponent_1","View_IconComponent_2","ɵ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","getAllDecrypted","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","passwordStrength","getPasswordStrengthUserInput","PasswordRequest","postPassword","updatePasswordStrength","masterPasswordStrengthTimeout","masterPasswordScore","rotateEncKeyClicked","userInput","atPosition","kdfRequest_1","kdfType_1","ChangeKdfComponent","PBKDF2_SHA256","kdfOptions","KdfRequest","postAccountKdf","postSecurityStamp","updateTwoFactorAuthenticatorRequest_1","qrScript","UpdateTwoFactorAuthenticatorRequest","putTwoFactorAuthenticator","QRious","twoFactorEmailRequest_1","updateTwoFactorEmailRequest_1","sendEmail","emailPromise","postTwoFactorEmailSetup","sentEmail","UpdateTwoFactorEmailRequest","putTwoFactorEmail","print","w","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","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","cipherCreateRequest_1","cipherRequest_1","originalCipher","loadCipher","getCipherAdmin","encryptCipher","saveCipher","editMode","putCipherAdmin","CipherCreateRequest","postCipherAdmin","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","contains","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","fetch","Request","qsStringify","toIdentityToken","identityClientId","credentials","getCredentials","cache","headers","Headers","Content-Type","Accept","Device-Type","responseJson","typeHeader","json","IdentityTokenResponse","TwoFactorProviders2","clearTwoFactorToken","IdentityTwoFactorResponse","ErrorResponse","doRefreshToken","ProfileResponse","BillingResponse","PreloginResponse","getAccountRevisionDate","postPasswordHint","postRegister","getFolder","FolderResponse","postFolder","putFolder","deleteFolder","getCipher","CipherResponse","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","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","passwordLeaked","hashStart","hashEnding","leakedHashes","v","BreachAccountResponse","uriMatchType_1","cipherBulkDeleteRequest_1","cipherBulkMoveRequest_1","cipherBulkShareRequest_1","cipherShareRequest_1","sequentialize_1","_decryptedCipherCache","indexCiphers","clearCache","decryptedCipherCache","existingCipher","hasFields","existingHiddenFields","Hidden","hiddenFields_1","ef","matchedField","encryptObjProperty","encryptCipherData","encryptFields","encryptPasswordHistories","encryptAttachments","attachmentsModel","encAttachments","fieldsModel","encFields","encryptField","encField","fieldModel","phModels","encPhs","encryptPasswordHistory","encPh","phModel","getAll","decCiphers","getAllDecryptedForGrouping","groupingId","getAllDecryptedForUrl","includeOtherTypes","eqDomainsPromise","getEquivalentDomains","eqDomains","matches","eqDomain","matchingDomains","Host","urlHost","Exact","StartsWith","RegularExpression","Never","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","cacheKey","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","Rsa2048_OaepSha1_HmacSha256_B64","hmac","macBytes","cipherString","aesDecryptToBytes","decipher","aesDecryptToUtf8","encBuf","ctBytes","ivBytes","randomNumber","min","rval","range","bitsNeeded","ceil","log2","bytesNeeded","mask","pow","byteArray","EncryptedObject","macData","keyForEnc","resolveLegacyKey","fastParams","aesDecryptFastParameters","hmacFast","computedMac","compareFast","aesDecryptFast","aesDecrypt","Rsa2048_OaepSha256_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","Set","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","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","nb_1","nl_1","pl_1","pt_1","pt_PT_1","ru_1","sk_1","sv_1","zh_Hans_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","Signature","stop","doToast","cleanup","getDeviceString","identifier","pushToken","clientId","scope","deviceIdentifier","deviceName","twoFactorRemember","successCallback","errorCallback","infoCallback","parseFunction","parseMessage","connectorLink","base64Encode","sendMessage","contentWindow","postMessage","validMessage","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","selectCipher","rightClickCipher","addCipherOptions","enums_1","onlySearchName","logLevelType_1","LogLevelType","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_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_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","logoType","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_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","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_20","View_PeopleComponent_21","View_PeopleComponent_22","View_PeopleComponent_23","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","LogoType","modifiedDate","ModifiedDate","PwnCount","filePath","store","browserCache","chrome","isFirefox","isChrome","isOpera","isVivaldi","isSafari","isMacAppStore","analyticsId","rel","blobData","blobOptions","fileNameLower","doDownload","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","foldersMap","exportCiphers","buildCommonCipher","unparse","collectionPromises","decCol","cipherPromises","decCipher","collectionsMap","dateString","padNumber","getSeconds","padCharacter","numString","login_uri","login_username","login_password","login_totp","importCiphersRequest_1","importOrganizationCiphersRequest_1","kvpRequest_1","ascendoCsvImporter_1","aviraCsvImporter_1","bitwardenCsvImporter_1","blurCsvImporter_1","chromeCsvImporter_1","clipperzHtmlImporter_1","dashlaneCsvImporter_1","enpassCsvImporter_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","LastPassCsvImporter","KeePassXCsvImporter","AviraCsvImporter","BlurCsvImporter","SafeInCloudXmlImporter","PadlockCsvImporter","KeePass2XmlImporter","ChromeCsvImporter","FirefoxCsvImporter","UpmCsvImporter","SaferPassCsvImporter","MeldiumCsvImporter","OnePassword1PifImporter","OnePasswordWinCsvImporter","KeeperCsvImporter","PasswordDragonXmlImporter","EnpassCsvImporter","PasswordSafeXmlImporter","DashlaneCsvImporter","MSecureCsvImporter","StickyPasswordXmlImporter","TrueKeyCsvImporter","ClipperzHtmlImporter","RoboFormCsvImporter","AscendoCsvImporter","PasswordBossJsonImporter","ZohoVaultCsvImporter","SplashIdCsvImporter","PassKeepCsvImporter","GnomeJsonImporter","PasswordAgentCsvImporter","PasspackCsvImporter","PassmanJsonImporter","ImportCiphersRequest","KvpRequest","request_2","ImportOrganizationCiphersRequest","baseImporter_1","importResult_1","fieldLower","website","secondary_username","col","addCollection","collectionIndex","delimPosition","errorMessage","entry","currentVersion","actionType","labelLower","skip","firstRow","containsField","fieldValue","fieldName","fieldNameLower","month","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","openContents","faveIndex","typeName","secureContents","notesPlain","parseFields","sections","section","designationKey","valueKey","nameKey","fieldDesignation","view_1","IgnoredProperties","altUsername","View","tags","tag","getValue","credential","custom_fields","customField","field_type","tagsJson","Tags","tagJson","__parsed_extra","fieldsJson","extraFields","fieldJson","login_url","identifiers","valObj","expDate","records","record","category","categoryText","accountName","passwordSafe","notesDelimiter","entries","groupText","Note","Pwd","labelEl","cardEl","labelIdEl","labelId","fieldEl","notesEl","parseFieldsToNotes","startIndex","loginNodes","loginNode","accountId","usernameText","passwordText","titleText","linkText","notesText","accountLogin","account","buildGroupText","PropertiesToIgnore","memo","kind","note","cardholder","expiryDate","document_content","ChamberName","parseData","SecretData","CustomData","signalR","signalRMsgPack","notificationType_1","notificationResponse_1","connected","inactive","reconnectTimer","signalrConnection","HubConnectionBuilder","withUrl","accessTokenFactory","withHubProtocol","MessagePackHubProtocol","build","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","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","import_component_1","tools_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","import_component_2","tools_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","AppRoutingModule"],"mappings":"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D,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,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,EAAA,OAAQ,MAARD,EAAAC,EAAA,OAAQ,MACRD,EAAAC,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A,IAAAA,MAAA,sGAE3CytB,EAA0B,KACH,KAAvBx/E,EAAIA,IAAI4M,YAAR,MACe,EAAM7L,KAAKo5E,WAAWn6E,WACzB,OADNg0D,EAAS/lD,EAAAyJ,QACH,EAAM3W,KAAKg+C,QAAQgT,EAAQiC,kBAAvCwrB,EAAYvxE,EAAAyJ,2BACkB,KAAvB1X,EAAIA,IAAI4M,YAAR,MACK,EAAM7L,KAAKg+C,QAAQgT,EAAQ/xD,kBAAvCw/E,EAAYvxE,EAAAyJ,oBAEZ,MAAM,IAAIhK,MAAM,4BAEpB,UAAQ,IAAI6sD,EAAAK,mBAAmB7I,GAASytB,UAzmB5ClI,GADCnG,EAAAoG,cAAaC,qHA2EdF,GADCnG,EAAAoG,cAAamC,sHAkiBlBx2E,EA1rBA,GAAavE,EAAAuE,+FC3BAvE,EAAAogF,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,EAAAlhF,EAAA,KAEA4rC,EAAA5rC,EAAA,IAOAgf,EAAA,WAQI,SAAAA,EAAoBqF,EAAgC+U,EACxC20B,GADQvrD,KAAA6hB,aAAgC7hB,KAAA42B,iBACxC52B,KAAAurD,uBAyFhB,OAvFI/uC,EAAA/f,UAAAkiF,eAAA,WACI,OAAwB,MAApB3+E,KAAK4+E,YACE5+E,KAAK4+E,YACL5+E,KAAK8pC,QACL9pC,KAAK8pC,QAET,MAGLttB,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","file":"app/main.180bfd6093a5fe21bcd0.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([649,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 { 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 {\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 { 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","import { CipherString } from '../models/domain/cipherString';\r\nimport { SymmetricCryptoKey } from '../models/domain/symmetricCryptoKey';\r\n\r\nimport { ProfileOrganizationResponse } from '../models/response/profileOrganizationResponse';\r\n\r\nimport { KdfType } from '../enums/kdfType';\r\n\r\nexport abstract class CryptoService {\r\n setKey: (key: SymmetricCryptoKey) => Promise;\r\n setKeyHash: (keyHash: string) => Promise<{}>;\r\n setEncKey: (encKey: string) => Promise<{}>;\r\n setEncPrivateKey: (encPrivateKey: string) => Promise<{}>;\r\n setOrgKeys: (orgs: ProfileOrganizationResponse[]) => Promise<{}>;\r\n getKey: () => Promise;\r\n getKeyHash: () => Promise;\r\n getEncKey: () => Promise;\r\n getPublicKey: () => Promise;\r\n getPrivateKey: () => Promise;\r\n getFingerprint: (userId: string, publicKey?: ArrayBuffer) => Promise;\r\n getOrgKeys: () => Promise>;\r\n getOrgKey: (orgId: string) => Promise;\r\n hasKey: () => Promise;\r\n hasEncKey: () => Promise;\r\n clearKey: () => Promise;\r\n clearKeyHash: () => Promise;\r\n clearEncKey: (memoryOnly?: boolean) => Promise;\r\n clearKeyPair: (memoryOnly?: boolean) => Promise;\r\n clearOrgKeys: (memoryOnly?: boolean) => Promise;\r\n clearKeys: () => Promise;\r\n toggleKey: () => Promise;\r\n makeKey: (password: string, salt: string, kdf: KdfType, kdfIterations: number) => Promise;\r\n makeShareKey: () => Promise<[CipherString, SymmetricCryptoKey]>;\r\n makeKeyPair: (key?: SymmetricCryptoKey) => Promise<[string, CipherString]>;\r\n hashPassword: (password: string, key: SymmetricCryptoKey) => Promise;\r\n makeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\r\n remakeEncKey: (key: SymmetricCryptoKey) => Promise<[SymmetricCryptoKey, CipherString]>;\r\n encrypt: (plainValue: string | ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\r\n encryptToBytes: (plainValue: ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\r\n rsaEncrypt: (data: ArrayBuffer, publicKey?: ArrayBuffer, key?: SymmetricCryptoKey) => Promise;\r\n decryptToBytes: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\r\n decryptToUtf8: (cipherString: CipherString, key?: SymmetricCryptoKey) => Promise;\r\n decryptFromBytes: (encBuf: ArrayBuffer, key: SymmetricCryptoKey) => Promise;\r\n randomNumber: (min: number, max: number) => Promise;\r\n}\r\n","export abstract class MessagingService {\r\n send: (subscriber: string, arg?: any) => void;\r\n}\r\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 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 * 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 || 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 * 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","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 { 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","export enum CipherType {\r\n Login = 1,\r\n SecureNote = 2,\r\n Card = 3,\r\n Identity = 4,\r\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 {\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","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","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 class PasswordVerificationRequest {\n masterPasswordHash: string;\n}\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 { 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","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 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 {\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","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","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 { 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 { 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 {\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 { 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 { 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","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 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 { 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 { 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 { 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 {\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 { 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 { 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 {\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 FieldType {\r\n Text = 0,\r\n Hidden = 1,\r\n Boolean = 2,\r\n}\r\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","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 { 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","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","
\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 {\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 { 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 {\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 {\n getExport: (format?: 'csv' | 'json') => Promise;\n getOrganizationExport: (organizationId: string, format?: 'csv' | 'json') => Promise;\n getFileName: (prefix?: string) => string;\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\nimport { SearchCiphersPipe } from 'jslib/angular/pipes/search-ciphers.pipe';\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 private searchPipe: SearchCiphersPipe;\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 this.searchPipe = new SearchCiphersPipe(platformUtilsService);\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 let filteredCiphers = this.ciphers;\n if (select) {\n filteredCiphers = this.searchPipe.transform(this.ciphers, this.searchText);\n }\n const selectCount = select && filteredCiphers.length > MaxCheckedCount ?\n MaxCheckedCount : filteredCiphers.length;\n for (let i = 0; i < selectCount; i++) {\n this.checkCipher(filteredCiphers[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","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","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","export enum OrganizationUserStatusType {\n Invited = 0,\n Accepted = 1,\n Confirmed = 2,\n}\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 { 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 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 { 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 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 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 });\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","/**\n * Duo Web SDK v2\n * Copyright 2017, Duo Security\n */\n(function (root, factory) {\n /*eslint-disable */\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], factory);\n /*eslint-enable */\n }\n else if (typeof module === 'object' && module.exports) {\n // Node. Does not work with strict CommonJS, but\n // only CommonJS-like environments that support module.exports,\n // like Node.\n module.exports = factory();\n }\n else {\n // Browser globals (root is window)\n var Duo = factory();\n // If the Javascript was loaded via a script tag, attempt to autoload\n // the frame.\n Duo._onReady(Duo.init);\n // Attach Duo to the `window` object\n root.Duo = Duo;\n }\n}(this, function () {\n var DUO_MESSAGE_FORMAT = /^(?:AUTH|ENROLL)+\\|[A-Za-z0-9\\+\\/=]+\\|[A-Za-z0-9\\+\\/=]+$/;\n var DUO_ERROR_FORMAT = /^ERR\\|[\\w\\s\\.\\(\\)]+$/;\n var DUO_OPEN_WINDOW_FORMAT = /^DUO_OPEN_WINDOW\\|/;\n var VALID_OPEN_WINDOW_DOMAINS = [\n 'duo.com',\n 'duosecurity.com',\n 'duomobile.s3-us-west-1.amazonaws.com'\n ];\n var iframeId = 'duo_iframe', postAction = '', postArgument = 'sig_response', host, sigRequest, duoSig, appSig, iframe, submitCallback;\n function throwError(message, url) {\n throw new Error('Duo Web SDK error: ' + message +\n (url ? ('\\n' + 'See ' + url + ' for more information') : ''));\n }\n function hyphenize(str) {\n return str.replace(/([a-z])([A-Z])/, '$1-$2').toLowerCase();\n }\n // cross-browser data attributes\n function getDataAttribute(element, name) {\n if ('dataset' in element) {\n return element.dataset[name];\n }\n else {\n return element.getAttribute('data-' + hyphenize(name));\n }\n }\n // cross-browser event binding/unbinding\n function on(context, event, fallbackEvent, callback) {\n if ('addEventListener' in window) {\n context.addEventListener(event, callback, false);\n }\n else {\n context.attachEvent(fallbackEvent, callback);\n }\n }\n function off(context, event, fallbackEvent, callback) {\n if ('removeEventListener' in window) {\n context.removeEventListener(event, callback, false);\n }\n else {\n context.detachEvent(fallbackEvent, callback);\n }\n }\n function onReady(callback) {\n on(document, 'DOMContentLoaded', 'onreadystatechange', callback);\n }\n function offReady(callback) {\n off(document, 'DOMContentLoaded', 'onreadystatechange', callback);\n }\n function onMessage(callback) {\n on(window, 'message', 'onmessage', callback);\n }\n function offMessage(callback) {\n off(window, 'message', 'onmessage', callback);\n }\n /**\n * Parse the sig_request parameter, throwing errors if the token contains\n * a server error or if the token is invalid.\n *\n * @param {String} sig Request token\n */\n function parseSigRequest(sig) {\n if (!sig) {\n // nothing to do\n return;\n }\n // see if the token contains an error, throwing it if it does\n if (sig.indexOf('ERR|') === 0) {\n throwError(sig.split('|')[1]);\n }\n // validate the token\n if (sig.indexOf(':') === -1 || sig.split(':').length !== 2) {\n throwError('Duo was given a bad token. This might indicate a configuration ' +\n 'problem with one of Duo\\'s client libraries.', 'https://www.duosecurity.com/docs/duoweb#first-steps');\n }\n var sigParts = sig.split(':');\n // hang on to the token, and the parsed duo and app sigs\n sigRequest = sig;\n duoSig = sigParts[0];\n appSig = sigParts[1];\n return {\n sigRequest: sig,\n duoSig: sigParts[0],\n appSig: sigParts[1]\n };\n }\n /**\n * This function is set up to run when the DOM is ready, if the iframe was\n * not available during `init`.\n */\n function onDOMReady() {\n iframe = document.getElementById(iframeId);\n if (!iframe) {\n throw new Error('This page does not contain an iframe for Duo to use.' +\n 'Add an element like ' +\n 'to this page. ' +\n 'See https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe ' +\n 'for more information.');\n }\n // we've got an iframe, away we go!\n ready();\n // always clean up after yourself\n offReady(onDOMReady);\n }\n /**\n * Validate that a MessageEvent came from the Duo service, and that it\n * is a properly formatted payload.\n *\n * The Google Chrome sign-in page injects some JS into pages that also\n * make use of postMessage, so we need to do additional validation above\n * and beyond the origin.\n *\n * @param {MessageEvent} event Message received via postMessage\n */\n function isDuoMessage(event) {\n return Boolean(event.origin === ('https://' + host) &&\n typeof event.data === 'string' &&\n (event.data.match(DUO_MESSAGE_FORMAT) ||\n event.data.match(DUO_ERROR_FORMAT) ||\n event.data.match(DUO_OPEN_WINDOW_FORMAT)));\n }\n /**\n * Validate the request token and prepare for the iframe to become ready.\n *\n * All options below can be passed into an options hash to `Duo.init`, or\n * specified on the iframe using `data-` attributes.\n *\n * Options specified using the options hash will take precedence over\n * `data-` attributes.\n *\n * Example using options hash:\n * ```javascript\n * Duo.init({\n * iframe: \"some_other_id\",\n * host: \"api-main.duo.test\",\n * sig_request: \"...\",\n * post_action: \"/auth\",\n * post_argument: \"resp\"\n * });\n * ```\n *\n * Example using `data-` attributes:\n * ```\n * \n * ```\n *\n * @param {Object} options\n * @param {String} options.iframe The iframe, or id of an iframe to set up\n * @param {String} options.host Hostname\n * @param {String} options.sig_request Request token\n * @param {String} [options.post_action=''] URL to POST back to after successful auth\n * @param {String} [options.post_argument='sig_response'] Parameter name to use for response token\n * @param {Function} [options.submit_callback] If provided, duo will not submit the form instead execute\n * the callback function with reference to the \"duo_form\" form object\n * submit_callback can be used to prevent the webpage from reloading.\n */\n function init(options) {\n if (options) {\n if (options.host) {\n host = options.host;\n }\n if (options.sig_request) {\n parseSigRequest(options.sig_request);\n }\n if (options.post_action) {\n postAction = options.post_action;\n }\n if (options.post_argument) {\n postArgument = options.post_argument;\n }\n if (options.iframe) {\n if (options.iframe.tagName) {\n iframe = options.iframe;\n }\n else if (typeof options.iframe === 'string') {\n iframeId = options.iframe;\n }\n }\n if (typeof options.submit_callback === 'function') {\n submitCallback = options.submit_callback;\n }\n }\n // if we were given an iframe, no need to wait for the rest of the DOM\n if (false && iframe) {\n ready();\n }\n else {\n // try to find the iframe in the DOM\n iframe = document.getElementById(iframeId);\n // iframe is in the DOM, away we go!\n if (iframe) {\n ready();\n }\n else {\n // wait until the DOM is ready, then try again\n onReady(onDOMReady);\n }\n }\n // always clean up after yourself!\n offReady(init);\n }\n /**\n * This function is called when a message was received from another domain\n * using the `postMessage` API. Check that the event came from the Duo\n * service domain, and that the message is a properly formatted payload,\n * then perform the post back to the primary service.\n *\n * @param event Event object (contains origin and data)\n */\n function onReceivedMessage(event) {\n if (isDuoMessage(event)) {\n if (event.data.match(DUO_OPEN_WINDOW_FORMAT)) {\n var url = event.data.substring(\"DUO_OPEN_WINDOW|\".length);\n if (isValidUrlToOpen(url)) {\n // Open the URL that comes after the DUO_WINDOW_OPEN token.\n window.open(url, \"_self\");\n }\n }\n else {\n // the event came from duo, do the post back\n doPostBack(event.data);\n // always clean up after yourself!\n offMessage(onReceivedMessage);\n }\n }\n }\n /**\n * Validate that this passed in URL is one that we will actually allow to\n * be opened.\n * @param url String URL that the message poster wants to open\n * @returns {boolean} true if we allow this url to be opened in the window\n */\n function isValidUrlToOpen(url) {\n if (!url) {\n return false;\n }\n var parser = document.createElement('a');\n parser.href = url;\n if (parser.protocol === \"duotrustedendpoints:\") {\n return true;\n }\n else if (parser.protocol !== \"https:\") {\n return false;\n }\n for (var i = 0; i < VALID_OPEN_WINDOW_DOMAINS.length; i++) {\n if (parser.hostname.endsWith(\".\" + VALID_OPEN_WINDOW_DOMAINS[i]) ||\n parser.hostname === VALID_OPEN_WINDOW_DOMAINS[i]) {\n return true;\n }\n }\n return false;\n }\n /**\n * Point the iframe at Duo, then wait for it to postMessage back to us.\n */\n function ready() {\n if (!host) {\n host = getDataAttribute(iframe, 'host');\n if (!host) {\n throwError('No API hostname is given for Duo to use. Be sure to pass ' +\n 'a `host` parameter to Duo.init, or through the `data-host` ' +\n 'attribute on the iframe element.', 'https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe');\n }\n }\n if (!duoSig || !appSig) {\n parseSigRequest(getDataAttribute(iframe, 'sigRequest'));\n if (!duoSig || !appSig) {\n throwError('No valid signed request is given. Be sure to give the ' +\n '`sig_request` parameter to Duo.init, or use the ' +\n '`data-sig-request` attribute on the iframe element.', 'https://www.duosecurity.com/docs/duoweb#3.-show-the-iframe');\n }\n }\n // if postAction/Argument are defaults, see if they are specified\n // as data attributes on the iframe\n if (postAction === '') {\n postAction = getDataAttribute(iframe, 'postAction') || postAction;\n }\n if (postArgument === 'sig_response') {\n postArgument = getDataAttribute(iframe, 'postArgument') || postArgument;\n }\n // point the iframe at Duo\n iframe.src = [\n 'https://', host, '/frame/web/v1/auth?tx=', duoSig,\n '&parent=', encodeURIComponent(document.location.href),\n '&v=2.6'\n ].join('');\n // listen for the 'message' event\n onMessage(onReceivedMessage);\n }\n /**\n * We received a postMessage from Duo. POST back to the primary service\n * with the response token, and any additional user-supplied parameters\n * given in form#duo_form.\n */\n function doPostBack(response) {\n // create a hidden input to contain the response token\n var input = document.createElement('input');\n input.type = 'hidden';\n input.name = postArgument;\n input.value = response + ':' + appSig;\n // user may supply their own form with additional inputs\n var form = document.getElementById('duo_form');\n // if the form doesn't exist, create one\n if (!form) {\n form = document.createElement('form');\n // insert the new form after the iframe\n iframe.parentElement.insertBefore(form, iframe.nextSibling);\n }\n // make sure we are actually posting to the right place\n form.method = 'POST';\n form.action = postAction;\n // add the response token input to the form\n form.appendChild(input);\n // away we go!\n if (typeof submitCallback === \"function\") {\n submitCallback.call(null, form);\n }\n else {\n form.submit();\n }\n }\n return {\n init: init,\n _onReady: onReady,\n _parseSigRequest: parseSigRequest,\n _isDuoMessage: isDuoMessage,\n _doPostBack: doPostBack\n };\n}));\n//# sourceMappingURL=duo.js.map","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 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 });\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 { 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 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 {\n Component,\n OnInit,\n} from '@angular/core';\nimport {\n ActivatedRoute,\n Router,\n} from '@angular/router';\n\nimport {\n Toast,\n ToasterService,\n} from 'angular2-toaster';\n\nimport { ApiService } from 'jslib/abstractions/api.service';\nimport { I18nService } from 'jslib/abstractions/i18n.service';\nimport { StateService } from 'jslib/abstractions/state.service';\nimport { UserService } from 'jslib/abstractions/user.service';\n\nimport { OrganizationUserAcceptRequest } from 'jslib/models/request/organizationUserAcceptRequest';\n\n@Component({\n selector: 'app-accept-organization',\n templateUrl: 'accept-organization.component.html',\n})\nexport class AcceptOrganizationComponent implements OnInit {\n loading = true;\n authed = false;\n orgName: string;\n email: string;\n actionPromise: Promise;\n\n constructor(private router: Router, private toasterService: ToasterService,\n private i18nService: I18nService, private route: ActivatedRoute,\n private apiService: ApiService, private userService: UserService,\n private stateService: StateService) { }\n\n ngOnInit() {\n let fired = false;\n this.route.queryParams.subscribe(async (qParams) => {\n if (fired) {\n return;\n }\n fired = true;\n await this.stateService.remove('orgInvitation');\n let error = qParams.organizationId == null || qParams.organizationUserId == null || qParams.token == null;\n if (!error) {\n this.authed = await this.userService.isAuthenticated();\n if (this.authed) {\n const request = new OrganizationUserAcceptRequest();\n request.token = qParams.token;\n try {\n this.actionPromise = this.apiService.postOrganizationUserAccept(qParams.organizationId,\n qParams.organizationUserId, request);\n await this.actionPromise;\n const toast: Toast = {\n type: 'success',\n title: this.i18nService.t('inviteAccepted'),\n body: this.i18nService.t('inviteAcceptedDesc'),\n timeout: 10000,\n };\n this.toasterService.popAsync(toast);\n this.router.navigate(['/vault']);\n } catch {\n error = true;\n }\n } else {\n await this.stateService.save('orgInvitation', qParams);\n this.email = qParams.email;\n this.orgName = qParams.organizationName;\n if (this.orgName != null) {\n // Fix URL encoding of space issue with Angular\n this.orgName = this.orgName.replace(/\\+/g, ' ');\n }\n }\n }\n\n if (error) {\n this.toasterService.popAsync('error', null, this.i18nService.t('inviteAcceptFailed'));\n this.router.navigate(['/']);\n }\n\n this.loading = false;\n });\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 { 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 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 { Location } from '@angular/common';\nimport {\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 location: Location,\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 private changeDetectorRef: ChangeDetectorRef) { }\n\n async ngOnInit() {\n this.showVerifyEmail = !(await this.tokenService.getEmailVerified());\n this.showBrowserOutdated = window.navigator.userAgent.indexOf('MSIE') !== -1;\n\n 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 return;\n }\n\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 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 }\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 const url = this.router.createUrlTree(['vault'], { queryParams: queryParams }).toString();\n this.location.go(url);\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","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 async premiumRequired() {\n if (!this.canAccessPremium) {\n this.messagingService.send('premiumRequired');\n return;\n }\n }\n\n async 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","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 this.route.queryParams.subscribe(async (qParams) => {\n if (qParams.plan === 'families' || qParams.plan === 'teams' || qParams.plan === 'enterprise') {\n this.plan = qParams.plan;\n }\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 { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-tools',\r\n templateUrl: 'tools.component.html',\r\n})\r\nexport class ToolsComponent { }\r\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 {\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 const ciphers = await this.apiService.getCiphersOrganization(this.organization.id);\n if (ciphers != null && ciphers.data != null && ciphers.data.length) {\n const decCiphers: CipherView[] = [];\n const promises: any[] = [];\n ciphers.data.forEach((r) => {\n const data = new CipherData(r);\n const cipher = new Cipher(data);\n promises.push(cipher.decrypt().then((c) => decCiphers.push(c)));\n });\n await Promise.all(promises);\n decCiphers.sort(this.cipherService.getLocaleSortingFunction());\n this.allCiphers = decCiphers;\n } else {\n this.allCiphers = [];\n }\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 { Location } from '@angular/common';\nimport {\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 location: Location, private router: Router,\n private syncService: SyncService, private i18nService: I18nService,\n private componentFactoryResolver: ComponentFactoryResolver, private messagingService: MessagingService,\n private broadcasterService: BroadcasterService, private ngZone: NgZone,\n private changeDetectorRef: ChangeDetectorRef) { }\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 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 });\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 const url = this.router.createUrlTree(['organizations', this.organization.id, 'vault'],\n { queryParams: queryParams }).toString();\n this.location.go(url);\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';\r\n\r\n@Component({\r\n selector: 'app-org-tools',\r\n templateUrl: 'tools.component.html',\r\n})\r\nexport class ToolsComponent { }\r\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, 'csv');\n }\n\n getFileName() {\n return super.getFileName('org');\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 this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\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 this.route.queryParams.subscribe(async (qParams) => {\n this.searchText = qParams.search;\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 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 });\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 = 500;","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) { }\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","
\r\n \"\"\r\n \r\n
\r\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, 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 { 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 { 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","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\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\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 return true;\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 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 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\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 encKey = await this.getEncKey();\r\n const encShareKey = await this.rsaEncrypt(shareKey, publicKey, encKey);\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, key?: SymmetricCryptoKey): 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 let type = EncryptionType.Rsa2048_OaepSha1_B64;\r\n const encBytes = await this.cryptoFunctionService.rsaEncrypt(data, publicKey, 'sha1');\r\n let mac: string = null;\r\n if (key != null && key.macKey != null) {\r\n type = EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64;\r\n const macBytes = await this.cryptoFunctionService.hmac(encBytes, key.macKey, 'sha256');\r\n mac = Utils.fromBufferToB64(macBytes);\r\n }\r\n return new CipherString(type, Utils.fromBufferToB64(encBytes), null, mac);\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 if (encPieces.length !== 1) {\r\n throw new Error('Invalid cipher format.');\r\n }\r\n break;\r\n case EncryptionType.Rsa2048_OaepSha256_HmacSha256_B64:\r\n case EncryptionType.Rsa2048_OaepSha1_HmacSha256_B64:\r\n if (encPieces.length !== 2) {\r\n throw new Error('Invalid cipher format.');\r\n }\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 key = await this.getEncKey();\r\n if (key != null && key.macKey != null && encPieces.length > 1) {\r\n const mac = Utils.fromB64ToArray(encPieces[1]).buffer;\r\n const computedMac = await this.cryptoFunctionService.hmac(data, key.macKey, 'sha256');\r\n const macsEqual = await this.cryptoFunctionService.compare(mac, computedMac);\r\n if (!macsEqual) {\r\n throw new Error('MAC failed.');\r\n }\r\n }\r\n\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) {\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","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 { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.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 { ImportComponent } from './tools/import.component';\nimport { PasswordGeneratorHistoryComponent } from './tools/password-generator-history.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ToolsComponent } from './tools/tools.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 { 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 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 localeZhCn from '@angular/common/locales/zh-Hans';\n\nregisterLocaleData(localeCs, 'cs');\nregisterLocaleData(localeDa, 'da');\nregisterLocaleData(localeDe, 'de');\nregisterLocaleData(localeEs, 'es');\nregisterLocaleData(localeEt, 'et');\nregisterLocaleData(localeFr, 'fr');\nregisterLocaleData(localeIt, 'it');\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(localeZhCn, 'zh-CN');\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 CreateOrganizationComponent,\n DeauthorizeSessionsComponent,\n DeleteAccountComponent,\n DeleteOrganizationComponent,\n DomainRulesComponent,\n ExportComponent,\n FallbackSrcDirective,\n FolderAddEditComponent,\n FooterComponent,\n FrontendLayoutComponent,\n GroupingsComponent,\n HintComponent,\n IconComponent,\n I18nPipe,\n ImportComponent,\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 OrgImportComponent,\n OrgGroupAddEditComponent,\n OrgGroupingsComponent,\n OrgGroupsComponent,\n OrgManageCollectionsComponent,\n OrgManageComponent,\n OrgPeopleComponent,\n OrgSettingComponent,\n OrgToolsComponent,\n OrgTwoFactorSetupComponent,\n OrgUserAddEditComponent,\n OrgUserConfirmComponent,\n OrgUserGroupsComponent,\n OrganizationsComponent,\n OrganizationLayoutComponent,\n OrgVaultComponent,\n PasswordGeneratorComponent,\n PasswordGeneratorHistoryComponent,\n PaymentComponent,\n PremiumComponent,\n ProfileComponent,\n PurgeVaultComponent,\n RecoverDeleteComponent,\n RecoverTwoFactorComponent,\n RegisterComponent,\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 UpdateKeyComponent,\n UpdateLicenseComponent,\n UserBillingComponent,\n UserLayoutComponent,\n VaultComponent,\n VerifyEmailComponent,\n VerifyEmailTokenComponent,\n VerifyRecoverDeleteComponent,\n PasswordStrengthComponent,\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 {\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\nimport { DeviceType } from '../../enums/deviceType';\nimport { TwoFactorProviderType } from '../../enums/twoFactorProviderType';\n\nimport { TwoFactorEmailRequest } from '../../models/request/twoFactorEmailRequest';\n\nimport { ApiService } from '../../abstractions/api.service';\nimport { AuthService } from '../../abstractions/auth.service';\nimport { EnvironmentService } from '../../abstractions/environment.service';\nimport { I18nService } from '../../abstractions/i18n.service';\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nimport { TwoFactorProviders } from '../../services/auth.service';\n\nimport * as DuoWebSDK from '../../misc/duo';\nimport { U2f } from '../../misc/u2f';\n\nexport class TwoFactorComponent implements OnInit, OnDestroy {\n token: string = '';\n remember: boolean = false;\n u2fReady: boolean = false;\n providers = TwoFactorProviders;\n providerType = TwoFactorProviderType;\n selectedProviderType: TwoFactorProviderType = TwoFactorProviderType.Authenticator;\n u2fSupported: boolean = false;\n u2f: U2f = null;\n title: string = '';\n twoFactorEmail: string = null;\n formPromise: Promise;\n emailPromise: Promise;\n onSuccessfulLogin: () => Promise;\n onSuccessfulLoginNavigate: () => Promise;\n\n protected loginRoute = 'login';\n protected successRoute = 'vault';\n\n constructor(protected authService: AuthService, protected router: Router,\n protected i18nService: I18nService, protected apiService: ApiService,\n protected platformUtilsService: PlatformUtilsService, protected win: Window,\n protected environmentService: EnvironmentService) {\n this.u2fSupported = this.platformUtilsService.supportsU2f(win);\n }\n\n async ngOnInit() {\n if (this.authService.email == null || this.authService.masterPasswordHash == null ||\n this.authService.twoFactorProviders == null) {\n this.router.navigate([this.loginRoute]);\n return;\n }\n\n if (this.win != null && this.u2fSupported) {\n let customWebVaultUrl: string = null;\n if (this.environmentService.baseUrl != null) {\n customWebVaultUrl = this.environmentService.baseUrl;\n } else if (this.environmentService.webVaultUrl != null) {\n customWebVaultUrl = this.environmentService.webVaultUrl;\n }\n\n this.u2f = new U2f(this.win, customWebVaultUrl, (token: string) => {\n this.token = token;\n this.submit();\n }, (error: string) => {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'), error);\n }, (info: string) => {\n if (info === 'ready') {\n this.u2fReady = true;\n }\n });\n }\n\n this.selectedProviderType = this.authService.getDefaultTwoFactorProvider(this.u2fSupported);\n await this.init();\n }\n\n ngOnDestroy(): void {\n this.cleanupU2f();\n this.u2f = null;\n }\n\n async init() {\n if (this.selectedProviderType == null) {\n this.title = this.i18nService.t('loginUnavailable');\n return;\n }\n\n this.cleanupU2f();\n this.title = (TwoFactorProviders as any)[this.selectedProviderType].name;\n const params = this.authService.twoFactorProviders.get(this.selectedProviderType);\n switch (this.selectedProviderType) {\n case TwoFactorProviderType.U2f:\n if (!this.u2fSupported || this.u2f == null) {\n break;\n }\n\n if (params.Challenge != null) {\n this.u2f.init(JSON.parse(params.Challenge));\n } else {\n // TODO: Deprecated. Remove in future version.\n const challenges = JSON.parse(params.Challenges);\n if (challenges != null && challenges.length > 0) {\n this.u2f.init({\n appId: challenges[0].appId,\n challenge: challenges[0].challenge,\n keys: challenges.map((c: any) => {\n return {\n version: c.version,\n keyHandle: c.keyHandle,\n };\n }),\n });\n }\n }\n break;\n case TwoFactorProviderType.Duo:\n case TwoFactorProviderType.OrganizationDuo:\n if (this.platformUtilsService.getDevice() === DeviceType.SafariExtension) {\n break;\n }\n\n setTimeout(() => {\n DuoWebSDK.init({\n iframe: undefined,\n host: params.Host,\n sig_request: params.Signature,\n submit_callback: async (f: HTMLFormElement) => {\n const sig = f.querySelector('input[name=\"sig_response\"]') as HTMLInputElement;\n if (sig != null) {\n this.token = sig.value;\n await this.submit();\n }\n },\n });\n }, 0);\n break;\n case TwoFactorProviderType.Email:\n this.twoFactorEmail = params.Email;\n if (this.authService.twoFactorProviders.size > 1) {\n await this.sendEmail(false);\n }\n break;\n default:\n break;\n }\n }\n\n async submit() {\n if (this.token == null || this.token === '') {\n this.platformUtilsService.showToast('error', this.i18nService.t('errorOccurred'),\n this.i18nService.t('verificationCodeRequired'));\n return;\n }\n\n if (this.selectedProviderType === TwoFactorProviderType.U2f) {\n if (this.u2f != null) {\n this.u2f.stop();\n } else {\n return;\n }\n } else if (this.selectedProviderType === TwoFactorProviderType.Email ||\n this.selectedProviderType === TwoFactorProviderType.Authenticator) {\n this.token = this.token.replace(' ', '').trim();\n }\n\n try {\n this.formPromise = this.authService.logInTwoFactor(this.selectedProviderType, this.token, this.remember);\n await this.formPromise;\n if (this.onSuccessfulLogin != null) {\n this.onSuccessfulLogin();\n }\n this.platformUtilsService.eventTrack('Logged In From Two-step');\n if (this.onSuccessfulLoginNavigate != null) {\n this.onSuccessfulLoginNavigate();\n } else {\n this.router.navigate([this.successRoute]);\n }\n } catch {\n if (this.selectedProviderType === TwoFactorProviderType.U2f && this.u2f != null) {\n this.u2f.start();\n }\n }\n }\n\n async sendEmail(doToast: boolean) {\n if (this.selectedProviderType !== TwoFactorProviderType.Email) {\n return;\n }\n\n if (this.emailPromise != null) {\n return;\n }\n\n try {\n const request = new TwoFactorEmailRequest(this.authService.email, this.authService.masterPasswordHash);\n this.emailPromise = this.apiService.postTwoFactorEmail(request);\n await this.emailPromise;\n if (doToast) {\n this.platformUtilsService.showToast('success', null,\n this.i18nService.t('verificationCodeEmailSent', this.twoFactorEmail));\n }\n } catch { }\n\n this.emailPromise = null;\n }\n\n private cleanupU2f() {\n if (this.u2f != null) {\n this.u2f.stop();\n this.u2f.cleanup();\n }\n }\n}\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 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

{{'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","import {\n Pipe,\n PipeTransform,\n} from '@angular/core';\n\nimport { CipherView } from '../../models/view/cipherView';\n\nimport { PlatformUtilsService } from '../../abstractions/platformUtils.service';\n\nimport { DeviceType } from '../../enums';\n\n@Pipe({\n name: 'searchCiphers',\n})\nexport class SearchCiphersPipe implements PipeTransform {\n private onlySearchName = false;\n\n constructor(platformUtilsService: PlatformUtilsService) {\n this.onlySearchName = platformUtilsService.getDevice() === DeviceType.EdgeExtension;\n }\n\n transform(ciphers: CipherView[], searchText: string): CipherView[] {\n if (ciphers == null || ciphers.length === 0) {\n return [];\n }\n\n if (searchText == null || searchText.length < 2) {\n return ciphers;\n }\n\n searchText = searchText.trim().toLowerCase();\n return ciphers.filter((c) => {\n if (c.name != null && c.name.toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (this.onlySearchName) {\n return false;\n }\n if (searchText.length >= 8 && c.id.startsWith(searchText)) {\n return true;\n }\n if (c.subTitle != null && c.subTitle.toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n if (c.login && c.login.uri != null && c.login.uri.toLowerCase().indexOf(searchText) > -1) {\n return true;\n }\n\n return false;\n });\n }\n}\n","export { CipherType } from './cipherType';\r\nexport { DeviceType } from './deviceType';\r\nexport { EncryptionType } from './encryptionType';\r\nexport { FieldType } from './fieldType';\r\nexport { LogLevelType } from './logLevelType';\r\nexport { SecureNoteType } from './secureNoteType';\r\nexport { TwoFactorProviderType } from './twoFactorProviderType';\r\nexport { UriMatchType } from './uriMatchType';\r\n","export enum LogLevelType {\r\n Debug,\r\n Info,\r\n Warning,\r\n Error,\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 {{'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","
\r\n
\r\n
\r\n \r\n
\r\n
{{'reports' | i18n}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\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 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 CSV format\"\n and save the CSV 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
\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n
\n","
\n
\n

{{'exportVault' | i18n}}

\n
\n

{{'exportMasterPassword' | i18n}}

\n {{'exportWarning' | i18n}}\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 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('csv');\r\n }\r\n\r\n protected getFileName(prefix?: string) {\r\n return this.exportService.getFileName(prefix);\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 {{password}}\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\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","
\n

{{'dataBreachReport' | i18n}}

\n
\n

{{'breachDesc' | i18n}}

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

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

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

    {{a.title}}

    \n

    \n

    {{'compromisedData' | i18n}}:

    \n
      \n
    • {{d}}
    • \n
    \n
    \n
    \n
    \n
    {{'website' | i18n}}
    \n
    {{a.domain}}
    \n
    {{'affectedUsers' | i18n}}
    \n
    {{a.pwnCount | number}}
    \n
    {{'breachOccurred' | i18n}}
    \n
    {{a.breachDate | date: 'mediumDate'}}
    \n
    {{'breachReported' | i18n}}
    \n
    {{a.addedDate | date: 'mediumDate'}}
    \n
    \n
    \n
    \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","
\r\n
\r\n
\r\n
\r\n
{{'tools' | i18n}}
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\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 {{u.email}}\n {{'invited' | i18n}}\n {{'accepted' | i18n}}\n {{u.name}}\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
    {{h.password}}
    \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 {\n APP_INITIALIZER,\n LOCALE_ID,\n NgModule,\n} from '@angular/core';\n\nimport { ToasterModule } from 'angular2-toaster';\n\nimport { BroadcasterMessagingService } from '../../services/broadcasterMessaging.service';\nimport { HtmlStorageService } from '../../services/htmlStorage.service';\nimport { I18nService } from '../../services/i18n.service';\nimport { MemoryStorageService } from '../../services/memoryStorage.service';\nimport { WebPlatformUtilsService } from '../../services/webPlatformUtils.service';\n\nimport { EventService } from './event.service';\nimport { OrganizationGuardService } from './organization-guard.service';\nimport { OrganizationTypeGuardService } from './organization-type-guard.service';\nimport { RouterService } from './router.service';\nimport { UnauthGuardService } from './unauth-guard.service';\n\nimport { AuthGuardService } from 'jslib/angular/services/auth-guard.service';\nimport { BroadcasterService } from 'jslib/angular/services/broadcaster.service';\nimport { ValidationService } from 'jslib/angular/services/validation.service';\n\nimport { Analytics } from 'jslib/misc/analytics';\n\nimport { ApiService } from 'jslib/services/api.service';\nimport { AppIdService } from 'jslib/services/appId.service';\nimport { AuditService } from 'jslib/services/audit.service';\nimport { AuthService } from 'jslib/services/auth.service';\nimport { CipherService } from 'jslib/services/cipher.service';\nimport { CollectionService } from 'jslib/services/collection.service';\nimport { ConstantsService } from 'jslib/services/constants.service';\nimport { ContainerService } from 'jslib/services/container.service';\nimport { CryptoService } from 'jslib/services/crypto.service';\nimport { EnvironmentService } from 'jslib/services/environment.service';\nimport { ExportService } from 'jslib/services/export.service';\nimport { FolderService } from 'jslib/services/folder.service';\nimport { ImportService } from 'jslib/services/import.service';\nimport { LockService } from 'jslib/services/lock.service';\nimport { NotificationsService } from 'jslib/services/notifications.service';\nimport { PasswordGenerationService } from 'jslib/services/passwordGeneration.service';\nimport { SearchService } from 'jslib/services/search.service';\nimport { SettingsService } from 'jslib/services/settings.service';\nimport { StateService } from 'jslib/services/state.service';\nimport { SyncService } from 'jslib/services/sync.service';\nimport { TokenService } from 'jslib/services/token.service';\nimport { TotpService } from 'jslib/services/totp.service';\nimport { UserService } from 'jslib/services/user.service';\nimport { WebCryptoFunctionService } from 'jslib/services/webCryptoFunction.service';\n\nimport { ApiService as ApiServiceAbstraction } from 'jslib/abstractions/api.service';\nimport { AppIdService as AppIdServiceAbstraction } from 'jslib/abstractions/appId.service';\nimport { AuditService as AuditServiceAbstraction } from 'jslib/abstractions/audit.service';\nimport { AuthService as AuthServiceAbstraction } from 'jslib/abstractions/auth.service';\nimport { CipherService as CipherServiceAbstraction } from 'jslib/abstractions/cipher.service';\nimport { CollectionService as CollectionServiceAbstraction } from 'jslib/abstractions/collection.service';\nimport { CryptoService as CryptoServiceAbstraction } from 'jslib/abstractions/crypto.service';\nimport { CryptoFunctionService as CryptoFunctionServiceAbstraction } from 'jslib/abstractions/cryptoFunction.service';\nimport { EnvironmentService as EnvironmentServiceAbstraction } from 'jslib/abstractions/environment.service';\nimport { ExportService as ExportServiceAbstraction } from 'jslib/abstractions/export.service';\nimport { FolderService as FolderServiceAbstraction } from 'jslib/abstractions/folder.service';\nimport { I18nService as I18nServiceAbstraction } from 'jslib/abstractions/i18n.service';\nimport { ImportService as ImportServiceAbstraction } from 'jslib/abstractions/import.service';\nimport { LockService as LockServiceAbstraction } from 'jslib/abstractions/lock.service';\nimport { LogService as LogServiceAbstraction } from 'jslib/abstractions/log.service';\nimport { MessagingService as MessagingServiceAbstraction } from 'jslib/abstractions/messaging.service';\nimport { NotificationsService as NotificationsServiceAbstraction } from 'jslib/abstractions/notifications.service';\nimport {\n PasswordGenerationService as PasswordGenerationServiceAbstraction,\n} from 'jslib/abstractions/passwordGeneration.service';\nimport { PlatformUtilsService as PlatformUtilsServiceAbstraction } from 'jslib/abstractions/platformUtils.service';\nimport { SearchService as SearchServiceAbstraction } from 'jslib/abstractions/search.service';\nimport { SettingsService as SettingsServiceAbstraction } from 'jslib/abstractions/settings.service';\nimport { StateService as StateServiceAbstraction } from 'jslib/abstractions/state.service';\nimport { StorageService as StorageServiceAbstraction } from 'jslib/abstractions/storage.service';\nimport { SyncService as SyncServiceAbstraction } from 'jslib/abstractions/sync.service';\nimport { TokenService as TokenServiceAbstraction } from 'jslib/abstractions/token.service';\nimport { TotpService as TotpServiceAbstraction } from 'jslib/abstractions/totp.service';\nimport { UserService as UserServiceAbstraction } from 'jslib/abstractions/user.service';\n\nconst i18nService = new I18nService(window.navigator.language, 'locales');\nconst stateService = new StateService();\nconst broadcasterService = new BroadcasterService();\nconst messagingService = new BroadcasterMessagingService(broadcasterService);\nconst platformUtilsService = new WebPlatformUtilsService(i18nService, messagingService);\nconst storageService: StorageServiceAbstraction = new HtmlStorageService(platformUtilsService);\nconst secureStorageService: StorageServiceAbstraction = new MemoryStorageService();\nconst cryptoFunctionService: CryptoFunctionServiceAbstraction = new WebCryptoFunctionService(window,\n platformUtilsService);\nconst cryptoService = new CryptoService(storageService,\n platformUtilsService.isDev() ? storageService : secureStorageService, cryptoFunctionService);\nconst tokenService = new TokenService(storageService);\nconst appIdService = new AppIdService(storageService);\nconst apiService = new ApiService(tokenService, platformUtilsService,\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\nconst userService = new UserService(tokenService, storageService);\nconst settingsService = new SettingsService(userService, storageService);\nexport let searchService: SearchService = null;\nconst cipherService = new CipherService(cryptoService, userService, settingsService,\n apiService, storageService, i18nService, () => searchService);\nconst folderService = new FolderService(cryptoService, userService, apiService, storageService,\n i18nService, cipherService);\nconst collectionService = new CollectionService(cryptoService, userService, storageService, i18nService);\nsearchService = new SearchService(cipherService, platformUtilsService);\nconst lockService = new LockService(cipherService, folderService, collectionService,\n cryptoService, platformUtilsService, storageService, messagingService, searchService, null);\nconst syncService = new SyncService(userService, apiService, settingsService,\n folderService, cipherService, cryptoService, collectionService, storageService, messagingService,\n async (expired: boolean) => messagingService.send('logout', { expired: expired }));\nconst passwordGenerationService = new PasswordGenerationService(cryptoService, storageService);\nconst totpService = new TotpService(storageService, cryptoFunctionService);\nconst containerService = new ContainerService(cryptoService);\nconst authService = new AuthService(cryptoService, apiService,\n userService, tokenService, appIdService, i18nService, platformUtilsService, messagingService);\nconst exportService = new ExportService(folderService, cipherService, apiService);\nconst importService = new ImportService(cipherService, folderService, apiService, i18nService, collectionService);\nconst notificationsService = new NotificationsService(userService, syncService, appIdService,\n apiService, cryptoService, async () => messagingService.send('logout', { expired: true }));\nconst environmentService = new EnvironmentService(apiService, storageService, notificationsService);\nconst auditService = new AuditService(cryptoFunctionService, apiService);\n\nconst analytics = new Analytics(window, () => platformUtilsService.isDev() || platformUtilsService.isSelfHost(),\n platformUtilsService, storageService, appIdService);\ncontainerService.attachToWindow(window);\n\nexport function initFactory(): Function {\n return async () => {\n await (storageService as HtmlStorageService).init();\n const isDev = platformUtilsService.isDev();\n if (!isDev && platformUtilsService.isSelfHost()) {\n environmentService.baseUrl = window.location.origin;\n } else {\n environmentService.notificationsUrl = isDev ? 'http://localhost:61840' :\n 'https://notifications.bitwarden.com'; // window.location.origin + '/notifications';\n }\n apiService.setUrls({\n base: isDev ? null : window.location.origin,\n api: isDev ? 'http://localhost:4000' : null,\n identity: isDev ? 'http://localhost:33656' : null,\n\n // Uncomment these (and comment out the above) if you want to target production\n // servers for local development.\n\n // base: null,\n // api: 'https://api.bitwarden.com',\n // identity: 'https://identity.bitwarden.com',\n });\n setTimeout(() => notificationsService.init(environmentService), 3000);\n\n lockService.init(true);\n const locale = await storageService.get(ConstantsService.localeKey);\n await i18nService.init(locale);\n authService.init();\n const htmlEl = window.document.documentElement;\n htmlEl.classList.add('locale_' + i18nService.translationLocale);\n let theme = await storageService.get(ConstantsService.themeKey);\n if (theme == null) {\n theme = 'light';\n }\n htmlEl.classList.add('theme_' + theme);\n stateService.save(ConstantsService.disableFaviconKey,\n await storageService.get(ConstantsService.disableFaviconKey));\n stateService.save('enableGravatars', await storageService.get('enableGravatars'));\n };\n}\n\n@NgModule({\n imports: [\n ToasterModule,\n ],\n declarations: [],\n providers: [\n ValidationService,\n AuthGuardService,\n OrganizationGuardService,\n OrganizationTypeGuardService,\n UnauthGuardService,\n RouterService,\n EventService,\n { provide: AuditServiceAbstraction, useValue: auditService },\n { provide: AuthServiceAbstraction, useValue: authService },\n { provide: CipherServiceAbstraction, useValue: cipherService },\n { provide: FolderServiceAbstraction, useValue: folderService },\n { provide: CollectionServiceAbstraction, useValue: collectionService },\n { provide: EnvironmentServiceAbstraction, useValue: environmentService },\n { provide: TotpServiceAbstraction, useValue: totpService },\n { provide: TokenServiceAbstraction, useValue: tokenService },\n { provide: I18nServiceAbstraction, useValue: i18nService },\n { provide: CryptoServiceAbstraction, useValue: cryptoService },\n { provide: PlatformUtilsServiceAbstraction, useValue: platformUtilsService },\n { provide: PasswordGenerationServiceAbstraction, useValue: passwordGenerationService },\n { provide: ApiServiceAbstraction, useValue: apiService },\n { provide: SyncServiceAbstraction, useValue: syncService },\n { provide: UserServiceAbstraction, useValue: userService },\n { provide: MessagingServiceAbstraction, useValue: messagingService },\n { provide: BroadcasterService, useValue: broadcasterService },\n { provide: SettingsServiceAbstraction, useValue: settingsService },\n { provide: LockServiceAbstraction, useValue: lockService },\n { provide: StorageServiceAbstraction, useValue: storageService },\n { provide: StateServiceAbstraction, useValue: stateService },\n { provide: ExportServiceAbstraction, useValue: exportService },\n { provide: SearchServiceAbstraction, useValue: searchService },\n { provide: ImportServiceAbstraction, useValue: importService },\n { provide: NotificationsServiceAbstraction, useValue: notificationsService },\n { provide: CryptoFunctionServiceAbstraction, useValue: cryptoFunctionService },\n {\n provide: APP_INITIALIZER,\n useFactory: initFactory,\n deps: [],\n multi: true,\n },\n {\n provide: LOCALE_ID,\n useFactory: () => i18nService.translationLocale,\n deps: [],\n },\n ],\n})\nexport class ServicesModule {\n}\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';\nimport { OrganizationUserType } from '../../enums/organizationUserType';\nimport { SelectionReadOnlyResponse } from './selectionReadOnlyResponse';\n\nexport class OrganizationUserResponse {\n id: string;\n userId: string;\n type: OrganizationUserType;\n status: OrganizationUserStatusType;\n accessAll: boolean;\n\n constructor(response: any) {\n this.id = response.Id;\n this.userId = response.UserId;\n this.type = response.Type;\n this.status = response.Status;\n this.accessAll = response.AccessAll;\n }\n}\n\nexport class OrganizationUserUserDetailsResponse extends OrganizationUserResponse {\n name: string;\n email: string;\n\n constructor(response: any) {\n super(response);\n this.name = response.Name;\n this.email = response.Email;\n }\n}\n\nexport class OrganizationUserDetailsResponse extends OrganizationUserResponse {\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","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 logoType: 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.logoType = response.LogoType;\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', 'nb', 'nl', 'pl', 'pt-PT', 'pt-BR',\n 'ru', 'sk', 'sv', 'zh-CN',\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';\n\nimport { CipherType } from '../enums/cipherType';\n\nimport { ApiService } from '../abstractions/api.service';\nimport { CipherService } from '../abstractions/cipher.service';\nimport { ExportService as ExportServiceAbstraction } from '../abstractions/export.service';\nimport { FolderService } from '../abstractions/folder.service';\n\nimport { CipherView } from '../models/view/cipherView';\nimport { CollectionView } from '../models/view/collectionView';\nimport { FolderView } from '../models/view/folderView';\n\nimport { Cipher } from '../models/domain/cipher';\nimport { Collection } from '../models/domain/collection';\n\nimport { CipherData } from '../models/data/cipherData';\nimport { CollectionData } from '../models/data/collectionData';\nimport { CollectionDetailsResponse } from '../models/response/collectionResponse';\n\nexport class ExportService implements ExportServiceAbstraction {\n constructor(private folderService: FolderService, private cipherService: CipherService,\n private apiService: ApiService) { }\n\n async getExport(format: 'csv' | 'json' = 'csv'): Promise {\n let decFolders: FolderView[] = [];\n let decCiphers: CipherView[] = [];\n const promises = [];\n\n promises.push(this.folderService.getAllDecrypted().then((folders) => {\n decFolders = folders;\n }));\n\n promises.push(this.cipherService.getAllDecrypted().then((ciphers) => {\n decCiphers = ciphers;\n }));\n\n await Promise.all(promises);\n\n const foldersMap = new Map();\n decFolders.forEach((f) => {\n foldersMap.set(f.id, f);\n });\n\n const exportCiphers: any[] = [];\n decCiphers.forEach((c) => {\n // only export logins and secure notes\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\n return;\n }\n\n if (c.organizationId != null) {\n return;\n }\n\n const cipher: any = {};\n cipher.folder = c.folderId != null && foldersMap.has(c.folderId) ? foldersMap.get(c.folderId).name : null;\n cipher.favorite = c.favorite ? 1 : null;\n this.buildCommonCipher(cipher, c);\n exportCiphers.push(cipher);\n });\n\n if (format === 'csv') {\n return papa.unparse(exportCiphers);\n } else {\n return JSON.stringify(exportCiphers, null, ' ');\n }\n }\n\n async getOrganizationExport(organizationId: string, format: 'csv' | 'json' = 'csv'): Promise {\n const decCollections: CollectionView[] = [];\n const decCiphers: CipherView[] = [];\n const promises = [];\n\n promises.push(this.apiService.getCollections(organizationId).then((collections) => {\n const collectionPromises: any = [];\n if (collections != null && collections.data != null && collections.data.length > 0) {\n collections.data.forEach((c) => {\n const collection = new Collection(new CollectionData(c as CollectionDetailsResponse));\n collectionPromises.push(collection.decrypt().then((decCol) => {\n decCollections.push(decCol);\n }));\n });\n }\n return Promise.all(collectionPromises);\n }));\n\n promises.push(this.apiService.getCiphersOrganization(organizationId).then((ciphers) => {\n const cipherPromises: any = [];\n if (ciphers != null && ciphers.data != null && ciphers.data.length > 0) {\n ciphers.data.forEach((c) => {\n const cipher = new Cipher(new CipherData(c));\n cipherPromises.push(cipher.decrypt().then((decCipher) => {\n decCiphers.push(decCipher);\n }));\n });\n }\n return Promise.all(cipherPromises);\n }));\n\n await Promise.all(promises);\n\n const collectionsMap = new Map();\n decCollections.forEach((c) => {\n collectionsMap.set(c.id, c);\n });\n\n const exportCiphers: any[] = [];\n decCiphers.forEach((c) => {\n // only export logins and secure notes\n if (c.type !== CipherType.Login && c.type !== CipherType.SecureNote) {\n return;\n }\n\n const cipher: any = {};\n cipher.collections = [];\n if (c.collectionIds != null) {\n cipher.collections = c.collectionIds.filter((id) => collectionsMap.has(id))\n .map((id) => collectionsMap.get(id).name);\n }\n this.buildCommonCipher(cipher, c);\n exportCiphers.push(cipher);\n });\n\n if (format === 'csv') {\n return papa.unparse(exportCiphers);\n } else {\n return JSON.stringify(exportCiphers, null, ' ');\n }\n }\n\n getFileName(prefix: string = null): string {\n const now = new Date();\n const dateString =\n now.getFullYear() + '' + this.padNumber(now.getMonth() + 1, 2) + '' + this.padNumber(now.getDate(), 2) +\n this.padNumber(now.getHours(), 2) + '' + this.padNumber(now.getMinutes(), 2) +\n this.padNumber(now.getSeconds(), 2);\n\n return 'bitwarden' + (prefix ? ('_' + prefix) : '') + '_export_' + dateString + '.csv';\n }\n\n private padNumber(num: number, width: number, padCharacter: string = '0'): string {\n const numString = num.toString();\n return numString.length >= width ? numString :\n new Array(width - numString.length + 1).join(padCharacter) + numString;\n }\n\n private buildCommonCipher(cipher: any, c: CipherView) {\n cipher.type = null;\n cipher.name = c.name;\n cipher.notes = c.notes;\n cipher.fields = null;\n // Login props\n cipher.login_uri = null;\n cipher.login_username = null;\n cipher.login_password = null;\n cipher.login_totp = null;\n\n if (c.fields) {\n c.fields.forEach((f: any) => {\n if (!cipher.fields) {\n cipher.fields = '';\n } else {\n cipher.fields += '\\n';\n }\n\n cipher.fields += ((f.name || '') + ': ' + f.value);\n });\n }\n\n switch (c.type) {\n case CipherType.Login:\n cipher.type = 'login';\n cipher.login_username = c.login.username;\n cipher.login_password = c.login.password;\n cipher.login_totp = c.login.totp;\n\n if (c.login.uris) {\n cipher.login_uri = [];\n c.login.uris.forEach((u) => {\n cipher.login_uri.push(u.uri);\n });\n }\n break;\n case CipherType.SecureNote:\n cipher.type = 'note';\n break;\n default:\n return;\n }\n\n return cipher;\n }\n}\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 { AviraCsvImporter } from '../importers/aviraCsvImporter';\nimport { BitwardenCsvImporter } from '../importers/bitwardenCsvImporter';\nimport { BlurCsvImporter } from '../importers/blurCsvImporter';\nimport { ChromeCsvImporter } from '../importers/chromeCsvImporter';\nimport { ClipperzHtmlImporter } from '../importers/clipperzHtmlImporter';\nimport { DashlaneCsvImporter } from '../importers/dashlaneCsvImporter';\nimport { EnpassCsvImporter } from '../importers/enpassCsvImporter';\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: '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: 'dashlanecsv', name: 'Dashlane (csv)' },\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: '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 ];\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 '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 'pwsafexml':\n return new PasswordSafeXmlImporter();\n case 'dashlanecsv':\n return new DashlaneCsvImporter();\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 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 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';\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';\nimport { Importer } from './importer';\n\nimport { ImportResult } from '../models/domain/importResult';\n\nexport class DashlaneCsvImporter 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 let skip = false;\n if (value.length < 2) {\n return;\n }\n\n const cipher = this.initLoginCipher();\n cipher.name = this.getValueOrDefault(value[0], '--');\n\n if (value.length === 2) {\n cipher.login.uris = this.makeUriArray(value[1]);\n } else if (value.length === 3) {\n cipher.login.uris = this.makeUriArray(value[1]);\n cipher.login.username = this.getValueOrDefault(value[2]);\n } else if (value.length === 4) {\n if (this.isNullOrWhitespace(value[2]) && this.isNullOrWhitespace(value[3])) {\n cipher.login.username = value[1];\n cipher.notes = value[2] + '\\n' + value[3];\n } else {\n cipher.login.username = value[2];\n cipher.notes = value[1] + '\\n' + value[3];\n }\n } else if (value.length === 5) {\n cipher.login.uris = this.makeUriArray(value[1]);\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.login.password = this.getValueOrDefault(value[3]);\n cipher.notes = this.getValueOrDefault(value[4]);\n } else if (value.length === 6) {\n if (this.isNullOrWhitespace(value[2])) {\n cipher.login.username = this.getValueOrDefault(value[3]);\n cipher.login.password = this.getValueOrDefault(value[4]);\n cipher.notes = this.getValueOrDefault(value[5]);\n } else {\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.login.password = this.getValueOrDefault(value[3]);\n cipher.notes = this.getValueOrDefault(value[4], '') + '\\n' + this.getValueOrDefault(value[5], '');\n }\n cipher.login.uris = this.makeUriArray(value[1]);\n } else if (value.length === 7) {\n if (this.isNullOrWhitespace(value[2])) {\n cipher.login.username = this.getValueOrDefault(value[3]);\n cipher.notes = this.getValueOrDefault(value[4], '') + '\\n' + this.getValueOrDefault(value[6], '');\n } else {\n cipher.login.username = this.getValueOrDefault(value[2]);\n cipher.notes = this.getValueOrDefault(value[3], '') + '\\n' +\n this.getValueOrDefault(value[4], '') + '\\n' + this.getValueOrDefault(value[6], '');\n }\n cipher.login.uris = this.makeUriArray(value[1]);\n cipher.login.password = this.getValueOrDefault(value[5]);\n } else {\n for (let i = 1; i < value.length; i++) {\n cipher.notes += (value[i] + '\\n');\n if (value[i] === 'NO_TYPE') {\n skip = true;\n break;\n }\n }\n }\n\n if (skip) {\n return;\n }\n if (this.isNullOrWhitespace(cipher.login.username)) {\n cipher.login.username = null;\n }\n if (this.isNullOrWhitespace(cipher.login.password)) {\n cipher.login.password = null;\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\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';\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 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 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 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 { ImportComponent as OrgImportComponent } from './organizations/tools/import.component';\nimport { ToolsComponent as OrgToolsComponent } from './organizations/tools/tools.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 { ImportComponent } from './tools/import.component';\nimport { PasswordGeneratorComponent } from './tools/password-generator.component';\nimport { ToolsComponent } from './tools/tools.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 },\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 },\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.180bfd6093a5fe21bcd0.js b/app/polyfills.1358407f67f0f640c775.js similarity index 99% rename from app/polyfills.180bfd6093a5fe21bcd0.js rename to app/polyfills.1358407f67f0f640c775.js index c971454c..7c1bdc11 100644 --- a/app/polyfills.180bfd6093a5fe21bcd0.js +++ b/app/polyfills.1358407f67f0f640c775.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.180bfd6093a5fe21bcd0.js.map \ No newline at end of file +//# sourceMappingURL=polyfills.1358407f67f0f640c775.js.map \ No newline at end of file diff --git a/app/polyfills.180bfd6093a5fe21bcd0.js.map b/app/polyfills.1358407f67f0f640c775.js.map similarity index 99% rename from app/polyfills.180bfd6093a5fe21bcd0.js.map rename to app/polyfills.1358407f67f0f640c775.js.map index 9bc91340..03e06c07 100644 --- a/app/polyfills.180bfd6093a5fe21bcd0.js.map +++ b/app/polyfills.1358407f67f0f640c775.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,0BC1CA,IAAAuB,EAAehE,EAAQ,IACvBG,EAAAD,QAAA,SAAA+D,GACA,IAAAD,EAAAC,GAAA,MAAAC,UAAAD,EAAA,sBACA,OAAAA,sBCFA,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,wBCDA,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,sBCD1E,IAAAC,EAAgBpF,EAAQ,IACxBqF,EAAAjB,KAAAiB,IACAlF,EAAAD,QAAA,SAAA+D,GACA,OAAAA,EAAA,EAAAoB,EAAAD,EAAAnB,GAAA,4CCHA,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,uBCFA,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,IACtBsF,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,2BCLvD,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,IACtBmH,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,qBCvCAjW,EAAAD,QAAA,SAAAmW,EAAAhV,GACA,OACAL,aAAA,EAAAqV,GACArE,eAAA,EAAAqE,GACApE,WAAA,EAAAoE,GACAhV,yBCLAlB,EAAAD,SAAA,mBCAA,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,wBCFA,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,sBCpBA,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,+BCxBA,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,kDCjRA,IAAA2U,EAAcpgB,EAAQ,IACtBqgB,EAAWrgB,EAAQ,KACnBwH,EAAUxH,EAAQ,KAClBmH,EAAenH,EAAQ,IACvB+G,EAAc/G,EAAQ,IACtBsgB,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,gCCHA1jB,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,IAAgBuY,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,IAAgBuY,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,IACtBuI,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,oCCPA,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,yECHA,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,IAAgBuY,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,GAARA,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,KAAYc,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,oTCVAjU,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.180bfd6093a5fe21bcd0.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 = 643);\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.1358407f67f0f640c775.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 = 643);\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.180bfd6093a5fe21bcd0.js b/app/vendor.1358407f67f0f640c775.js similarity index 99% rename from app/vendor.180bfd6093a5fe21bcd0.js rename to app/vendor.1358407f67f0f640c775.js index 3033f9ad..f535b1b4 100644 --- a/app/vendor.180bfd6093a5fe21bcd0.js +++ b/app/vendor.1358407f67f0f640c775.js @@ -1388,7 +1388,7 @@ var r=n(740),a=n(741),i=n(514);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,x=oe(),E=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=x[e+" "];return t||(t=new RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&x(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),x=_+=null==w?1:Math.random()||.1,E=j.length;for(c&&(u=o===p||o||c);b!==E&&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&&(_=x)}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&&(_=x,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 xe(){return!0}function Ee(){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=Ee;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=/\[\]$/,xt=/\r?\n/g,Et=/^(?: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)&&!Et.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(xt,"\r\n")}}):{name:t.name,value:n.replace(xt,"\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",x={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)x.always(e[x.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),E(0,t),this}};if(y.promise(x),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,x),c)return x;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]&&x.setRequestHeader("If-Modified-Since",j.lastModified[a]),j.etag[a]&&x.setRequestHeader("If-None-Match",j.etag[a])),(f.data&&f.hasContent&&!1!==f.contentType||t.contentType)&&x.setRequestHeader("Content-Type",f.contentType),x.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)x.setRequestHeader(h,f.headers[h]);if(f.beforeSend&&(!1===f.beforeSend.call(m,x,f)||c))return x.abort();if(_="abort",b.add(f.complete),x.done(f.success),x.fail(f.error),r=Bt(Rt,f,t,x)){if(x.readyState=1,d&&g.trigger("ajaxSend",[x,f]),c)return x;f.async&&f.timeout>0&&(l=n.setTimeout(function(){x.abort("timeout")},f.timeout));try{c=!1,r.send(k,E)}catch(e){if(c)throw e;E(-1,e)}}else E(-1,"No Transport");function E(e,t,o,s){var u,h,p,k,w,_=t;c||(c=!0,l&&n.clearTimeout(l),r=void 0,i=s||"",x.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,x,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,x,u),u?(f.ifModified&&((w=x.getResponseHeader("Last-Modified"))&&(j.lastModified[a]=w),(w=x.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))),x.status=e,x.statusText=(t||_)+"",u?y.resolveWith(m,[h,_,x]):y.rejectWith(m,[x,_,p]),x.statusCode(v),v=void 0,d&&g.trigger(u?"ajaxSuccess":"ajaxError",[x,f,u?h:p]),b.fireWith(m,[x,_]),d&&(g.trigger("ajaxComplete",[x,f]),--j.active||j.event.trigger("ajaxStop")))}return x},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 d83d27f6..d7370a37 100644 --- a/index.html +++ b/index.html @@ -13,7 +13,7 @@ - + @@ -26,6 +26,6 @@ - + diff --git a/u2f-connector.html b/u2f-connector.html index 8edbf899..8bb0394d 100644 --- a/u2f-connector.html +++ b/u2f-connector.html @@ -7,6 +7,6 @@ - +